After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 611647 - make ShellGenericContainer an StWidget
make ShellGenericContainer an StWidget
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2010-03-02 22:58 UTC by Dan Winship
Modified: 2010-10-21 19:00 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
[St] share common ClutterContainer implementation code (28.00 KB, patch)
2010-03-02 22:58 UTC, Dan Winship
committed Details | Review
[ShellGenericContainer] remove example (4.34 KB, patch)
2010-03-02 22:58 UTC, Dan Winship
committed Details | Review
[ShellGenericContainer] minor style fixes (3.93 KB, patch)
2010-03-02 22:58 UTC, Dan Winship
committed Details | Review
[ShellGenericContainer] make this an StWidget (10.16 KB, patch)
2010-03-02 22:58 UTC, Dan Winship
committed Details | Review
Clean up a few workarounds for ShellGenericContainer's non-St-ness (13.25 KB, patch)
2010-03-02 22:58 UTC, Dan Winship
reviewed Details | Review

Description Dan Winship 2010-03-02 22:58:01 UTC
This ports ShellGenericContainer to St. There is still more work that
could be done here (notably redoing skip_paint in terms of child_meta),
but this gets us most of the way there.

I started fixing up some of the existing hackarounds in the code, mostly
just to test out the rewrite. That's in the last patch, but it's incomplete,
and not ready to go yet. I'm interested what people think of the cssBind()
function though. (I actually mostly wrote it for appDisplay.js, but then
didn't get around to porting that yet.)

I'm assuming we don't want GenericContainer to move to St, since it's
"mainly a workaround for the current lack of GObject subclassing + vfunc
overrides in gjs". However, it might make sense to create St.Group (an
St.Widget-based Clutter.Group) and then have Shell.GenericContainer be
a subclass of that? I think there are places where either we have a
Clutter.Group inside an St.Bin, or else we have an St.BoxLayout with
the majority of the contents fixed-positioned rather than box-layout-ed.
So St.Group might be useful...
Comment 1 Dan Winship 2010-03-02 22:58:04 UTC
Created attachment 155075 [details] [review]
[St] share common ClutterContainer implementation code
Comment 2 Dan Winship 2010-03-02 22:58:06 UTC
Created attachment 155076 [details] [review]
[ShellGenericContainer] remove example

There are plenty of examples in js/ui/ now
Comment 3 Dan Winship 2010-03-02 22:58:09 UTC
Created attachment 155077 [details] [review]
[ShellGenericContainer] minor style fixes
Comment 4 Dan Winship 2010-03-02 22:58:12 UTC
Created attachment 155078 [details] [review]
[ShellGenericContainer] make this an StWidget
Comment 5 Dan Winship 2010-03-02 22:58:15 UTC
Created attachment 155079 [details] [review]
Clean up a few workarounds for ShellGenericContainer's non-St-ness
Comment 6 Colin Walters 2010-03-04 20:16:58 UTC
Review of attachment 155075 [details] [review]:

Looks like a nice cleanup.
Comment 7 Colin Walters 2010-03-04 20:17:48 UTC
Review of attachment 155076 [details] [review]:

Target locked.
Comment 8 Colin Walters 2010-03-04 20:18:51 UTC
Review of attachment 155077 [details] [review]:

Alright
Comment 9 Colin Walters 2010-03-04 20:26:31 UTC
Review of attachment 155078 [details] [review]:

Looks good.
Comment 10 Colin Walters 2010-03-04 20:29:25 UTC
Review of attachment 155079 [details] [review]:

cssBind is cute.  One minor thing, I don't much care for the "util" name but I don't have a better suggestion either.
Comment 11 Dan Winship 2010-03-04 20:45:19 UTC
Attachment 155075 [details] pushed as f6b4fa6 - [St] share common ClutterContainer implementation code
Attachment 155076 [details] pushed as 0f0e3d9 - [ShellGenericContainer] remove example
Attachment 155077 [details] pushed as 0f81c7e - [ShellGenericContainer] minor style fixes
Attachment 155078 [details] pushed as b5853fe - [ShellGenericContainer] make this an StWidget
Comment 12 Dan Winship 2010-03-04 20:46:34 UTC
cssBind as it is in the patch is probably not quite right for fixing up appDisplay.js, so I'm leaving that uncommitted for now
Comment 13 Dan Winship 2010-10-21 19:00:49 UTC
css binding is being discussed in bug 632590, so closing this now