Emulator Issues #11705
closed[FEATURE REQUEST + JSON CODE] Fluent Theming Support for Windows 10 Builds
0%
Description
With Windows 10 default UI themeing now available for Win32 and other non-UWP programming languages, Dolphin's current "theme" system could use a little bit of a visual upgrade for Windows users at the least, with minimal effort thanks tol XAML Islands (See 'UWP controls in desktop applications').
Attached, I compiled five new themes for future builds resembling the five current Dolphin UI themes part of the 'Clean' family, if anyone would like to implement this into the code.
Sources:
- UWP controls in desktop applications. https://docs.microsoft.com/en-us/windows/uwp/xaml-platform/xaml-host-controls
Files
Updated by Jebeld17@gmail.com about 5 years ago
Example code for "CleanBlue" theme in XAML (Fluent Design), without opening attachment "XAML System Themes for Windows Builds.zip:"
<!-- Free Public License 1.0.0 Permission to use, copy, modify, and/or distribute this code for any purpose with or without fee is hereby granted. -->
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Key="Default">
<ResourceDictionary.MergedDictionaries>
<ColorPaletteResources Accent="#FF0073CF" AltHigh="#FF000000" AltLow="#FF000000" AltMedium="#FF000000" AltMediumHigh="#FF000000" AltMediumLow="#FF000000" BaseHigh="#FFFFFFFF" BaseLow="#FF333333" BaseMedium="#FF9A9A9A" BaseMediumHigh="#FFB4B4B4" BaseMediumLow="#FF676767" ChromeAltLow="#FFB4B4B4" ChromeBlackHigh="#FF000000" ChromeBlackLow="#FFB4B4B4" ChromeBlackMedium="#FF000000" ChromeBlackMediumLow="#FF000000" ChromeDisabledHigh="#FF333333" ChromeDisabledLow="#FF9A9A9A" ChromeGray="#FF808080" ChromeHigh="#FF808080" ChromeLow="#FF151515" ChromeMedium="#FF1D1D1D" ChromeMediumLow="#FF2C2C2C" ChromeWhite="#FFFFFFFF" ListLow="#FF1D1D1D" ListMedium="#FF333333" />
<ResourceDictionary>
<Color x:Key="SystemChromeAltMediumHighColor">#CC000000</Color>
<Color x:Key="SystemChromeAltHighColor">#FF000000</Color>
<Color x:Key="SystemRevealListLowColor">#FF1D1D1D</Color>
<Color x:Key="SystemRevealListMediumColor">#FF333333</Color>
<Color x:Key="RegionColor">#FF000000</Color>
<SolidColorBrush x:Key="RegionBrush" Color="{StaticResource RegionColor}" />
</ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<ResourceDictionary x:Key="Light">
<ResourceDictionary.MergedDictionaries>
<ColorPaletteResources Accent="#FF0073CF" AltHigh="#FFFFFFFF" AltLow="#FFFFFFFF" AltMedium="#FFFFFFFF" AltMediumHigh="#FFFFFFFF" AltMediumLow="#FFFFFFFF" BaseHigh="#FF000000" BaseLow="#FFCCCCCC" BaseMedium="#FF898989" BaseMediumHigh="#FF5D5D5D" BaseMediumLow="#FF737373" ChromeAltLow="#FF5D5D5D" ChromeBlackHigh="#FF000000" ChromeBlackLow="#FFCCCCCC" ChromeBlackMedium="#FF5D5D5D" ChromeBlackMediumLow="#FF898989" ChromeDisabledHigh="#FFCCCCCC" ChromeDisabledLow="#FF898989" ChromeGray="#FF737373" ChromeHigh="#FFCCCCCC" ChromeLow="#FFECECEC" ChromeMedium="#FFE6E6E6" ChromeMediumLow="#FFECECEC" ChromeWhite="#FFFFFFFF" ListLow="#FFE6E6E6" ListMedium="#FFCCCCCC" />
<ResourceDictionary>
<Color x:Key="SystemChromeAltMediumHighColor">#CCFFFFFF</Color>
<Color x:Key="SystemChromeAltHighColor">#FFFFFFFF</Color>
<Color x:Key="SystemRevealListLowColor">#FFE6E6E6</Color>
<Color x:Key="SystemRevealListMediumColor">#FFCCCCCC</Color>
<RevealBackgroundBrush x:Key="SystemControlHighlightListLowRevealBackgroundBrush" TargetTheme="Light" Color="{ThemeResource SystemRevealListMediumColor}" FallbackColor="{ StaticResource SystemListMediumColor}" />
<Color x:Key="RegionColor">#FFFFFFFF</Color>
<SolidColorBrush x:Key="RegionBrush" Color="{StaticResource RegionColor}" />
</ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<ResourceDictionary x:Key="HighContrast">
<StaticResource x:Key="RegionColor" ResourceKey="SystemColorWindowColor" />
<SolidColorBrush x:Key="RegionBrush" Color="{StaticResource RegionColor}" />
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
Updated by spycrab0 about 5 years ago
- Priority changed from Normal to Low
This unlikely to be implemented as it would mess with our cross-platform Qt themeing we already support.
Updated by Billiard26 about 5 years ago
- Status changed from New to Questionable
Yeah.. We use Qt for a reason. No one wants to maintain a separate set of Windows specific UI code.
Updated by Jebeld17@gmail.com about 5 years ago
Billiard26 wrote:
Yeah.. We use Qt for a reason. No one wants to maintain a separate set of Windows specific UI code.
...XAML can be integrated into Qt applications. It's just a small set of instructions to tell the program where to reference the theme in Windows 10.
Updated by Jebeld17@gmail.com about 5 years ago
Also, "nobody wants?" I want, and I did. Please see the included attachment.
Updated by JosJuice about 5 years ago
You wrote the code. Maintaining it is a different thing.
Updated by Billiard26 about 5 years ago
- Status changed from Questionable to Won't fix
If you're really adamant you can submit a pull request on github with the complete set of changes required to do what you propose.
I don't know where this XAML belongs, how it gets worked into Qt, how much code it takes, or what it's even supposed to do.
Updated by Jebeld17@gmail.com over 4 years ago
Thank you for your honesty. :-)
Billiard26 wrote:
If you're really adamant you can submit a pull request on github with the complete set of changes required to do what you propose.
I don't know where this XAML belongs, how it gets worked into Qt, how much code it takes, or what it's even supposed to do.