linuxmint/nemo — pull request #90 by mtwebster (2012-11-06 00:41:31+00:00)
Title: Let Nemo provide its own style information, regardless of system GTK theme

I'd like to discuss this a little bit - I know we already tried this briefly...

From http://developer.gnome.org/gtk3/3.5/GtkStyleContext.html#gtk-style-context-add-class :

>**If you are using custom styling on an applications, you probably want then to make your style >information prevail to the theme's**, so you must use a GtkStyleProvider with the >GTK_STYLE_PROVIDER_PRIORITY_APPLICATION priority, keep in mind that the user settings in >XDG_CONFIG_HOME/gtk-3.0/gtk.css will still take precedence over your changes, as it uses the >GTK_STYLE_PROVIDER_PRIORITY_USER priority.

I believe this is a pretty good thought.

I think that if I'm Joe Appdeveloper, if I decide to package a custom .css file with my app, I want my app to use that file. It will ensure consistent appearance regardless of what GTK theme I'm using on my system. It also simplifies maintenance of the application - if I want to make a style change, I update the app, which makes sense - I don't go make a change to my system theme!

This also simplifies backporting. For instance, right now, Nemo looks great on Nadia, which is what I develop on mostly. But if you install it in Maya, or any system that doesn't have GTK 3.6 Mint-X theme active, it looks **awful**.

I don't think there should ANY Nemo style information in our mint-themes. That should apply to generic dialogs and widgets. Any Nemo-specific items should live IN Nemo.

So I think we got it right the first time, and shouldn't have reverted it. This new patch is simpler - you really only need to apply the new style provider once, not on every class initialization.

Okay I await productive discussion!