Moar windows themes!

Last time I blogged about the Gtk 3 windows theme we had just landed the initial support. It kinda worked but didn’t look quite right. Since then the css machinery has gotten a bit more capable, and I recently found some time to work on this again.

Testing had revealed that the theme was totally broken on Windows XP. This had two main causes; first of all there was some bugs in the Win32 theme APIs on XP when rendering to surfaces with alpha, and secondly the css file used some windows theme parts that only existed in Vista and later. I added workarounds for the alpha bug and introduced a new css file that is used on XP (although most of the css is shared). So, now XP support is working.

I also went through all the widgets, fixing a lot of details in how they render and adding theming for some less common widgets.

Here is how gtk3-widget-factory looks now:

Windows 7
Windows XP

Not bad for 998 lines of css.

This is all in the new Gtk+ 3.4.0 release. We hope to have window binaries out for it soon.

20 thoughts on “Moar windows themes!”

  1. It looks better but still not really like Windows:

    * Shouldn’t we use the original windows stock icons (can we?)
    * The Spinbuttons clearly don’t look like their window equivalent.

    But otherwise great work!

    1. Johannes:

      * Not sure how stock icons work on win32 actually, should look into it some day
      * The spinbuttons on Gtk+ in general were changed to look like that because the small buttons were just to small to hit. I’m not sure we want to re-introduce the problematic spinbutton layout just for the look on windows.

      Also, “not really like windows” is not really a good description. In the course of tweaking the theme I looked at a lot of apps and widgets in win32, and I there really is no singular “windows” look. Even among the standard apps that ships with windows there are multiple looks for almost all widgets except the trivial ones (buttons, etc). Its really busted.

  2. Very glad to read some good news about GTK3 Windows support ! =)

    Thanks for your work ! Can’t wait for the binairies !

  3. Very nice work.

    Just two things I wanna point out: The spin buttons (as said before) don’t look Windows at all. Also comboboxentry is waaay too big.

  4. Thanks for your work
    and i have a question too. do you have any plan for supporting drag and drop(i mean d&d between a gtk app and a third party app for example a browser. i think it needs OLE) in windows?

  5. Hi alex,
    sorry for posting here but I didn’t find your e-mail… Could you contact me please…. I have some questions about glick2 and I am currently setting up a bundle based disitrbution based on Manjaro Linux…

    ;)

    Roland

Comments are closed.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>