Hello,
Now that theming using .msstyle is working quite well, wouldnt'it be possible to use the current used theme in the currently used window manager.
I think it would be of great value to have windows applications integrate semlessly with the linux desktop without having to look for a msstyle theme that looks like the same as the currently used theme.
Searching a little bit, it seems that something like this is on the way:
http://wiki.winehq.org/ThemingSupport "Write a GTK+ theming bridge so Win32 apps get GTK+ themes automatically."
Are we (=you) far away from this step ?
Keep up the good work,
On Sun, 28 Aug 2005 12:28:11 +0200, Jonathan Ernst wrote:
I think it would be of great value to have windows applications integrate semlessly with the linux desktop without having to look for a msstyle theme that looks like the same as the currently used theme.
Absolutely!
http://wiki.winehq.org/ThemingSupport "Write a GTK+ theming bridge so Win32 apps get GTK+ themes automatically."
Are we (=you) far away from this step ?
As far as I know, nobody is working on it. I wrote that bit on the Wiki because it's the logical next step.
One issue is that GTK+ 2.8 (the newest version, just released) now uses Cairo for rendering. I'm not sure how we should approach this - I suspect if widgets start drawing themselves without using the GDI stuff will break in weird ways (clipping and such), so it may need odd hacks like compiling GTK+ and Cairo as ELF DLLs so they can load native theming engines but draw using a Win32 build of Cairo.
thanks -mike
On 28.08.2005 14:30, Mike Hearn wrote:
One issue is that GTK+ 2.8 (the newest version, just released) now uses Cairo for rendering. I'm not sure how we should approach this - I suspect if widgets start drawing themselves without using the GDI stuff will break in weird ways (clipping and such), so it may need odd hacks like compiling GTK+ and Cairo as ELF DLLs so they can load native theming engines but draw using a Win32 build of Cairo.
Wouldn't it be possible to, say, have the GTK theming draw to a pixmap (GdkPixmap or so, afaik with my meager GTK knowledge), get a raw data buffer (RGBA or so) and draw this with Win32 APIs (e.g. AlphaBlend())?
-f.r.
On Sun, 28 Aug 2005 14:58:07 +0200, Frank Richter wrote:
Wouldn't it be possible to, say, have the GTK theming draw to a pixmap (GdkPixmap or so, afaik with my meager GTK knowledge), get a raw data buffer (RGBA or so) and draw this with Win32 APIs (e.g. AlphaBlend())?
It might. There are actually two issues here:
1) How to integrate GTK+/Win32 drawing 2) All the usual issues with using GTK+ theming engines.
(2) covers things like building fake widget objects to please theme engines that assume they have access to a real GTK+ widget (many do). So it's not totally trivial, but as Firefox and OpenOffice both do it we should be able to do so also.
Drawing GTK+ widgets to a double buffer then blending sounds very slow. Cairo was designed to do hardware accelerated drawing via XRENDER, it'd be a shame to throw that away. Perhaps a better way is to extend our GDI so it is possible to mix regular GDI and Cairo drawing together (for instance by setting the Cairo clip region/pen color to the GDI equivalents before passing control to the theming engine)? Alexandre would know for sure.
thanks -mike
For those who want another screenshot:
http://plan99.net/~mike/files/winecfg-reluna.png
As you can see there are still quite a few visual glitches. The tab control or property sheet API doesn't seem to set the embedded window to the right theme/position, though I've seen similar artifacts on the real Windows XP so maybe we can't fix that.
There's a fixme about image loading. Frank, you can get Reluna.msstyles from here:
http://plan99.net/~mike/files/Reluna.msstyles
Also buttons and combo boxes aren't themed yet, it seems.
thanks -mike
On 28.08.2005 15:40, Mike Hearn wrote:
As you can see there are still quite a few visual glitches.
Hm, maybe I should point people to Luna or MS' Royale or something simple like Watercolor Lite... they seem to work well so far ;)
-f.r.
Am Sonntag, 28. August 2005 14:00 schrieb Frank Richter:
On 28.08.2005 15:40, Mike Hearn wrote:
As you can see there are still quite a few visual glitches.
Hm, maybe I should point people to Luna or MS' Royale or something simple like Watercolor Lite... they seem to work well so far ;)
One other question: I've noticed that Windows users need to patch Microsofts uxtheme.dll to load themes which are not signed. Is there any possibility to use wines uxtheme.dll with Windows XP or is it too different? From the past discussions I think that they are too different.
Stefan
On 28.08.2005 18:53, Stefan Dösinger wrote:
One other question: I've noticed that Windows users need to patch Microsofts uxtheme.dll to load themes which are not signed. Is there any possibility to use wines uxtheme.dll with Windows XP or is it too different? From the past discussions I think that they are too different.
I would think that a lot of Windows internal-ish things would depend on stuff that Wine uxtheme does not have or only partially - e.g. there's a Windows service to somehow theme window NC areas, and to my knowledge it isn't really known how it interacts/uses uxtheme. I think using Wine uxtheme on native WinXP may not be desireable.
-f.r.
Am Sonntag, 28. August 2005 10:28 schrieben Sie:
Hello,
Now that theming using .msstyle is working quite well, wouldnt'it be possible to use the current used theme in the currently used window manager.
Btw, I have a really dumb question: How do I use a .msstyle theme? I know that this would better asked on wine-users, but now theming was mentioned I ask here.
I'd like to see a QT theme bridge too, but a gtk bridge would for the start as there's a qt->gtk theme translator.
Stefan
On Sun, 28 Aug 2005 14:21:39 +0000, Stefan Dösinger wrote:
Btw, I have a really dumb question: How do I use a .msstyle theme? I know that this would better asked on wine-users, but now theming was mentioned I ask here.
Brian, praise be to his name, explains this in the latest WWN issue. He also posted some screenshots, though the theme he used is IMO a bit ugly :) At work I am using ReLuna Blue which is really nice.
I'd like to see a QT theme bridge too, but a gtk bridge would for the start as there's a qt->gtk theme translator.
That might be hard. Qt is GPLd, so it cannot be linked against proprietary code. However TrollTechs intention was clearly to make money off a free toolkit which is a good business model. I doubt they'd care if somebody did a Wine theming bridge, even if it's technically against the rules.
Another issue is that Qt does not have a particularly good track record of binary compatibility - not entirely TrollTechs fault of course, but still, I suspect it might be hard to get into CVS and products like Crossover and the mythical as-yet-unwritten Wine autopackage could not distribute it.
thanks -mike
Stefan Dösinger wrote:
Am Sonntag, 28. August 2005 10:28 schrieben Sie:
Hello,
Now that theming using .msstyle is working quite well, wouldnt'it be possible to use the current used theme in the currently used window manager.
Btw, I have a really dumb question: How do I use a .msstyle theme? I know that this would better asked on wine-users, but now theming was mentioned I ask here.
It's in the newest WWN 289: http://www.winehq.org/?issue=289#Theming%20Support
Jacek