GNOME Bugzilla – Bug 693169
Use different styling in classic mode
Last modified: 2013-02-05 19:07:36 UTC
Classic mode should also be visually closer to GNOME2, so restyle the non-overview UI accordingly. Matthias would like to see this in 3.7.5 (although it will still require a bit of work before 3.8), so review would be appreciated ...
Created attachment 235169 [details] [review] legacy-colors: New extension
Created attachment 235170 [details] [review] Add back :overview style to panel This was removed upstream a while after the default style stopped using it.
Created attachment 235171 [details] [review] Style the top bar differently in the overview
Created attachment 235172 [details] [review] Style popup menus
Created attachment 235173 [details] [review] Style window-list if enabled
Can I ask why an extension, instead of taking the existing user-theme extension and packaging a theme? Also, can we do the overview styling of the panel with core code? Theme writers would appreciate, and it would not raise the maintenance cost.
(In reply to comment #6) > Can I ask why an extension, instead of taking the existing user-theme extension > and packaging a theme? The same reasons for not having "official" theming support apply to classic mode as well (which will be officially supported, although not as default). Also encouraging the use of 3rd party themes seems fairly risky given that many themes will not work properly with classic mode (as they only provide styling for core and not the extensions used in classic mode). An alternative approach I would be fine with is to only ship the stylesheet (as gnome-classic.css or something) in g-s-e and select it via a sessionMode property. (This approach would block on @import() support in libcroco though) > Also, can we do the overview styling of the panel with core code? Theme writers > would appreciate, and it would not raise the maintenance cost. Sure, I'm not opposed to that.
Well, you don't need to officially support theming, in the same way that we don't officially support extensions, but we do support the extension system. So you would support the user-theme extension (or a theme selector in core code), and two official themes, Adwaita and Awaita-Classic. Really, I don't see a big difference for maintenance cost, but it avoids an extension whose only purpose is to load a stylesheet. And it makes for good PR in general. Besides, I thought @import() was supported by libcroco. Or at least, there is code to handle it in StTheme.
Created attachment 235242 [details] [review] Use different styling in classic mode Classic mode should be visually distinct from the normal session, so provide a mode-specific stylesheet which looks closer to the familiar GNOME2 default theme.
Review of attachment 235242 [details] [review]: Ok, but see the comment in bug 693219 about the installation directory.
(In reply to comment #8) > Well, you don't need to officially support theming, in the same way that we > don't officially support extensions, but we do support the extension system. > So you would support the user-theme extension (or a theme selector in core > code), and two official themes, Adwaita and Awaita-Classic. > > Really, I don't see a big difference for maintenance cost, but it avoids an > extension whose only purpose is to load a stylesheet. And it makes for good PR > in general. I think this is a good idea.
(In reply to comment #11) > (In reply to comment #8) > > Well, you don't need to officially support theming, in the same way that we > > don't officially support extensions, but we do support the extension system. > > So you would support the user-theme extension (or a theme selector in core > > code), and two official themes, Adwaita and Awaita-Classic. > > > > Really, I don't see a big difference for maintenance cost, but it avoids an > > extension whose only purpose is to load a stylesheet. And it makes for good PR > > in general. > > I think this is a good idea. On the other hand, the mode-specific style approach is much friendlier to 3rd party extension authors - for both the legacy-colors and user-theme+classic-style approaches, they need to get their CSS included in the upstream theme to integrate well with classic mode, while it's now entirely up to extension authors whether they integrate their extension with classic mode or not. I think that benefit for extension authors outweighs the benefit the user-theme-enabled-by-default-in-non-defaul-session approach would have for theme authors.
Attachment 235242 [details] pushed as 9b05c80 - Use different styling in classic mode