Comment 37 for bug 111061

Revision history for this message
Reece H. Dunn (msclrhd-gmail) wrote : Re: Wine use Windows colors instead of Ubuntu colors

Hi,

Wine has had support for loading colour-based .theme files correctly for a while now (see https://wiki.ubuntu.com/WineHumanTheme for a human.theme file).

Winecfg will load a theme's colour profile into the registry, and allow you to change that in the appearance section (item, color, size and font elements), as well as loading any msstyle data. The msstyle data takes precedence (if you are not in 'classic' mode in Windows; there is not currently an equivalent feature in Wine/winecfg). At the moment, the push buttons, radio buttons and check boxes (and possibly some other controls in user32.dll) are not properly themed, so will use the themes colour profile.

I also have some ideas (http://www.winehq.org/pipermail/wine-devel/2008-October/069583.html) on improving winecfg, some of which I have sent patches for. Owen Rudge (http://www.winehq.org/pipermail/wine-devel/2008-October/069593.html) also has more ideas on this as well.

With Windows Vista, Microsoft have changed the msstyle theme data format. As such, it should be possible to make the theme engine (uxtheme.dll) in Wine interact with the Gtk, Qt and Cocoa/Carbon theme APIs to render elements correctly.

Any application that modifies the msstyle theme will need to inform the wineserver to send out a WM_THEMECHANGED notification to all top-level windows so that they can update properly; likewise any colour profile changes, the application will need to inform the wineserver that it needs to send out a WM_SYSCOLORCHANGED notification.