Hi Joshua,
I made a video demo. It's available at https://zzhiyi.github.io/light-theme-demo.webm, as well as https://www.youtube.com/watch?v=9wHYps7dXAU.
Cheers, Zhiyi
On 6/10/21 1:56 AM, Joshua Ashton wrote:
Hi Zhiyi,
I'm using GMail and recieved this email now. :-)
Would you be able to provide some pictures?
I made a Wine theme a little while ago, but it was not MSStyles, rather just some code changes for the regular path and I am curious as to what yours looks like.
- Joshie 🐸✨
On 6/9/21 4:38 PM, Zhiyi Zhang wrote:
Some gmail users report that they didn't receive this email. It's probably because some virus scanners mistakenly treat light.msstyles in the zip as a virus or something. So I put the zip at https://zzhiyi.github.io/light.zip as well. Hopefully this email will get through.
On 6/8/21 11:35 PM, Zhiyi Zhang wrote:
Hi all,
I've been working on theming support for Wine for awhile now. Part of the work is to create a .msstyles file so that UI controls can look better instead of that Win95 look. Now I think it has reached a point where it's good enough for you to try it.
The Light Blue theme contains two visual styles. One is Classic Blue and the other is Blue. Classic Blue is a visual style that changes only the system colors and doesn't contain any bitmaps for UI controls. So it still uses the unthemed rendering code path. Blue is a visual style that contains bitmaps for UI controls so it no longer has that Win95-ish look. To install the theme, download attached light.zip and install light.msstyles via winecfg. The patches are on top of Wine 6.10 aadcff4. More in development theme work is at https://github.com/zzhiyi/wine/commits/dev, For example, hooking nonclient scrollbar in user32 to uxtheme.
Theming support for Wine still need more fixes. So even with this theme file, some controls may still render poorly/incorrectly. Below is a non-exhaustive list of the theming problems I know of. Some of them are HiDPI issues, some are because of themed rendering is not implemented. Let me know if you encounter any other issues or have suggestions, specifically, regarding the theme file light.msstyles.
Enjoy!
Zhiyi
Known theme issues:
- Themed explorer support is not implemented, so startmenu, taskbar, titlbar are not themed.
- Nonclient area theming support is not implemented.
- Taskdialog theming support is not implemented
- Unthemed system metrics are not restored after disabling theme, e.g., IconTitleFont after disabling theme
- Comctl32 v6 should be loaded in some cases even if there is no comctl32 v6 manifest in applications.
- Winecfg should close current theme before copying a new theme because the name may be the same.
- When using comctl32 v5, scrollbars and dialogs should not be themed.
- Trackbar has wrong background color when themed.
- In Winecfg desktop integration tab, the postion of size updown buttons change after theme changes.
- Spy++ toolbar icons has dots and black artifacts
- Changing theme in winecfg doesn't affect windows in other processes in runtime
- Application title bar is inactive on launch when not using window manager decoration
- Combox button doesn't stay pressed after clicking and moving mouse the the dropdown menu
- Select toolbar in controlspy, resize control spy to a larger size. scrollbar doesn't get repaint
- Treeview in controlspy, expanded Planets still has old background
- Trackbar adding style TBS_BOTH doesn't repaint on Wine, repaints on Windows
- Stutter when moving the thumb of trackbar, even if no theme is active
- EDIT_WM_Paint() should use themed paint.
- Buttons and edits in dialogs are not themed
- Tooltip ballon shape is incorrect
- Theme may not be updated on wineprefix upgrade.
Known HiDPI issues:
- Status Bar in control spy v6 when HiDPI is on, the purple triangle doesn't get enough space
- Syslink no address is showed, DPI 192
- Command links no text on HiDPI
- In file selection dialog folder name size is not the same when showed in preview and in selected mode