Hey everyone,

I'm really excited about being able to use CSS to define the way a GTK+
theme looks.  I've had my hand in making GTK+ themes in the past and know
CSS pretty well, so this is a perfect intersection for people like me.  (:

Sorry I couldn't make it out to GUADEC to talk with you all about this in
person, but hopefully I can provide some help through emails and possibly on
IRC, etc.


*A quick list of things that I would really like*

   - keep as close to the CSS spec as possible (especially pay attention to
   CSS3, as it has lots of useful things)
   - it is okay to use CSS extensions where CSS has a few gaps, especially
   since this is theming widgets, not web pages (although try to keep them down
   to a minimum)... something like: -theme-appearance: button; (similar to
   -moz-appearance [1])
   - make a "page" that shows off all the "widgets", as well as common
   combinations (like nesting, etc.), and make it easy to "reload"... this
   doesn't really have to be a page, but something like this is a really nice
   thing when styling using CSS for a web page
   - leave the padding up to the CSS style, based on relationships of
   widgets
   - start from scratch, with no appearance defined whatsoever, but have a
   common styling that themes inherit from so that they can instantly define
   buttons, etc.
   - support as many useful selectors & pseudo-classes as possible
   - make sure cascading applies
   - take advantage of the ability to use multiple classes on an element...
   - HTML: <a class="foo bar baz">
      - CSS: foo {}, bar {}, and baz {} would all apply to the above HTML
   - applications should have a top-level id, so someone could do something
   like this:
      - #gimp #toolbox button { -theme-appearance: button-small; border:
      none; }
      - #gimp #toolbox button:selected { background-color: Highlight; color:
      HilightText; }
      - #gimp #toolbox button:hover:selected { background-color:
      HighlightHover; color: HilightTextHover; }
      - (I'm adding these extra states to show how things would work in
      other ways too)
      - support CSS variables [2]
   - have an introspection utility like Firebug so that theme authors and
   application developers can easily click widgets and explore an application
   by browsing around something like a DOM tree, with widget properties and
   such... once upon a time there was something that was sort of like this
   (called GLE [3]), which sort of worked, and then was not maintained and
   shortly bitrotted
   - if this could be made at a lower-level than GTK+ itself, it would be
   nice... then GTK+ could call on this library to do the widget rendering, but
   so could Mozilla, OOo, and even Qt (which does this for non-UNIXy platforms
   like Windows and OS X already)... also, this might make adoption for things
   like custom Mono widgets (as in Banshee), Mono's WinForms, Wine, and even
   currently not-really-themable toolkits (Tk, Lesstif, etc.) easily possible

*
References*

   1. -moz-appearance:
   http://developer.mozilla.org/en/docs/CSS:-moz-appearance
   2. CSS variables: http://disruptive-innovations.com/zoo/cssvariables/
   3. GLE: http://testbit.eu/~timj/historic/gle/


Thanks for reading!
Garrett
_______________________________________________
gnome-themes-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gnome-themes-list

Reply via email to