Clean up styling to better match Windows fluent design guidelines (#638)

This commit is contained in:
Jeffrey
2026-06-21 18:47:52 +02:00
committed by GitHub
parent 91a6266d50
commit a89b53504c
18 changed files with 546 additions and 469 deletions

View File

@@ -1,6 +1,6 @@
name: "🐞 Bug report" name: "🐞 Bug report"
description: "Report an issue you encountered" description: "Report an issue you encountered"
labels: ["bug","unconfirmed"] labels: ["bug", "unconfirmed"]
body: body:
- type: markdown - type: markdown

View File

@@ -1033,7 +1033,7 @@
], ],
"Presets": [ "Presets": [
{ {
"Name": "Xbox Gaming apps", "Name": "Xbox gaming apps",
"AppIds": [ "AppIds": [
"Microsoft.GamingApp", "Microsoft.GamingApp",
"Microsoft.XboxGameOverlay", "Microsoft.XboxGameOverlay",

View File

@@ -35,7 +35,7 @@
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- Message Text --> <!-- Message Text -->
<Grid Grid.Row="0" Margin="20,4,20,20"> <Grid Grid.Row="0" Margin="20,4,20,16">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
@@ -79,15 +79,15 @@
<!-- Separator --> <!-- Separator -->
<Border Grid.Row="1" <Border Grid.Row="1"
Height="1" Height="1"
Background="{DynamicResource BorderColor}" Background="{DynamicResource AppBorderColor}"
Margin="20,0"/> Margin="20,0"/>
<!-- Content --> <!-- Content -->
<StackPanel Grid.Row="2" Margin="20,18,20,20"> <StackPanel Grid.Row="2" Margin="20,16,20,16">
<!-- Donation Message --> <!-- Donation Message -->
<TextBlock Text="Win11Debloat is a passion project that I maintain in my free time. If you've found this tool useful, please consider making a small donation to support its development. I really appreciate it!" <TextBlock Text="Win11Debloat is a passion project that I maintain in my free time. If you've found this tool useful, please consider making a small donation to support its development. I really appreciate it!"
FontSize="14" FontSize="14"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
TextWrapping="Wrap" TextWrapping="Wrap"
Margin="0,0,0,15"/> Margin="0,0,0,15"/>
@@ -107,7 +107,7 @@
FontWeight="SemiBold" FontWeight="SemiBold"
FontFamily="Segoe Fluent Icons" FontFamily="Segoe Fluent Icons"
Text="&#xEB52;" Text="&#xEB52;"
Foreground="{DynamicResource CloseHover}" Foreground="{DynamicResource TitleBarCloseHoverColor}"
Margin="0,0,8,0"/> Margin="0,0,8,0"/>
<TextBlock x:Name="KofiLink" <TextBlock x:Name="KofiLink"
@@ -124,11 +124,17 @@
<!-- Button Panel --> <!-- Button Panel -->
<Border Grid.Row="2" Style="{DynamicResource ModalFooterBorderStyle}"> <Border Grid.Row="2" Style="{DynamicResource ModalFooterBorderStyle}">
<StackPanel x:Name="ButtonPanel" Style="{DynamicResource ModalFooterButtonsRightStyle}"> <Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Button x:Name="CloseButton" <Button x:Name="CloseButton"
Grid.Column="1"
Content="Close" Content="Close"
Style="{DynamicResource ModalSecondaryActionButtonStyle}"/> Style="{DynamicResource ModalSecondaryStretchedButtonStyle}"/>
</StackPanel> </Grid>
</Border> </Border>
</Grid> </Grid>
</Border> </Border>

View File

@@ -7,12 +7,12 @@
WindowStyle="None" WindowStyle="None"
AllowsTransparency="True" AllowsTransparency="True"
Background="Transparent" Background="Transparent"
Foreground="{DynamicResource FgColor}"> Foreground="{DynamicResource AppFgColor}">
<Window.Resources> <Window.Resources>
<!-- Title Bar Button Style --> <!-- Title Bar Button Style -->
<Style x:Key="TitleBarButton" TargetType="Button"> <Style x:Key="TitleBarButton" TargetType="Button">
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderThickness" Value="0"/> <Setter Property="BorderThickness" Value="0"/>
<Setter Property="Width" Value="46"/> <Setter Property="Width" Value="46"/>
<Setter Property="Height" Value="32"/> <Setter Property="Height" Value="32"/>
@@ -31,17 +31,17 @@
<Style x:Key="CloseButton" TargetType="Button" BasedOn="{StaticResource TitleBarButton}"> <Style x:Key="CloseButton" TargetType="Button" BasedOn="{StaticResource TitleBarButton}">
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource CloseHover}"/> <Setter Property="Background" Value="{DynamicResource TitleBarCloseHoverColor}"/>
<Setter Property="Foreground" Value="White"/> <Setter Property="Foreground" Value="White"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Window.Resources> </Window.Resources>
<Border BorderBrush="{DynamicResource BorderColor}" <Border BorderBrush="{DynamicResource AppBorderColor}"
BorderThickness="1" BorderThickness="1"
CornerRadius="8" CornerRadius="8"
Background="{DynamicResource BgColor}" Background="{DynamicResource AppBgColor}"
Margin="25"> Margin="25">
<Border.Effect> <Border.Effect>
<DropShadowEffect Color="Black" <DropShadowEffect Color="Black"
@@ -58,7 +58,7 @@
<!-- Custom Title Bar --> <!-- Custom Title Bar -->
<Grid Grid.Row="0" x:Name="TitleBar"> <Grid Grid.Row="0" x:Name="TitleBar">
<Border Background="{DynamicResource BgColor}" CornerRadius="8,8,0,0"> <Border Background="{DynamicResource AppBgColor}" CornerRadius="8,8,0,0">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
@@ -66,7 +66,7 @@
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" <TextBlock Grid.Column="0"
Text="Win11Debloat Application Selection" Text="Win11Debloat Application Selection"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="12,0,0,0" Margin="12,0,0,0"
FontSize="12"/> FontSize="12"/>
@@ -90,27 +90,27 @@
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="Check apps that you wish to remove, uncheck apps that you wish to keep" Text="Check apps that you wish to remove, uncheck apps that you wish to keep"
TextWrapping="Wrap" TextWrapping="Wrap"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Margin="0,0,0,10"/> Margin="0,0,0,10"/>
<StackPanel Grid.Row="1" Orientation="Horizontal" Margin="0,0,0,8"> <StackPanel Grid.Row="1" Orientation="Horizontal" Margin="0,0,0,8">
<CheckBox x:Name="CheckAllBox" Content="Check/Uncheck all" Margin="8,0,15,0" Foreground="{DynamicResource FgColor}" AutomationProperties.Name="Check or Uncheck all"/> <CheckBox x:Name="CheckAllBox" Content="Check/Uncheck all" Margin="8,0,15,0" Foreground="{DynamicResource AppFgColor}" AutomationProperties.Name="Check or Uncheck all"/>
</StackPanel> </StackPanel>
<Border Grid.Row="2" BorderBrush="{DynamicResource BorderColor}" CornerRadius="4" BorderThickness="1" Margin="0,0,0,10" Background="{DynamicResource CardBgColor}"> <Border Grid.Row="2" BorderBrush="{DynamicResource AppBorderColor}" CornerRadius="4" BorderThickness="1" Margin="0,0,0,10" Background="{DynamicResource CardBgColor}">
<Grid> <Grid>
<ScrollViewer VerticalScrollBarVisibility="Auto"> <ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel x:Name="AppsPanel" Margin="5"/> <StackPanel x:Name="AppsPanel" Margin="5"/>
</ScrollViewer> </ScrollViewer>
<Border x:Name="LoadingAppsIndicator" CornerRadius="4" Background="{DynamicResource ScrollBarThumbColor}" Opacity="0.8" Visibility="Collapsed"> <Border x:Name="LoadingAppsIndicator" CornerRadius="4" Background="{DynamicResource ScrollBarThumbColor}" Opacity="0.8" Visibility="Collapsed">
<TextBlock Text="Loading apps..." FontSize="16" FontWeight="SemiBold" Foreground="{DynamicResource FgColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/> <TextBlock Text="Loading apps..." FontSize="16" FontWeight="SemiBold" Foreground="{DynamicResource AppFgColor}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border> </Border>
</Grid> </Grid>
</Border> </Border>
<StackPanel Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right"> <StackPanel Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right">
<Grid Margin="0,8,10,10"> <Grid Margin="0,8,10,10">
<CheckBox x:Name="OnlyInstalledBox" Content="Only show installed apps" Foreground="{DynamicResource FgColor}" AutomationProperties.Name="Only show installed apps"/> <CheckBox x:Name="OnlyInstalledBox" Content="Only show installed apps" Foreground="{DynamicResource AppFgColor}" AutomationProperties.Name="Only show installed apps"/>
</Grid> </Grid>
<Button x:Name="ConfirmBtn" Width="80" Height="32" Margin="0,0,10,0" Content="Confirm" Style="{DynamicResource PrimaryButtonStyle}" AutomationProperties.Name="Confirm"/> <Button x:Name="ConfirmBtn" Width="80" Height="32" Margin="0,0,10,0" Content="Confirm" Style="{DynamicResource PrimaryButtonStyle}" AutomationProperties.Name="Confirm"/>
<Button x:Name="CancelBtn" Width="80" Height="32" Content="Cancel" Style="{DynamicResource SecondaryButtonStyle}" IsCancel="True" AutomationProperties.Name="Cancel"/> <Button x:Name="CancelBtn" Width="80" Height="32" Content="Cancel" Style="{DynamicResource SecondaryButtonStyle}" IsCancel="True" AutomationProperties.Name="Cancel"/>

View File

@@ -36,10 +36,10 @@
<Button.Style> <Button.Style>
<Style TargetType="Button"> <Style TargetType="Button">
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource CloseHover}"/> <Setter Property="Background" Value="{DynamicResource TitleBarCloseHoverColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
@@ -56,7 +56,7 @@
Text="&#xE895;" Text="&#xE895;"
FontFamily="Segoe Fluent Icons" FontFamily="Segoe Fluent Icons"
FontSize="36" FontSize="36"
Foreground="{DynamicResource ButtonBg}" Foreground="{DynamicResource ButtonBgColor}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
Margin="0,0,0,16" Margin="0,0,0,16"
RenderTransformOrigin="0.5,0.5"> RenderTransformOrigin="0.5,0.5">
@@ -102,7 +102,7 @@
<TextBlock x:Name="ApplyStepCounter" <TextBlock x:Name="ApplyStepCounter"
Text="Step 0 of 0" Text="Step 0 of 0"
FontSize="12" FontSize="12"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
HorizontalAlignment="Right" HorizontalAlignment="Right"
Opacity="0.8"/> Opacity="0.8"/>
</StackPanel> </StackPanel>
@@ -117,7 +117,7 @@
Text="&#xE73E;" Text="&#xE73E;"
FontFamily="Segoe Fluent Icons" FontFamily="Segoe Fluent Icons"
FontSize="40" FontSize="40"
Foreground="{DynamicResource ButtonBg}" Foreground="{DynamicResource ButtonBgColor}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
Margin="0,0,0,12"/> Margin="0,0,0,12"/>
@@ -134,7 +134,7 @@
<!-- Reboot required section --> <!-- Reboot required section -->
<Border x:Name="ApplyRebootPanel" <Border x:Name="ApplyRebootPanel"
Visibility="Collapsed" Visibility="Collapsed"
BorderBrush="{DynamicResource BorderColor}" BorderBrush="{DynamicResource AppBorderColor}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
BorderThickness="0,1,0,1" BorderThickness="0,1,0,1"
Padding="24,12,24,14"> Padding="24,12,24,14">
@@ -149,7 +149,7 @@
<TextBlock Text="A reboot is required for these changes to take effect:" <TextBlock Text="A reboot is required for these changes to take effect:"
FontSize="13" FontSize="13"
FontWeight="SemiBold" FontWeight="SemiBold"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
VerticalAlignment="Center"/> VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
<StackPanel x:Name="ApplyRebootList" Margin="22,0,0,0"/> <StackPanel x:Name="ApplyRebootList" Margin="22,0,0,0"/>

View File

@@ -26,7 +26,7 @@
Text="View the selected changes here" Text="View the selected changes here"
TextWrapping="Wrap" TextWrapping="Wrap"
MaxWidth="260" MaxWidth="260"
Foreground="{DynamicResource FgColor}"/> Foreground="{DynamicResource AppFgColor}"/>
</Border> </Border>
</Grid> </Grid>

View File

@@ -29,12 +29,12 @@
<!-- Content --> <!-- Content -->
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" Padding="0,0,8,0"> <ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" Padding="0,0,8,0">
<StackPanel x:Name="ContentPanel" Margin="20,4,20,8"> <StackPanel x:Name="ContentPanel" Margin="20,4">
<TextBlock x:Name="PromptText" <TextBlock x:Name="PromptText"
TextWrapping="Wrap" TextWrapping="Wrap"
FontSize="14" FontSize="14"
LineHeight="20" LineHeight="20"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Margin="0,0,0,14"/> Margin="0,0,0,14"/>
<!-- Checkboxes are added dynamically at runtime --> <!-- Checkboxes are added dynamically at runtime -->
<StackPanel x:Name="CheckboxPanel"/> <StackPanel x:Name="CheckboxPanel"/>

View File

@@ -7,9 +7,9 @@
SnapsToDevicePixels="True" SnapsToDevicePixels="True"
WindowStartupLocation="CenterScreen" WindowStartupLocation="CenterScreen"
WindowStyle="None" WindowStyle="None"
AllowsTransparency="False" AllowsTransparency="True"
Background="{DynamicResource BgColor}" Background="Transparent"
Foreground="{DynamicResource FgColor}"> Foreground="{DynamicResource AppFgColor}">
<shell:WindowChrome.WindowChrome> <shell:WindowChrome.WindowChrome>
<shell:WindowChrome ResizeBorderThickness="5" <shell:WindowChrome ResizeBorderThickness="5"
CaptionHeight="32" CaptionHeight="32"
@@ -30,8 +30,8 @@
</Style> </Style>
<!-- TextBlock Label Style --> <!-- TextBlock Label Style -->
<Style x:Key="LabelStyle" TargetType="TextBlock"> <Style x:Key="LabelStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="FontSize" Value="12"/> <Setter Property="FontSize" Value="13"/>
<Setter Property="Margin" Value="0,0,0,2"/> <Setter Property="Margin" Value="0,0,0,2"/>
</Style> </Style>
@@ -46,28 +46,30 @@
<!-- Category card border style --> <!-- Category card border style -->
<Style x:Key="CategoryCardBorderStyle" TargetType="Border"> <Style x:Key="CategoryCardBorderStyle" TargetType="Border">
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="CornerRadius" Value="4"/> <Setter Property="CornerRadius" Value="4"/>
<Setter Property="Background" Value="{DynamicResource CardBgColor}"/> <Setter Property="Background" Value="{DynamicResource CardBgColor}"/>
<Setter Property="Padding" Value="16,12,16,2"/> <Setter Property="Padding" Value="16,13,16,4"/>
<Setter Property="Margin" Value="0,0,0,16"/> <Setter Property="Margin" Value="0,0,0,16"/>
</Style> </Style>
<!-- Category header text style --> <!-- Category header text style -->
<Style x:Key="CategoryHeaderTextBlock" TargetType="TextBlock"> <Style x:Key="CategoryHeaderTextBlock" TargetType="TextBlock">
<Setter Property="FontWeight" Value="Bold"/> <Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="FontSize" Value="16"/> <Setter Property="FontSize" Value="18"/>
<Setter Property="Margin" Value="0,0,0,12"/> <Setter Property="LineHeight" Value="20"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Margin" Value="0,0,0,16"/>
<Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
</Style> </Style>
<!-- Category header icon style --> <!-- Category header icon style -->
<Style x:Key="CategoryHeaderIcon" TargetType="TextBlock"> <Style x:Key="CategoryHeaderIcon" TargetType="TextBlock">
<Setter Property="FontFamily" Value="Segoe Fluent Icons"/> <Setter Property="FontFamily" Value="Segoe Fluent Icons"/>
<Setter Property="FontSize" Value="19"/> <Setter Property="FontSize" Value="20"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="LineHeight" Value="20"/>
<Setter Property="Margin" Value="0,0,8,12"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Margin" Value="0,0,8,16"/>
<Setter Property="VerticalAlignment" Value="Center"/> <Setter Property="VerticalAlignment" Value="Center"/>
</Style> </Style>
@@ -83,7 +85,7 @@
<Setter Property="IsTabStop" Value="False"/> <Setter Property="IsTabStop" Value="False"/>
<Setter Property="Cursor" Value="Hand"/> <Setter Property="Cursor" Value="Hand"/>
<Setter Property="FocusVisualStyle" Value="{x:Null}"/> <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
<Setter Property="Foreground" Value="{DynamicResource ButtonBg}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="Button"> <ControlTemplate TargetType="Button">
@@ -95,17 +97,18 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="{DynamicResource ButtonHover}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Foreground" Value="{DynamicResource ButtonPressed}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonPressedColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
<Style x:Key="CategoryHelpLinkTextStyle" TargetType="TextBlock"> <Style x:Key="CategoryHelpLinkTextStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="12"/> <Setter Property="FontSize" Value="14"/>
<Setter Property="FontWeight" Value="Bold"/> <Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Margin" Value="0,0,0,5"/>
<Setter Property="VerticalAlignment" Value="Center"/> <Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Foreground"> <Setter Property="Foreground">
<Setter.Value> <Setter.Value>
@@ -116,14 +119,14 @@
<!-- Overview changes text style --> <!-- Overview changes text style -->
<Style x:Key="OverviewNoChangesTextStyle" TargetType="TextBlock"> <Style x:Key="OverviewNoChangesTextStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Margin" Value="0,0,0,8"/> <Setter Property="Margin" Value="0,0,0,8"/>
<Setter Property="FontSize" Value="12"/> <Setter Property="FontSize" Value="12"/>
<Setter Property="FontStyle" Value="Italic"/> <Setter Property="FontStyle" Value="Italic"/>
</Style> </Style>
<Style x:Key="OverviewChangeBulletStyle" TargetType="TextBlock"> <Style x:Key="OverviewChangeBulletStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Margin" Value="0,0,0,8"/> <Setter Property="Margin" Value="0,0,0,8"/>
<Setter Property="FontSize" Value="12"/> <Setter Property="FontSize" Value="12"/>
<Setter Property="TextWrapping" Value="Wrap"/> <Setter Property="TextWrapping" Value="Wrap"/>
@@ -131,45 +134,7 @@
<!-- TextBox Style for search --> <!-- TextBox Style for search -->
<Style TargetType="TextBox"> <Style TargetType="TextBox">
<Setter Property="CaretBrush" Value="{DynamicResource FgColor}"/> <Setter Property="CaretBrush" Value="{DynamicResource AppFgColor}"/>
</Style>
<!-- User TextBox Style with disabled state -->
<Style x:Key="UserTextBoxStyle" TargetType="TextBox">
<Setter Property="CaretBrush" Value="{DynamicResource FgColor}"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Margin" Value="1,0,0,1"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Padding" Value="0"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="{DynamicResource ButtonDisabled}"/>
<Setter Property="Foreground" Value="{DynamicResource ButtonTextDisabled}"/>
<Setter Property="Opacity" Value="0.6"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- User TextBox Border Style with disabled state -->
<Style x:Key="UserTextBoxBorderStyle" TargetType="Border">
<Setter Property="Background" Value="{DynamicResource ComboBgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="CornerRadius" Value="4"/>
<Setter Property="Padding" Value="8,6"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="{DynamicResource ButtonDisabled}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/>
<Setter Property="Opacity" Value="0.6"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource ComboHoverColor}"/>
</Trigger>
</Style.Triggers>
</Style> </Style>
<!-- TextBlock style for App ID column in apps table --> <!-- TextBlock style for App ID column in apps table -->
@@ -194,7 +159,7 @@
<!-- Column widths for the app table rows and header (dot | name | description | id) --> <!-- Column widths for the app table rows and header (dot | name | description | id) -->
<GridLength x:Key="AppTableDotColWidth">16</GridLength> <GridLength x:Key="AppTableDotColWidth">16</GridLength>
<GridLength x:Key="AppTableNameColWidth">151</GridLength> <GridLength x:Key="AppTableNameColWidth">180</GridLength>
<GridLength x:Key="AppTableDescColWidth">1*</GridLength> <GridLength x:Key="AppTableDescColWidth">1*</GridLength>
<GridLength x:Key="AppTableIdColWidth">261</GridLength> <GridLength x:Key="AppTableIdColWidth">261</GridLength>
@@ -222,7 +187,7 @@
<!-- Title Bar Button Style --> <!-- Title Bar Button Style -->
<Style x:Key="TitleBarButton" TargetType="Button"> <Style x:Key="TitleBarButton" TargetType="Button">
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderThickness" Value="0"/> <Setter Property="BorderThickness" Value="0"/>
<Setter Property="Width" Value="46"/> <Setter Property="Width" Value="46"/>
<Setter Property="Height" Value="32"/> <Setter Property="Height" Value="32"/>
@@ -237,11 +202,21 @@
</ControlTemplate> </ControlTemplate>
</Setter.Value> </Setter.Value>
</Setter> </Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsActive, RelativeSource={RelativeSource AncestorType=Window}}" Value="False">
<Setter Property="Foreground" Value="{DynamicResource TitleBarUnfocusedFgColor}"/>
</DataTrigger>
</Style.Triggers>
</Style> </Style>
<Style x:Key="CloseButton" TargetType="Button" BasedOn="{StaticResource TitleBarButton}"> <Style x:Key="CloseButton" TargetType="Button" BasedOn="{StaticResource TitleBarButton}">
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource CloseHover}"/> <Setter Property="Background" Value="{DynamicResource TitleBarCloseHoverColor}"/>
<Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource TitleBarClosePressedColor}"/>
<Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
@@ -257,25 +232,12 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource TitlebarButtonHover}"/> <Setter Property="Background" Value="{DynamicResource TitleBarButtonHoverColor}"/>
<Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource TitlebarButtonPressed}"/> <Setter Property="Background" Value="{DynamicResource TitleBarButtonPressedColor}"/>
</Trigger> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
</Style.Triggers>
</Style>
<!-- SearchBox Border Style -->
<Style x:Key="SearchBoxBorderStyle" TargetType="Border">
<Setter Property="Background" Value="{DynamicResource ComboBgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="CornerRadius" Value="4"/>
<Setter Property="Width" Value="300"/>
<Setter Property="Padding" Value="8,6"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource ComboHoverColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
@@ -283,7 +245,7 @@
<!-- ContextMenu Style --> <!-- ContextMenu Style -->
<Style TargetType="ContextMenu"> <Style TargetType="ContextMenu">
<Setter Property="Background" Value="{DynamicResource CardBgColor}"/> <Setter Property="Background" Value="{DynamicResource CardBgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="4"/> <Setter Property="Padding" Value="4"/>
<Setter Property="HasDropShadow" Value="True"/> <Setter Property="HasDropShadow" Value="True"/>
@@ -311,7 +273,7 @@
<!-- MenuItem Style --> <!-- MenuItem Style -->
<Style TargetType="MenuItem"> <Style TargetType="MenuItem">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="Padding" Value="8,6"/> <Setter Property="Padding" Value="8,6"/>
<Setter Property="Height" Value="32"/> <Setter Property="Height" Value="32"/>
@@ -337,10 +299,10 @@
</Border> </Border>
<ControlTemplate.Triggers> <ControlTemplate.Triggers>
<Trigger Property="IsHighlighted" Value="True"> <Trigger Property="IsHighlighted" Value="True">
<Setter Property="Background" Value="{DynamicResource ComboItemHoverColor}"/> <Setter Property="Background" Value="{DynamicResource ComboBoxItemHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource ComboItemSelectedColor}"/> <Setter Property="Background" Value="{DynamicResource ComboBoxItemSelectedColor}"/>
</Trigger> </Trigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
</ControlTemplate> </ControlTemplate>
@@ -349,10 +311,10 @@
</Style> </Style>
</Window.Resources> </Window.Resources>
<Border x:Name="MainBorder" BorderBrush="{DynamicResource BorderColor}" <Border x:Name="MainBorder" BorderBrush="{DynamicResource AppBorderColor}"
BorderThickness="1" BorderThickness="1"
CornerRadius="8" CornerRadius="8"
Background="{DynamicResource BgColor}" Background="{DynamicResource AppBgColor}"
Margin="0"> Margin="0">
<Grid> <Grid>
<Grid.RowDefinitions> <Grid.RowDefinitions>
@@ -372,7 +334,7 @@
<!-- Custom Title Bar --> <!-- Custom Title Bar -->
<Grid Grid.Row="0" x:Name="TitleBar"> <Grid Grid.Row="0" x:Name="TitleBar">
<Border x:Name="TitleBarBackground" Background="{DynamicResource BgColor}" CornerRadius="8,8,0,0"> <Border x:Name="TitleBarBackground" Background="{DynamicResource AppBgColor}" CornerRadius="8,8,0,0">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
@@ -380,10 +342,20 @@
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" <TextBlock Grid.Column="0"
Text="Win11Debloat" Text="Win11Debloat"
Foreground="{DynamicResource FgColor}"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="12,0,0,0" Margin="12,0,0,0"
FontSize="12"/> FontSize="12">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Style.Triggers>
<DataTrigger Binding="{Binding IsActive, RelativeSource={RelativeSource AncestorType=Window}}" Value="False">
<Setter Property="Foreground" Value="{DynamicResource TitleBarUnfocusedFgColor}"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<StackPanel Grid.Column="1" Orientation="Horizontal"> <StackPanel Grid.Column="1" Orientation="Horizontal">
<Button x:Name="KofiBtn" shell:WindowChrome.IsHitTestVisibleInChrome="True" Content="&#xEB52;" FontFamily="Segoe Fluent Icons" FontSize="15" Style="{StaticResource TitlebarButton}" ToolTip="Support the creator" AutomationProperties.Name="Support the creator"/> <Button x:Name="KofiBtn" shell:WindowChrome.IsHitTestVisibleInChrome="True" Content="&#xEB52;" FontFamily="Segoe Fluent Icons" FontSize="15" Style="{StaticResource TitlebarButton}" ToolTip="Support the creator" AutomationProperties.Name="Support the creator"/>
<Button x:Name="MenuBtn" shell:WindowChrome.IsHitTestVisibleInChrome="True" Content="&#xE700;" FontFamily="Segoe Fluent Icons" FontSize="15" Style="{StaticResource TitlebarButton}" ToolTip="Options" AutomationProperties.Name="Options"> <Button x:Name="MenuBtn" shell:WindowChrome.IsHitTestVisibleInChrome="True" Content="&#xE700;" FontFamily="Segoe Fluent Icons" FontSize="15" Style="{StaticResource TitlebarButton}" ToolTip="Options" AutomationProperties.Name="Options">
@@ -395,7 +367,7 @@
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="Separator"> <ControlTemplate TargetType="Separator">
<Border Height="1" Background="{DynamicResource BorderColor}" SnapsToDevicePixels="True" HorizontalAlignment="Stretch"/> <Border Height="1" Background="{DynamicResource AppBorderColor}" SnapsToDevicePixels="True" HorizontalAlignment="Stretch"/>
</ControlTemplate> </ControlTemplate>
</Setter.Value> </Setter.Value>
</Setter> </Setter>
@@ -403,38 +375,38 @@
</ContextMenu.Resources> </ContextMenu.Resources>
<MenuItem x:Name="ImportConfigBtn" Header="Import config" AutomationProperties.Name="Import configuration"> <MenuItem x:Name="ImportConfigBtn" Header="Import config" AutomationProperties.Name="Import configuration">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xe838;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xe838;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
<MenuItem x:Name="ExportConfigBtn" Header="Export config" AutomationProperties.Name="Export configuration"> <MenuItem x:Name="ExportConfigBtn" Header="Export config" AutomationProperties.Name="Export configuration">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xe74e;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xe74e;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
<MenuItem x:Name="RestoreBackupBtn" Header="Restore backup" AutomationProperties.Name="Restore registry backup"> <MenuItem x:Name="RestoreBackupBtn" Header="Restore backup" AutomationProperties.Name="Restore registry backup">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xe81c;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xe81c;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
<Separator /> <Separator />
<MenuItem x:Name="MenuDocumentation" Header="Documentation" AutomationProperties.Name="Documentation"> <MenuItem x:Name="MenuDocumentation" Header="Documentation" AutomationProperties.Name="Documentation">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xe736;" FontFamily="Segoe MDL2 Assets" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xe736;" FontFamily="Segoe MDL2 Assets" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
<MenuItem x:Name="MenuReportBug" Header="Report a bug" AutomationProperties.Name="Report a bug"> <MenuItem x:Name="MenuReportBug" Header="Report a bug" AutomationProperties.Name="Report a bug">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xEBE8;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xEBE8;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
<MenuItem x:Name="MenuLogs" Header="Logs" AutomationProperties.Name="Logs"> <MenuItem x:Name="MenuLogs" Header="Logs" AutomationProperties.Name="Logs">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xf000;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xf000;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
<MenuItem x:Name="MenuAbout" Header="About" AutomationProperties.Name="About"> <MenuItem x:Name="MenuAbout" Header="About" AutomationProperties.Name="About">
<MenuItem.Icon> <MenuItem.Icon>
<TextBlock Text="&#xE946;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="&#xE946;" FontFamily="Segoe Fluent Icons" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
</MenuItem.Icon> </MenuItem.Icon>
</MenuItem> </MenuItem>
</ContextMenu> </ContextMenu>
@@ -459,16 +431,16 @@
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="TabItem"> <ControlTemplate TargetType="TabItem">
<Border Name="Border" Background="{DynamicResource SecondaryButtonBg}" BorderThickness="0" CornerRadius="0" Padding="10,10" Margin="0"> <Border Name="Border" Background="{DynamicResource SecondaryButtonBgColor}" BorderThickness="0" CornerRadius="0" Padding="10,10" Margin="0">
<ContentPresenter ContentSource="Header" HorizontalAlignment="Center" VerticalAlignment="Center"/> <ContentPresenter ContentSource="Header" HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border> </Border>
<ControlTemplate.Triggers> <ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True"> <Trigger Property="IsSelected" Value="True">
<Setter TargetName="Border" Property="Background" Value="{DynamicResource ButtonBg}"/> <Setter TargetName="Border" Property="Background" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="Foreground" Value="White"/> <Setter Property="Foreground" Value="White"/>
</Trigger> </Trigger>
<Trigger Property="IsSelected" Value="False"> <Trigger Property="IsSelected" Value="False">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
</Trigger> </Trigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
</ControlTemplate> </ControlTemplate>
@@ -487,30 +459,30 @@
<Grid> <Grid>
<StackPanel x:Name="HomeContentPanel" HorizontalAlignment="Center" VerticalAlignment="Top"> <StackPanel x:Name="HomeContentPanel" HorizontalAlignment="Center" VerticalAlignment="Top">
<!-- Logo --> <!-- Logo -->
<Viewbox Width="250" Height="250" Margin="0,0,0,10" HorizontalAlignment="Center"> <Viewbox Width="250" Height="250" Margin="0,0,0,24" HorizontalAlignment="Center">
<Grid Width="250" Height="250"> <Grid Width="250" Height="250">
<!-- Windows logo style icon --> <!-- Windows logo style icon -->
<Path x:Name="LogoFallback" Data="M0,0 L80,0 L80,80 L0,80 Z M90,0 L170,0 L170,80 L90,80 Z M0,90 L80,90 L80,170 L0,170 Z M90,90 L170,90 L170,170 L90,170 Z" <Path x:Name="LogoFallback" Data="M0,0 L80,0 L80,80 L0,80 Z M90,0 L170,0 L170,80 L90,80 Z M0,90 L80,90 L80,170 L0,170 Z M90,90 L170,90 L170,170 L90,170 Z"
Fill="{DynamicResource ButtonBg}" Stretch="Uniform" Margin="10"/> Fill="{DynamicResource ButtonBgColor}" Stretch="Uniform" Margin="10"/>
<!-- Sparkle effects --> <!-- Sparkle effects -->
<Canvas HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="50" Height="50" Margin="0,0,2,2"> <Canvas HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="50" Height="50" Margin="0,0,2,2">
<Path Canvas.Left="10" Canvas.Top="16" Data="M12,0 L14,10 L24,12 L14,14 L12,24 L10,14 L0,12 L10,10 Z" <Path Canvas.Left="10" Canvas.Top="16" Data="M12,0 L14,10 L24,12 L14,14 L12,24 L10,14 L0,12 L10,10 Z"
Fill="{DynamicResource AccentColor}" Width="40" Height="40" Stretch="Uniform"/> Fill="{DynamicResource AppAccentColor}" Width="40" Height="40" Stretch="Uniform"/>
<Path Canvas.Left="0" Canvas.Top="0" Data="M6,0 L7,5 L12,6 L7,7 L6,12 L5,7 L0,6 L5,5 Z" <Path Canvas.Left="0" Canvas.Top="0" Data="M6,0 L7,5 L12,6 L7,7 L6,12 L5,7 L0,6 L5,5 Z"
Fill="{DynamicResource AccentColor}" Width="22" Height="22" Stretch="Uniform"/> Fill="{DynamicResource AppAccentColor}" Width="22" Height="22" Stretch="Uniform"/>
<Path Canvas.Left="35" Canvas.Top="8" Data="M4,0 L5,3 L8,4 L5,5 L4,8 L3,5 L0,4 L3,3 Z" <Path Canvas.Left="35" Canvas.Top="8" Data="M4,0 L5,3 L8,4 L5,5 L4,8 L3,5 L0,4 L3,3 Z"
Fill="{DynamicResource AccentColor}" Width="17" Height="17" Stretch="Uniform"/> Fill="{DynamicResource AppAccentColor}" Width="17" Height="17" Stretch="Uniform"/>
</Canvas> </Canvas>
</Grid> </Grid>
</Viewbox> </Viewbox>
<!-- Title --> <!-- Title -->
<TextBlock Text="Welcome to Win11Debloat" FontSize="30" FontWeight="Bold" Foreground="{DynamicResource FgColor}" HorizontalAlignment="Center" Margin="0,0,0,10"/> <TextBlock Text="Welcome to Win11Debloat" FontSize="40" FontWeight="SemiBold" Foreground="{DynamicResource AppFgColor}" HorizontalAlignment="Center"/>
<TextBlock TextWrapping="Wrap" Foreground="{DynamicResource FgColor}" FontSize="18" LineHeight="22" HorizontalAlignment="Center" Margin="0,0,0,60"> <TextBlock TextWrapping="Wrap" Foreground="{DynamicResource AppFgColor}" FontSize="20" HorizontalAlignment="Center" Margin="0,8,0,64">
<Run Text="Your clean Windows experience is just a few clicks away!"/> <Run Text="Your clean Windows experience is just a few clicks away!"/>
</TextBlock> </TextBlock>
<Border HorizontalAlignment="Center" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12" Width="500"> <Border HorizontalAlignment="Center" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12" Width="500">
<StackPanel> <StackPanel>
<TextBlock Text="What user do you want to apply changes to?" Style="{StaticResource CategoryHeaderTextBlock}"/> <TextBlock Text="What user do you want to apply changes to?" Style="{StaticResource CategoryHeaderTextBlock}"/>
<ComboBox x:Name="UserSelectionCombo" Margin="0,0,0,6" AutomationProperties.Name="Apply Changes To"> <ComboBox x:Name="UserSelectionCombo" Margin="0,0,0,6" AutomationProperties.Name="Apply Changes To">
@@ -519,32 +491,25 @@
<ComboBoxItem Content="Windows Default User (Sysprep)"/> <ComboBoxItem Content="Windows Default User (Sysprep)"/>
</ComboBox> </ComboBox>
<StackPanel x:Name="OtherUserPanel" Visibility="Collapsed" Margin="0,0,0,6"> <StackPanel x:Name="OtherUserPanel" Visibility="Collapsed" Margin="0,0,0,6">
<TextBlock x:Name="UsernameValidationMessage" Text="" FontStyle="Italic" Foreground="{DynamicResource CloseHover}" FontSize="11" Margin="3,0,0,4" TextWrapping="Wrap"/> <TextBlock x:Name="UsernameValidationMessage" Text="" FontStyle="Italic" Foreground="{DynamicResource TitleBarCloseHoverColor}" FontSize="11" Margin="3,0,0,4" TextWrapping="Wrap"/>
<Border IsEnabled="{Binding ElementName=OtherUsernameTextBox, Path=IsEnabled}"> <Border Style="{DynamicResource TextBoxBorderStyle}">
<Border.Style> <Border Style="{DynamicResource TextBoxBottomBorderStyle}">
<Style TargetType="Border" BasedOn="{StaticResource UserTextBoxBorderStyle}"> <Grid>
<Style.Triggers> <Grid.ColumnDefinitions>
<DataTrigger Binding="{Binding ElementName=OtherUsernameTextBox, Path=IsFocused}" Value="True"> <ColumnDefinition Width="*"/>
<Setter Property="Background" Value="{DynamicResource InputFocusColor}"/> <ColumnDefinition Width="Auto"/>
</DataTrigger> </Grid.ColumnDefinitions>
</Style.Triggers> <TextBlock x:Name="UsernameTextBoxPlaceholder" Grid.Column="0" Text="Enter username" Foreground="{DynamicResource AppFgColor}" Opacity="0.7" FontSize="13" Margin="3,0,0,1" VerticalAlignment="Center" IsHitTestVisible="False"/>
</Style> <TextBox x:Name="OtherUsernameTextBox" Grid.Column="0" Style="{DynamicResource TextBoxInputStyle}" Text="" AutomationProperties.Name="Enter username"/>
</Border.Style> <TextBlock Grid.Column="1" Text="&#xE77B;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="8,0,4,0" Foreground="{DynamicResource AppFgColor}" Opacity="0.7"/>
<Grid> </Grid>
<Grid.ColumnDefinitions> </Border>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="&#xE77B;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="4,0,8,0" Foreground="{DynamicResource FgColor}"/>
<TextBlock x:Name="UsernameTextBoxPlaceholder" Grid.Column="1" Text="Enter username" Foreground="{DynamicResource FgColor}" Opacity="0.5" FontSize="13" Margin="3,0,0,1" VerticalAlignment="Center" IsHitTestVisible="False"/>
<TextBox x:Name="OtherUsernameTextBox" Grid.Column="1" Style="{StaticResource UserTextBoxStyle}" Text="" AutomationProperties.Name="Enter username"/>
</Grid>
</Border> </Border>
</StackPanel> </StackPanel>
<Separator Margin="0,10,0,8" Background="{DynamicResource BorderColor}"/> <Separator Margin="0,10,0,8" Background="{DynamicResource AppBorderColor}"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,8,0,0"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,8,0,4">
<Button x:Name="HomeDefaultModeBtn" Width="227" Height="50" Style="{DynamicResource PrimaryButtonStyle}" Margin="0,0,12,0" AutomationProperties.Name="Default Mode"> <Button x:Name="HomeDefaultModeBtn" Width="227" Height="50" Style="{DynamicResource PrimaryButtonStyle}" Margin="0,0,12,0" AutomationProperties.Name="Default Mode">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="&#xe735;" FontFamily="Segoe Fluent Icons" FontSize="16" VerticalAlignment="Center" Margin="0,0,8,-1"/> <TextBlock Text="&#xe735;" FontFamily="Segoe Fluent Icons" FontSize="16" VerticalAlignment="Center" Margin="0,0,8,-1"/>
@@ -567,10 +532,10 @@
<!-- App Removal Tab --> <!-- App Removal Tab -->
<TabItem Header="App Removal"> <TabItem Header="App Removal">
<DockPanel> <DockPanel>
<Border DockPanel.Dock="Top" Padding="20,10,20,0"> <Border DockPanel.Dock="Top" Padding="20,4,20,0">
<StackPanel> <StackPanel>
<TextBlock Text="App Removal" FontWeight="Bold" FontSize="20" Margin="0,0,0,5" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="App Removal" FontWeight="SemiBold" FontSize="24" Foreground="{DynamicResource AppFgColor}"/>
<TextBlock Text="Select which apps you want to remove from your system" FontSize="13" Margin="0,0,0,20" Foreground="{DynamicResource FgColor}" TextWrapping="Wrap"/> <TextBlock Text="Select which apps you want to remove" FontSize="14" Margin="0,5,0,20" Foreground="{DynamicResource AppFgColor}" TextWrapping="Wrap"/>
<!-- Filter Options --> <!-- Filter Options -->
<Grid Margin="0,0,0,12"> <Grid Margin="0,0,0,12">
@@ -583,11 +548,11 @@
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<StackPanel Orientation="Horizontal" Grid.Column="0"> <StackPanel Orientation="Horizontal" Grid.Column="0">
<ToggleButton x:Name="PresetsBtn" ToolTip="Select or clear app presets" Height="32" Padding="10,0" Margin="0,0,10,0" AutomationProperties.Name="App Presets"> <ToggleButton x:Name="PresetsBtn" Height="32" Padding="10,0" Margin="0,0,10,0" AutomationProperties.Name="App Presets">
<ToggleButton.Style> <ToggleButton.Style>
<Style TargetType="ToggleButton"> <Style TargetType="ToggleButton">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonBg}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonBgColor}"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="FontSize" Value="14"/> <Setter Property="FontSize" Value="14"/>
@@ -603,20 +568,20 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonHover}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonPressed}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonPressedColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsChecked" Value="True"> <Trigger Property="IsChecked" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonHover}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonHoverColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</ToggleButton.Style> </ToggleButton.Style>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE735;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="0,0,6,0"/> <TextBlock Text="&#xE735;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="0,1,6,0"/>
<TextBlock Text="Quick Select" FontSize="13" VerticalAlignment="Center" Margin="0,0,6,0"/> <TextBlock Text="Quick Select" FontSize="13" VerticalAlignment="Center" Margin="0,0,6,1"/>
<TextBlock x:Name="PresetsArrow" Text="&#xE70D;" FontFamily="Segoe Fluent Icons" FontSize="10" VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5"> <TextBlock x:Name="PresetsArrow" Text="&#xE70D;" FontFamily="Segoe Fluent Icons" FontSize="10" VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform> <TextBlock.RenderTransform>
<RotateTransform x:Name="PresetsArrowRotation" Angle="0"/> <RotateTransform x:Name="PresetsArrowRotation" Angle="0"/>
@@ -626,46 +591,41 @@
</ToggleButton> </ToggleButton>
<Button x:Name="ClearAppSelectionBtn" ToolTip="Clear all selected apps" Style="{DynamicResource SecondaryButtonStyle}" Height="32" Padding="10,0" Margin="0,0,10,0" AutomationProperties.Name="Clear Selection"> <Button x:Name="ClearAppSelectionBtn" ToolTip="Clear all selected apps" Style="{DynamicResource SecondaryButtonStyle}" Height="32" Padding="10,0" Margin="0,0,10,0" AutomationProperties.Name="Clear Selection">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="&#xE711;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="0,0,6,0"/> <TextBlock Text="&#xE711;" FontFamily="Segoe Fluent Icons" FontSize="15" VerticalAlignment="Center" Margin="0,3,6,0"/>
<TextBlock Text="Clear Selection" FontSize="13" VerticalAlignment="Center" Margin="0,0,0,1"/> <TextBlock Text="Clear Selection" FontSize="13" VerticalAlignment="Center" Margin="0,0,0,1"/>
</StackPanel> </StackPanel>
</Button> </Button>
<Popup x:Name="PresetsPopup" PlacementTarget="{Binding ElementName=PresetsBtn}" Placement="Bottom" StaysOpen="True" AllowsTransparency="True" VerticalOffset="2"> <Popup x:Name="PresetsPopup" PlacementTarget="{Binding ElementName=PresetsBtn}" Placement="Bottom" StaysOpen="True" AllowsTransparency="True" VerticalOffset="2">
<Border Background="{DynamicResource CardBgColor}" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1" CornerRadius="6" Padding="4,6" Margin="12"> <Border Background="{DynamicResource CardBgColor}" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1" CornerRadius="6" Padding="4,6" Margin="12">
<Border.Effect> <Border.Effect>
<DropShadowEffect BlurRadius="12" Opacity="0.25" ShadowDepth="4"/> <DropShadowEffect BlurRadius="12" Opacity="0.25" ShadowDepth="4"/>
</Border.Effect> </Border.Effect>
<StackPanel x:Name="PresetsPanel" MinWidth="220"> <StackPanel x:Name="PresetsPanel" MinWidth="220">
<CheckBox x:Name="PresetDefaultApps" Content="Default apps" IsThreeState="True" ToolTip="Select the apps that are safe to remove for most users" Foreground="{DynamicResource FgColor}" Margin="8,4" AutomationProperties.Name="Default selection"/> <CheckBox x:Name="PresetDefaultApps" Content="Default apps" IsThreeState="True" ToolTip="Select the apps that are safe to remove for most users" Foreground="{DynamicResource AppFgColor}" Margin="8,4" AutomationProperties.Name="Default selection"/>
<CheckBox x:Name="PresetLastUsed" Content="Last used apps" IsThreeState="True" ToolTip="Select the apps that were removed the last time Win11Debloat was run" Foreground="{DynamicResource FgColor}" Margin="8,4" AutomationProperties.Name="Last used selection"/> <CheckBox x:Name="PresetLastUsed" Content="Previously selected apps" IsThreeState="True" ToolTip="Select the apps that were removed the last time Win11Debloat was run" Foreground="{DynamicResource AppFgColor}" Margin="8,4" AutomationProperties.Name="Previously selected apps"/>
<Separator Margin="4,6" Background="{DynamicResource BorderColor}"/> <Separator Margin="4,6" Background="{DynamicResource AppBorderColor}"/>
<StackPanel x:Name="JsonPresetsPanel"/> <StackPanel x:Name="JsonPresetsPanel"/>
</StackPanel> </StackPanel>
</Border> </Border>
</Popup> </Popup>
</StackPanel> </StackPanel>
<CheckBox x:Name="OnlyInstalledAppsBox" Grid.Column="2" Content="Only show installed apps" IsChecked="False" Foreground="{DynamicResource FgColor}" VerticalAlignment="Center" AutomationProperties.Name="Only show installed apps"/> <CheckBox x:Name="OnlyInstalledAppsBox" Grid.Column="2" Content="Only show installed apps" ToolTip="Only show applications that are currently installed on this system" IsChecked="False" Foreground="{DynamicResource AppFgColor}" VerticalAlignment="Center" AutomationProperties.Name="Only show installed apps"/>
<Border x:Name="AppSearchBorder" Grid.Column="4"> <Border x:Name="AppSearchBorder" Grid.Column="4" Width="300">
<Border.Style> <Border Style="{DynamicResource TextBoxBorderStyle}">
<Style TargetType="Border" BasedOn="{StaticResource SearchBoxBorderStyle}"> <Border Style="{DynamicResource TextBoxBottomBorderStyle}">
<Style.Triggers> <Grid>
<DataTrigger Binding="{Binding ElementName=AppSearchBox, Path=IsFocused}" Value="True"> <Grid.ColumnDefinitions>
<Setter Property="Background" Value="{DynamicResource InputFocusColor}"/> <ColumnDefinition Width="*"/>
</DataTrigger> <ColumnDefinition Width="Auto"/>
</Style.Triggers> </Grid.ColumnDefinitions>
</Style> <TextBlock x:Name="AppSearchPlaceholder" Grid.Column="0" Text="Search apps..." Foreground="{DynamicResource AppFgColor}" Opacity="0.7" FontSize="13" Margin="3,0,0,1" VerticalAlignment="Center" IsHitTestVisible="False"/>
</Border.Style> <TextBox x:Name="AppSearchBox" Grid.Column="0" Style="{DynamicResource TextBoxInputStyle}" Text="" AutomationProperties.Name="Search app"/>
<Grid> <TextBlock Grid.Column="1" Text="&#xE721;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="8,0,4,0" Foreground="{DynamicResource AppFgColor}" Opacity="0.7"/>
<Grid.ColumnDefinitions> </Grid>
<ColumnDefinition Width="Auto"/> </Border>
<ColumnDefinition Width="*"/> </Border>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="&#xE721;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="4,0,8,0" Foreground="{DynamicResource FgColor}"/>
<TextBlock x:Name="AppSearchPlaceholder" Grid.Column="1" Text="Search app" Foreground="{DynamicResource FgColor}" Opacity="0.5" FontSize="13" Margin="3,0,0,1" VerticalAlignment="Center" IsHitTestVisible="False"/>
<TextBox x:Name="AppSearchBox" Grid.Column="1" Background="Transparent" Foreground="{DynamicResource FgColor}" BorderThickness="0" FontSize="13" Margin="1,0,0,1" VerticalAlignment="Center" Text="" AutomationProperties.Name="Search app"/>
</Grid>
</Border> </Border>
</Grid> </Grid>
</StackPanel> </StackPanel>
@@ -683,7 +643,7 @@
<RowDefinition Height="*"/> <RowDefinition Height="*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- Column Headers --> <!-- Column Headers -->
<Border Grid.Row="0" Background="{DynamicResource TableHeaderColor}" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1,1,1,0" CornerRadius="4,4,0,0"> <Border Grid.Row="0" Background="{DynamicResource TableHeaderColor}" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1,1,1,0" CornerRadius="4,4,0,0">
<Grid Margin="42,6,23,8"> <Grid Margin="42,6,23,8">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="{StaticResource AppTableDotColWidth}"/> <ColumnDefinition Width="{StaticResource AppTableDotColWidth}"/>
@@ -692,34 +652,34 @@
<ColumnDefinition Width="{StaticResource AppTableIdColWidth}"/> <ColumnDefinition Width="{StaticResource AppTableIdColWidth}"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<StackPanel x:Name="HeaderNameBtn" Grid.Column="1" Orientation="Horizontal" Cursor="Hand" VerticalAlignment="Center" Style="{StaticResource SortHeaderBtnStyle}"> <StackPanel x:Name="HeaderNameBtn" Grid.Column="1" Orientation="Horizontal" Cursor="Hand" VerticalAlignment="Center" Style="{StaticResource SortHeaderBtnStyle}">
<TextBlock Text="Name" FontWeight="SemiBold" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="Name" FontWeight="SemiBold" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
<TextBlock x:Name="SortArrowName" Text="&#xE70E;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource FgColor}" VerticalAlignment="Center" Margin="5,1,0,0" Opacity="0.3" RenderTransformOrigin="0.5,0.5"> <TextBlock x:Name="SortArrowName" Text="&#xE70E;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource AppFgColor}" VerticalAlignment="Center" Margin="5,1,0,0" Opacity="0.3" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform><RotateTransform Angle="0"/></TextBlock.RenderTransform> <TextBlock.RenderTransform><RotateTransform Angle="0"/></TextBlock.RenderTransform>
</TextBlock> </TextBlock>
</StackPanel> </StackPanel>
<StackPanel x:Name="HeaderDescriptionBtn" Grid.Column="2" Orientation="Horizontal" Cursor="Hand" VerticalAlignment="Center" Margin="8,0,0,0" Style="{StaticResource SortHeaderBtnStyle}"> <StackPanel x:Name="HeaderDescriptionBtn" Grid.Column="2" Orientation="Horizontal" Cursor="Hand" VerticalAlignment="Center" Margin="8,0,0,0" Style="{StaticResource SortHeaderBtnStyle}">
<TextBlock Text="Description" FontWeight="SemiBold" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="Description" FontWeight="SemiBold" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
<TextBlock x:Name="SortArrowDescription" Text="&#xE70E;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource FgColor}" VerticalAlignment="Center" Margin="5,1,0,0" Opacity="0.3" RenderTransformOrigin="0.5,0.5"> <TextBlock x:Name="SortArrowDescription" Text="&#xE70E;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource AppFgColor}" VerticalAlignment="Center" Margin="5,1,0,0" Opacity="0.3" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform><RotateTransform Angle="0"/></TextBlock.RenderTransform> <TextBlock.RenderTransform><RotateTransform Angle="0"/></TextBlock.RenderTransform>
</TextBlock> </TextBlock>
</StackPanel> </StackPanel>
<StackPanel x:Name="HeaderAppIdBtn" Grid.Column="3" Orientation="Horizontal" Cursor="Hand" VerticalAlignment="Center" Style="{StaticResource SortHeaderBtnStyle}"> <StackPanel x:Name="HeaderAppIdBtn" Grid.Column="3" Orientation="Horizontal" Cursor="Hand" VerticalAlignment="Center" Style="{StaticResource SortHeaderBtnStyle}">
<TextBlock Text="App ID" FontWeight="SemiBold" FontSize="16" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="App ID" FontWeight="SemiBold" FontSize="16" Foreground="{DynamicResource AppFgColor}"/>
<TextBlock x:Name="SortArrowAppId" Text="&#xE70E;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource FgColor}" VerticalAlignment="Center" Margin="5,1,0,0" Opacity="0.3" RenderTransformOrigin="0.5,0.5"> <TextBlock x:Name="SortArrowAppId" Text="&#xE70E;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource AppFgColor}" VerticalAlignment="Center" Margin="5,1,0,0" Opacity="0.3" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform><RotateTransform Angle="0"/></TextBlock.RenderTransform> <TextBlock.RenderTransform><RotateTransform Angle="0"/></TextBlock.RenderTransform>
</TextBlock> </TextBlock>
</StackPanel> </StackPanel>
</Grid> </Grid>
</Border> </Border>
<!-- Apps content --> <!-- Apps content -->
<Border Grid.Row="1" BorderBrush="{DynamicResource BorderColor}" CornerRadius="0,0,4,4" BorderThickness="1" Background="{DynamicResource CardBgColor}" Padding="0,1,1,1"> <Border Grid.Row="1" BorderBrush="{DynamicResource AppBorderColor}" CornerRadius="0,0,4,4" BorderThickness="1" Background="{DynamicResource CardBgColor}" Padding="0,1,1,1">
<Grid> <Grid>
<ScrollViewer VerticalScrollBarVisibility="Visible"> <ScrollViewer VerticalScrollBarVisibility="Visible">
<StackPanel x:Name="AppSelectionPanel" Margin="10,4,0,4"/> <StackPanel x:Name="AppSelectionPanel" Margin="10,4,0,4"/>
</ScrollViewer> </ScrollViewer>
<Border x:Name="LoadingAppsIndicator" CornerRadius="0,0,4,4" Background="{DynamicResource CardBgColor}" Opacity="0.8" Visibility="Collapsed"> <Border x:Name="LoadingAppsIndicator" CornerRadius="0,0,4,4" Background="{DynamicResource CardBgColor}" Opacity="0.8" Visibility="Collapsed">
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center"> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<TextBlock Text="&#xF16A;" FontFamily="Segoe Fluent Icons" FontSize="28" Foreground="{DynamicResource FgColor}" HorizontalAlignment="Center" Margin="0,0,0,8" RenderTransformOrigin="0.5,0.5"> <TextBlock Text="&#xF16A;" FontFamily="Segoe Fluent Icons" FontSize="28" Foreground="{DynamicResource AppFgColor}" HorizontalAlignment="Center" Margin="0,0,0,8" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform> <TextBlock.RenderTransform>
<RotateTransform Angle="0"/> <RotateTransform Angle="0"/>
</TextBlock.RenderTransform> </TextBlock.RenderTransform>
@@ -736,7 +696,7 @@
</EventTrigger> </EventTrigger>
</TextBlock.Triggers> </TextBlock.Triggers>
</TextBlock> </TextBlock>
<TextBlock Text="Loading apps..." FontSize="16" FontWeight="SemiBold" Foreground="{DynamicResource FgColor}" HorizontalAlignment="Center"/> <TextBlock Text="Loading apps..." FontSize="16" FontWeight="SemiBold" Foreground="{DynamicResource AppFgColor}" HorizontalAlignment="Center"/>
</StackPanel> </StackPanel>
</Border> </Border>
</Grid> </Grid>
@@ -745,7 +705,7 @@
<!-- Status Info --> <!-- Status Info -->
<StackPanel Grid.Row="1" Orientation="Horizontal" Margin="20,0,20,0"> <StackPanel Grid.Row="1" Orientation="Horizontal" Margin="20,0,20,0">
<TextBlock x:Name="AppSelectionStatus" Text="" Foreground="{DynamicResource FgColor}" Margin="10,0,0,5" HorizontalAlignment="Left"/> <TextBlock x:Name="AppSelectionStatus" Text="" Foreground="{DynamicResource AppFgColor}" Margin="10,0,0,5" HorizontalAlignment="Left"/>
</StackPanel> </StackPanel>
</Grid> </Grid>
</DockPanel> </DockPanel>
@@ -754,10 +714,10 @@
<!-- Tweaks Tab --> <!-- Tweaks Tab -->
<TabItem Header="Tweaks"> <TabItem Header="Tweaks">
<DockPanel> <DockPanel>
<Border DockPanel.Dock="Top" Padding="20,10,20,0" Background="{DynamicResource BgColor}"> <Border DockPanel.Dock="Top" Padding="20,4,20,0" Background="{DynamicResource AppBgColor}">
<StackPanel> <StackPanel>
<TextBlock Text="System Tweaks" FontWeight="Bold" FontSize="20" Margin="0,0,0,5" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="System Tweaks" FontWeight="SemiBold" FontSize="24" Foreground="{DynamicResource AppFgColor}"/>
<TextBlock Text="Select which tweaks you want to apply to your system, hover over settings for more information" FontSize="13" Margin="0,0,0,20" Foreground="{DynamicResource FgColor}" TextWrapping="Wrap"/> <TextBlock Text="Select what changes you want to make, you can hover over settings for more information" FontSize="14" Margin="0,5,0,20" Foreground="{DynamicResource AppFgColor}" TextWrapping="Wrap"/>
<!-- Filter Options --> <!-- Filter Options -->
<Grid Margin="0,0,0,12"> <Grid Margin="0,0,0,12">
@@ -770,11 +730,11 @@
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Orientation="Horizontal"> <StackPanel Grid.Column="0" Orientation="Horizontal">
<ToggleButton x:Name="TweaksPresetsBtn" ToolTip="Select tweak presets" Height="32" Padding="10,0" Margin="0,0,10,0" AutomationProperties.Name="Tweak Presets"> <ToggleButton x:Name="TweaksPresetsBtn" Height="32" Padding="10,0" Margin="0,0,10,0" AutomationProperties.Name="Tweak Presets">
<ToggleButton.Style> <ToggleButton.Style>
<Style TargetType="ToggleButton"> <Style TargetType="ToggleButton">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonBg}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonBgColor}"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="FontSize" Value="14"/> <Setter Property="FontSize" Value="14"/>
@@ -790,20 +750,20 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonHover}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonPressed}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonPressedColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsChecked" Value="True"> <Trigger Property="IsChecked" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonHover}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonHoverColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</ToggleButton.Style> </ToggleButton.Style>
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<TextBlock Text="&#xE735;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="0,1,6,0"/> <TextBlock Text="&#xE735;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="0,1,6,0"/>
<TextBlock Text="Quick Select" FontSize="13" VerticalAlignment="Center" Margin="0,0,6,0"/> <TextBlock Text="Quick Select" FontSize="13" VerticalAlignment="Center" Margin="0,0,6,1"/>
<TextBlock x:Name="TweaksPresetsArrow" Text="&#xE70D;" FontFamily="Segoe Fluent Icons" FontSize="10" VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5"> <TextBlock x:Name="TweaksPresetsArrow" Text="&#xE70D;" FontFamily="Segoe Fluent Icons" FontSize="10" VerticalAlignment="Center" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform> <TextBlock.RenderTransform>
<RotateTransform Angle="0"/> <RotateTransform Angle="0"/>
@@ -813,47 +773,42 @@
</ToggleButton> </ToggleButton>
<Button x:Name="ClearAllTweaksBtn" ToolTip="Clear all selected tweaks" Style="{DynamicResource SecondaryButtonStyle}" Padding="10,0" Height="32" Margin="0,0,10,0" AutomationProperties.Name="Clear Selection"> <Button x:Name="ClearAllTweaksBtn" ToolTip="Clear all selected tweaks" Style="{DynamicResource SecondaryButtonStyle}" Padding="10,0" Height="32" Margin="0,0,10,0" AutomationProperties.Name="Clear Selection">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="&#xE711;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="0,0,6,0"/> <TextBlock Text="&#xE711;" FontFamily="Segoe Fluent Icons" FontSize="15" VerticalAlignment="Center" Margin="0,3,6,0"/>
<TextBlock Text="Clear Selection" FontSize="13" VerticalAlignment="Center" Margin="0,0,0,1"/> <TextBlock Text="Clear Selection" FontSize="13" VerticalAlignment="Center" Margin="0,0,0,1"/>
</StackPanel> </StackPanel>
</Button> </Button>
<Popup x:Name="TweaksPresetsPopup" PlacementTarget="{Binding ElementName=TweaksPresetsBtn}" Placement="Bottom" StaysOpen="True" AllowsTransparency="True" VerticalOffset="2"> <Popup x:Name="TweaksPresetsPopup" PlacementTarget="{Binding ElementName=TweaksPresetsBtn}" Placement="Bottom" StaysOpen="True" AllowsTransparency="True" VerticalOffset="2">
<Border Background="{DynamicResource CardBgColor}" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1" CornerRadius="6" Padding="4,6" Margin="12"> <Border Background="{DynamicResource CardBgColor}" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1" CornerRadius="6" Padding="4,6" Margin="12">
<Border.Effect> <Border.Effect>
<DropShadowEffect BlurRadius="12" Opacity="0.25" ShadowDepth="4"/> <DropShadowEffect BlurRadius="12" Opacity="0.25" ShadowDepth="4"/>
</Border.Effect> </Border.Effect>
<StackPanel MinWidth="220"> <StackPanel MinWidth="220">
<CheckBox x:Name="PresetDefaultTweaksBtn" Content="Default settings" IsThreeState="True" ToolTip="Select the settings that are recommended for most people" Foreground="{DynamicResource FgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="Default settings"/> <CheckBox x:Name="PresetDefaultTweaksBtn" Content="Default settings" IsThreeState="True" ToolTip="Select the settings that are recommended for most people" Foreground="{DynamicResource AppFgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="Default settings"/>
<CheckBox x:Name="PresetLastUsedTweaksBtn" Content="Last used settings" IsThreeState="True" ToolTip="Select the settings that were used the last time Win11Debloat was run" Foreground="{DynamicResource FgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="Last used settings"/> <CheckBox x:Name="PresetLastUsedTweaksBtn" Content="Previously selected settings" IsThreeState="True" ToolTip="Select the settings that were applied the last time Win11Debloat was run" Foreground="{DynamicResource AppFgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="Previously selected settings"/>
<Separator Margin="4,6" Background="{DynamicResource BorderColor}"/> <Separator Margin="4,6" Background="{DynamicResource AppBorderColor}"/>
<CheckBox x:Name="PresetPrivacyTweaksBtn" Content="Privacy &amp; Suggested Content" IsThreeState="True" ToolTip="Select all Privacy &amp; Suggested Content tweaks" Foreground="{DynamicResource FgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="All Privacy and Suggested Content"/> <CheckBox x:Name="PresetPrivacyTweaksBtn" Content="Privacy &amp; suggested content" IsThreeState="True" ToolTip="Select all tweaks related to privacy &amp; suggested content" Foreground="{DynamicResource AppFgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="All Privacy and Suggested Content"/>
<CheckBox x:Name="PresetAITweaksBtn" Content="AI features" IsThreeState="True" ToolTip="Select all AI feature tweaks" Foreground="{DynamicResource FgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="All AI features"/> <CheckBox x:Name="PresetAITweaksBtn" Content="AI features" IsThreeState="True" ToolTip="Select all AI related tweaks" Foreground="{DynamicResource AppFgColor}" Style="{DynamicResource PresetCheckBoxStyle}" AutomationProperties.Name="All AI features"/>
</StackPanel> </StackPanel>
</Border> </Border>
</Popup> </Popup>
</StackPanel> </StackPanel>
<CheckBox x:Name="ShowCurrentlyAppliedTweaksCheckBox" Grid.Column="2" Content="Detect applied tweaks" IsChecked="True" Foreground="{DynamicResource FgColor}" VerticalAlignment="Center" AutomationProperties.Name="Detect applied tweaks" ToolTip="Detect all tweaks currently applied for the current user."/> <CheckBox x:Name="ShowCurrentlyAppliedTweaksCheckBox" Grid.Column="2" Content="Detect applied tweaks" IsChecked="True" Foreground="{DynamicResource AppFgColor}" VerticalAlignment="Center" AutomationProperties.Name="Detect applied tweaks" ToolTip="Detect all tweaks currently applied for the current user"/>
<Border x:Name="TweakSearchBorder" Grid.Column="4"> <Border x:Name="TweakSearchBorder" Grid.Column="4" Width="300">
<Border.Style> <Border Style="{DynamicResource TextBoxBorderStyle}">
<Style TargetType="Border" BasedOn="{StaticResource SearchBoxBorderStyle}"> <Border Style="{DynamicResource TextBoxBottomBorderStyle}">
<Style.Triggers> <Grid>
<DataTrigger Binding="{Binding ElementName=TweakSearchBox, Path=IsFocused}" Value="True"> <Grid.ColumnDefinitions>
<Setter Property="Background" Value="{DynamicResource InputFocusColor}"/> <ColumnDefinition Width="*"/>
</DataTrigger> <ColumnDefinition Width="Auto"/>
</Style.Triggers> </Grid.ColumnDefinitions>
</Style> <TextBlock x:Name="TweakSearchPlaceholder" Grid.Column="0" Text="Search tweaks..." Foreground="{DynamicResource AppFgColor}" Opacity="0.7" FontSize="13" Margin="3,0,0,1" VerticalAlignment="Center" IsHitTestVisible="False"/>
</Border.Style> <TextBox x:Name="TweakSearchBox" Grid.Column="0" Style="{DynamicResource TextBoxInputStyle}" Text="" AutomationProperties.Name="Search tweaks"/>
<Grid> <TextBlock Grid.Column="1" Text="&#xE721;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="8,0,4,0" Foreground="{DynamicResource AppFgColor}" Opacity="0.7"/>
<Grid.ColumnDefinitions> </Grid>
<ColumnDefinition Width="Auto"/> </Border>
<ColumnDefinition Width="*"/> </Border>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="&#xE721;" FontFamily="Segoe Fluent Icons" FontSize="14" VerticalAlignment="Center" Margin="4,0,8,0" Foreground="{DynamicResource FgColor}"/>
<TextBlock x:Name="TweakSearchPlaceholder" Grid.Column="1" Text="Search setting" Foreground="{DynamicResource FgColor}" Opacity="0.5" FontSize="13" Margin="3,0,0,1" VerticalAlignment="Center" IsHitTestVisible="False"/>
<TextBox x:Name="TweakSearchBox" Grid.Column="1" Background="Transparent" Foreground="{DynamicResource FgColor}" BorderThickness="0" FontSize="13" Margin="1,0,0,1" VerticalAlignment="Center" Text=""/>
</Grid>
</Border> </Border>
</Grid> </Grid>
</StackPanel> </StackPanel>
@@ -878,7 +833,7 @@
</Grid> </Grid>
</ScrollViewer> </ScrollViewer>
<!-- Top fade gradient --> <!-- Top fade gradient -->
<Border IsHitTestVisible="False" VerticalAlignment="Top" Height="10" Margin="0,-12,20,0" Background="{DynamicResource BgColor}"> <Border IsHitTestVisible="False" VerticalAlignment="Top" Height="10" Margin="0,-12,20,0" Background="{DynamicResource AppBgColor}">
<Border.OpacityMask> <Border.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="Black" Offset="0"/> <GradientStop Color="Black" Offset="0"/>
@@ -888,7 +843,7 @@
</Border.OpacityMask> </Border.OpacityMask>
</Border> </Border>
<!-- Bottom fade gradient --> <!-- Bottom fade gradient -->
<Border IsHitTestVisible="False" VerticalAlignment="Bottom" Height="20" Margin="0,0,20,0" Background="{DynamicResource BgColor}"> <Border IsHitTestVisible="False" VerticalAlignment="Bottom" Height="20" Margin="0,0,20,0" Background="{DynamicResource AppBgColor}">
<Border.OpacityMask> <Border.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="Transparent" Offset="0"/> <GradientStop Color="Transparent" Offset="0"/>
@@ -903,10 +858,10 @@
<!-- Deployment Settings Tab --> <!-- Deployment Settings Tab -->
<TabItem Header="Deployment Settings" x:Name="DeploymentSettingsTab"> <TabItem Header="Deployment Settings" x:Name="DeploymentSettingsTab">
<DockPanel> <DockPanel>
<Border DockPanel.Dock="Top" Padding="20,10,20,0"> <Border DockPanel.Dock="Top" Padding="20,4,20,0">
<StackPanel> <StackPanel>
<TextBlock Text="Deployment Settings" FontWeight="Bold" FontSize="20" Margin="0,0,0,5" Foreground="{DynamicResource FgColor}"/> <TextBlock Text="Deployment Settings" FontWeight="SemiBold" FontSize="24" Foreground="{DynamicResource AppFgColor}"/>
<TextBlock Text="Configure how your changes will be applied and more" FontSize="13" Margin="0,0,0,20" Foreground="{DynamicResource FgColor}" TextWrapping="Wrap"/> <TextBlock Text="Configure how the selected changes will be applied to your system" FontSize="14" Margin="0,5,0,20" Foreground="{DynamicResource AppFgColor}" TextWrapping="Wrap"/>
</StackPanel> </StackPanel>
</Border> </Border>
@@ -926,15 +881,15 @@
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- Apply Changes To --> <!-- Apply Changes To -->
<Border Grid.Row="0" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12" Margin="0,0,0,16"> <Border Grid.Row="0" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12" Margin="0,0,0,16">
<StackPanel> <StackPanel>
<TextBlock Text="Changes will be applied to" Style="{StaticResource CategoryHeaderTextBlock}"/> <TextBlock Text="Changes will be applied to" Style="{StaticResource CategoryHeaderTextBlock}"/>
<TextBlock x:Name="UserSelectionDescription" Text="The currently logged-in user profile." Foreground="{DynamicResource FgColor}" FontSize="12" TextWrapping="Wrap" Margin="0,0,0,3"/> <TextBlock x:Name="UserSelectionDescription" Text="The currently logged-in user profile." Foreground="{DynamicResource AppFgColor}" FontSize="13" TextWrapping="Wrap" Margin="0,-2,0,3"/>
</StackPanel> </StackPanel>
</Border> </Border>
<!-- App Removal Scope --> <!-- App Removal Scope -->
<Border Grid.Row="1" x:Name="AppRemovalScopeSection" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12" Margin="0,0,0,16"> <Border Grid.Row="1" x:Name="AppRemovalScopeSection" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12" Margin="0,0,0,16">
<StackPanel> <StackPanel>
<TextBlock Text="Apps will be removed for" Style="{StaticResource CategoryHeaderTextBlock}"/> <TextBlock Text="Apps will be removed for" Style="{StaticResource CategoryHeaderTextBlock}"/>
<ComboBox x:Name="AppRemovalScopeCombo" Margin="0,0,0,6" AutomationProperties.Name="App Removal Scope"> <ComboBox x:Name="AppRemovalScopeCombo" Margin="0,0,0,6" AutomationProperties.Name="App Removal Scope">
@@ -942,12 +897,12 @@
<ComboBoxItem x:Name="AppRemovalScopeCurrentUser" Content="Current user only"/> <ComboBoxItem x:Name="AppRemovalScopeCurrentUser" Content="Current user only"/>
<ComboBoxItem x:Name="AppRemovalScopeTargetUser" Content="Target user only" Visibility="Collapsed"/> <ComboBoxItem x:Name="AppRemovalScopeTargetUser" Content="Target user only" Visibility="Collapsed"/>
</ComboBox> </ComboBox>
<TextBlock x:Name="AppRemovalScopeDescription" Text="Apps will be removed for all users and from the Windows image to prevent reinstallation for new users." Foreground="{DynamicResource FgColor}" FontSize="12" TextWrapping="Wrap" Margin="0,6,0,3"/> <TextBlock x:Name="AppRemovalScopeDescription" Text="Apps will be removed for all users and from the Windows image to prevent reinstallation for new users." Foreground="{DynamicResource AppFgColor}" FontSize="13" TextWrapping="Wrap" Margin="0,6,0,3"/>
</StackPanel> </StackPanel>
</Border> </Border>
<!-- Options --> <!-- Options -->
<Border Grid.Row="2" BorderBrush="{DynamicResource BorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12,16,3" Margin="0,0,0,16"> <Border Grid.Row="2" BorderBrush="{DynamicResource AppBorderColor}" BorderThickness="1" CornerRadius="4" Background="{DynamicResource CardBgColor}" Padding="16,12,16,3" Margin="0,0,0,16">
<StackPanel> <StackPanel>
<TextBlock Text="Options" Style="{StaticResource CategoryHeaderTextBlock}"/> <TextBlock Text="Options" Style="{StaticResource CategoryHeaderTextBlock}"/>
@@ -965,7 +920,7 @@
</Grid> </Grid>
</ScrollViewer> </ScrollViewer>
<!-- Top fade gradient --> <!-- Top fade gradient -->
<Border IsHitTestVisible="False" VerticalAlignment="Top" Height="10" Margin="0,-12,20,0" Background="{DynamicResource BgColor}"> <Border IsHitTestVisible="False" VerticalAlignment="Top" Height="10" Margin="0,-12,20,0" Background="{DynamicResource AppBgColor}">
<Border.OpacityMask> <Border.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="Black" Offset="0"/> <GradientStop Color="Black" Offset="0"/>
@@ -975,7 +930,7 @@
</Border.OpacityMask> </Border.OpacityMask>
</Border> </Border>
<!-- Bottom fade gradient --> <!-- Bottom fade gradient -->
<Border IsHitTestVisible="False" VerticalAlignment="Bottom" Height="20" Margin="0,0,20,0" Background="{DynamicResource BgColor}"> <Border IsHitTestVisible="False" VerticalAlignment="Bottom" Height="20" Margin="0,0,20,0" Background="{DynamicResource AppBgColor}">
<Border.OpacityMask> <Border.OpacityMask>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="Transparent" Offset="0"/> <GradientStop Color="Transparent" Offset="0"/>
@@ -986,23 +941,23 @@
</Grid> </Grid>
<!-- Review & Apply Section --> <!-- Review & Apply Section -->
<StackPanel Grid.Row="1" HorizontalAlignment="Stretch" Background="{DynamicResource BgColor}"> <StackPanel Grid.Row="1" HorizontalAlignment="Stretch" Background="{DynamicResource AppBgColor}">
<Button x:Name="ReviewChangesBtn" Background="Transparent" BorderThickness="0" Cursor="Hand" HorizontalAlignment="Center" Margin="0,4,0,10" AutomationProperties.Name="Review selected changes"> <Button x:Name="ReviewChangesBtn" Background="Transparent" BorderThickness="0" Cursor="Hand" HorizontalAlignment="Center" Margin="0,4,0,10" AutomationProperties.Name="Review selected changes">
<Button.Template> <Button.Template>
<ControlTemplate TargetType="Button"> <ControlTemplate TargetType="Button">
<TextBlock x:Name="LinkText" Text="Review selected changes" FontSize="14" Foreground="{DynamicResource ButtonBg}" FontWeight="SemiBold" HorizontalAlignment="Center"/> <TextBlock x:Name="LinkText" Text="Review selected changes" FontSize="16" Foreground="{DynamicResource ButtonBgColor}" FontWeight="SemiBold" HorizontalAlignment="Center"/>
<ControlTemplate.Triggers> <ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="LinkText" Property="Foreground" Value="{DynamicResource ButtonHover}"/> <Setter TargetName="LinkText" Property="Foreground" Value="{DynamicResource ButtonHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter TargetName="LinkText" Property="Foreground" Value="{DynamicResource ButtonPressed}"/> <Setter TargetName="LinkText" Property="Foreground" Value="{DynamicResource ButtonPressedColor}"/>
</Trigger> </Trigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
</ControlTemplate> </ControlTemplate>
</Button.Template> </Button.Template>
</Button> </Button>
<Button x:Name="DeploymentApplyBtn" Style="{DynamicResource PrimaryButtonStyle}" Width="190" Height="44" HorizontalAlignment="Center" AutomationProperties.Name="Apply Changes"> <Button x:Name="DeploymentApplyBtn" Style="{DynamicResource PrimaryButtonStyle}" Width="200" Height="44" HorizontalAlignment="Center" AutomationProperties.Name="Apply Changes">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="&#xE73E;" FontFamily="Segoe Fluent Icons" FontSize="20" FontWeight="SemiBold" VerticalAlignment="Center"/> <TextBlock Text="&#xE73E;" FontFamily="Segoe Fluent Icons" FontSize="20" FontWeight="SemiBold" VerticalAlignment="Center"/>
<TextBlock Text="Apply Changes" VerticalAlignment="Center" FontSize="18" FontWeight="SemiBold" Margin="8,0,0,4"/> <TextBlock Text="Apply Changes" VerticalAlignment="Center" FontSize="18" FontWeight="SemiBold" Margin="8,0,0,4"/>
@@ -1022,17 +977,17 @@
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Button x:Name="PreviousBtn" Grid.Column="0" Width="120" Height="36" Style="{DynamicResource SecondaryButtonStyle}" Visibility="Collapsed" Margin="10,0,0,0" AutomationProperties.Name="Back"> <Button x:Name="PreviousBtn" Grid.Column="0" Width="120" Height="36" Style="{DynamicResource SecondaryButtonStyle}" Visibility="Collapsed" AutomationProperties.Name="Back">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="&#xE72B;" FontFamily="Segoe Fluent Icons" FontSize="12" Margin="0,0,8,0" VerticalAlignment="Center"/> <TextBlock Text="&#xE72B;" FontFamily="Segoe Fluent Icons" FontSize="12" Margin="0,0,8,0" VerticalAlignment="Center"/>
<TextBlock Text="Back" VerticalAlignment="Center" FontSize="14" Margin="0,0,0,1"/> <TextBlock Text="Back" VerticalAlignment="Center" FontSize="14" Margin="0,0,0,3"/>
</StackPanel> </StackPanel>
</Button> </Button>
<StackPanel Grid.Column="2" Orientation="Horizontal" HorizontalAlignment="Right"> <StackPanel Grid.Column="2" Orientation="Horizontal" HorizontalAlignment="Right">
<Button x:Name="NextBtn" Width="120" Height="36" Margin="0,0,10,0" Style="{DynamicResource PrimaryButtonStyle}" AutomationProperties.Name="Next"> <Button x:Name="NextBtn" Width="120" Height="36" Style="{DynamicResource PrimaryButtonStyle}" AutomationProperties.Name="Next">
<StackPanel Orientation="Horizontal" VerticalAlignment="Center"> <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Text="Next" VerticalAlignment="Center" FontSize="14" Margin="0,0,0,1"/> <TextBlock Text="Next" VerticalAlignment="Center" FontSize="14" Margin="0,0,0,3"/>
<TextBlock Text="&#xE72A;" FontFamily="Segoe Fluent Icons" FontSize="12" Margin="8,0,0,0" VerticalAlignment="Center"/> <TextBlock Text="&#xE72A;" FontFamily="Segoe Fluent Icons" FontSize="12" Margin="8,0,0,0" VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
</Button> </Button>

View File

@@ -12,7 +12,7 @@
Topmost="False" Topmost="False"
ShowInTaskbar="False"> ShowInTaskbar="False">
<Border BorderBrush="{DynamicResource BorderColor}" <Border BorderBrush="{DynamicResource AppBorderColor}"
BorderThickness="1" BorderThickness="1"
CornerRadius="8" CornerRadius="8"
Background="{DynamicResource CardBgColor}" Background="{DynamicResource CardBgColor}"
@@ -33,14 +33,10 @@
</Grid.RowDefinitions> </Grid.RowDefinitions>
<!-- Title Bar --> <!-- Title Bar -->
<Grid Grid.Row="0" x:Name="TitleBar" Height="40" Background="Transparent"> <Grid Grid.Row="0" x:Name="TitleBar" Style="{DynamicResource ModalTitleBarStyle}">
<TextBlock x:Name="TitleText" <TextBlock x:Name="TitleText"
Text="Message" Text="Message"
Foreground="{DynamicResource FgColor}" Style="{DynamicResource ModalTitleTextStyle}"/>
FontSize="16"
FontWeight="SemiBold"
VerticalAlignment="Center"
Margin="16,0,0,0"/>
</Grid> </Grid>
<!-- Message Content --> <!-- Message Content -->
@@ -55,7 +51,7 @@
Grid.Column="0" Grid.Column="0"
FontFamily="Segoe Fluent Icons" FontFamily="Segoe Fluent Icons"
FontSize="24" FontSize="24"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="4,0,14,0" Margin="4,0,14,0"
Visibility="Collapsed"/> Visibility="Collapsed"/>
@@ -67,7 +63,7 @@
TextWrapping="Wrap" TextWrapping="Wrap"
FontSize="14" FontSize="14"
LineHeight="20" LineHeight="20"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,20,0"/> Margin="0,0,20,0"/>
</ScrollViewer> </ScrollViewer>
@@ -75,24 +71,27 @@
<!-- Button Panel --> <!-- Button Panel -->
<Border Grid.Row="2" <Border Grid.Row="2"
Background="{DynamicResource BgColor}" Background="{DynamicResource AppBgColor}"
BorderBrush="{DynamicResource BorderColor}" BorderBrush="{DynamicResource AppBorderColor}"
BorderThickness="0,1,0,0" BorderThickness="0,1,0,0"
Padding="16,12" Padding="16,12"
CornerRadius="0,0,8,8"> CornerRadius="0,0,8,8">
<StackPanel x:Name="ButtonPanel" <Grid x:Name="ButtonPanel">
Orientation="Horizontal" <Grid.ColumnDefinitions>
HorizontalAlignment="Right"> <ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Button x:Name="Button1" <Button x:Name="Button1"
Grid.Column="0"
Content="OK" Content="OK"
Height="32" MinWidth="80" Margin="4,0" Style="{DynamicResource ModalPrimaryStretchedButtonStyle}"/>
Style="{DynamicResource PrimaryButtonStyle}"/>
<Button x:Name="Button2" <Button x:Name="Button2"
Grid.Column="1"
Content="Cancel" Content="Cancel"
Height="32" MinWidth="80" Margin="4,0" Style="{DynamicResource ModalSecondaryStretchedButtonStyle}"
Style="{DynamicResource SecondaryButtonStyle}"
Visibility="Collapsed"/> Visibility="Collapsed"/>
</StackPanel> </Grid>
</Border> </Border>
</Grid> </Grid>
</Border> </Border>

View File

@@ -14,8 +14,8 @@
<Window.Resources> <Window.Resources>
<Style x:Key="RestoreOptionTileStyle" TargetType="Button"> <Style x:Key="RestoreOptionTileStyle" TargetType="Button">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonBg}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonBgColor}"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="12,10"/> <Setter Property="Padding" Value="12,10"/>
@@ -36,16 +36,16 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsEnabled" Value="False"> <Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonDisabled}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonDisabledColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="Foreground" Value="{DynamicResource SecondaryButtonTextDisabled}"/> <Setter Property="Foreground" Value="{DynamicResource SecondaryButtonTextDisabledColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonHover}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonHoverColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonPressed}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonPressedColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
@@ -84,10 +84,10 @@
<Button.Style> <Button.Style>
<Style TargetType="Button"> <Style TargetType="Button">
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource CloseHover}"/> <Setter Property="Background" Value="{DynamicResource TitleBarCloseHoverColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
@@ -96,7 +96,7 @@
</Button> </Button>
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" Margin="0"> <ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" Margin="0">
<Grid Margin="20,4,20,18"> <Grid Margin="20,4,20,16">
<TabControl x:Name="RestoreModeTabs" <TabControl x:Name="RestoreModeTabs"
SelectedIndex="0" SelectedIndex="0"
@@ -121,7 +121,7 @@
TextWrapping="Wrap" TextWrapping="Wrap"
FontSize="14" FontSize="14"
LineHeight="20" LineHeight="20"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Text="Choose what changes you want to restore."/> Text="Choose what changes you want to restore."/>
<Button x:Name="ChooseRegistryBtn" <Button x:Name="ChooseRegistryBtn"
@@ -203,14 +203,14 @@
TextWrapping="Wrap" TextWrapping="Wrap"
FontSize="14" FontSize="14"
LineHeight="20" LineHeight="20"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Text="This will restore any system registry changes made by Win11Debloat to their previous state. You can review the changes after selecting a backup file. Apps will need to be reinstalled manually."/> Text="This will restore any system registry changes made by Win11Debloat to the previous state. You can review the changes after selecting a backup file. Removed applications will need to be reinstalled manually."/>
<TextBlock Grid.Row="1" <TextBlock Grid.Row="1"
Margin="0,12,0,2" Margin="0,12,0,2"
TextWrapping="Wrap" TextWrapping="Wrap"
FontSize="13" FontSize="13"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Opacity="0.75" Opacity="0.75"
Text="Warning: Only use backup files generated by Win11Debloat."/> Text="Warning: Only use backup files generated by Win11Debloat."/>
</Grid> </Grid>
@@ -247,7 +247,7 @@
<TextBlock x:Name="BackupTargetText" Grid.Row="2" Grid.Column="1" Text="N/A" Style="{DynamicResource ModalInfoValueTextStyle}" Margin="0"/> <TextBlock x:Name="BackupTargetText" Grid.Row="2" Grid.Column="1" Text="N/A" Style="{DynamicResource ModalInfoValueTextStyle}" Margin="0"/>
</Grid> </Grid>
<Border Grid.Row="1" Height="1" Background="{DynamicResource BorderColor}" Margin="0,0,0,12"/> <Border Grid.Row="1" Height="1" Background="{DynamicResource AppBorderColor}" Margin="0,0,0,12"/>
<Grid x:Name="OverviewFeaturesSection" Grid.Row="2"> <Grid x:Name="OverviewFeaturesSection" Grid.Row="2">
<Grid.RowDefinitions> <Grid.RowDefinitions>
@@ -258,7 +258,7 @@
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="The following changes will be reverted:" Text="The following changes will be reverted:"
FontSize="13" FontSize="13"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
FontWeight="SemiBold" FontWeight="SemiBold"
Margin="0,0,0,8"/> Margin="0,0,0,8"/>
@@ -270,7 +270,7 @@
</ItemsControl.ItemsPanel> </ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate> <ItemsControl.ItemTemplate>
<DataTemplate> <DataTemplate>
<TextBlock Text="{Binding DisplayText}" FontSize="12" Foreground="{DynamicResource FgColor}" TextWrapping="Wrap" Margin="0,0,0,6"/> <TextBlock Text="{Binding DisplayText}" FontSize="12" Foreground="{DynamicResource AppFgColor}" TextWrapping="Wrap" Margin="0,0,0,6"/>
</DataTemplate> </DataTemplate>
</ItemsControl.ItemTemplate> </ItemsControl.ItemTemplate>
</ItemsControl> </ItemsControl>
@@ -279,12 +279,12 @@
<TextBlock x:Name="OverviewSummaryText" <TextBlock x:Name="OverviewSummaryText"
Grid.Row="2" Grid.Row="2"
FontSize="13" FontSize="13"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
TextWrapping="Wrap" TextWrapping="Wrap"
Visibility="Collapsed" Visibility="Collapsed"
Text="This will restore the Start Menu pinned apps layout for the current user."/> Text="This will restore the Start Menu pinned apps layout for the current user."/>
<Border x:Name="ReappliedSeparator" Grid.Row="3" Height="1" Background="{DynamicResource BorderColor}" Margin="0,12,0,12" Visibility="Collapsed"/> <Border x:Name="ReappliedSeparator" Grid.Row="3" Height="1" Background="{DynamicResource AppBorderColor}" Margin="0,12,0,12" Visibility="Collapsed"/>
<Grid x:Name="ReappliedPanel" Grid.Row="4" Visibility="Collapsed"> <Grid x:Name="ReappliedPanel" Grid.Row="4" Visibility="Collapsed">
<Grid.RowDefinitions> <Grid.RowDefinitions>
@@ -295,7 +295,7 @@
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="The following changes will be re-applied:" Text="The following changes will be re-applied:"
FontSize="13" FontSize="13"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
FontWeight="SemiBold" FontWeight="SemiBold"
Margin="0,0,0,8"/> Margin="0,0,0,8"/>
@@ -307,13 +307,13 @@
</ItemsControl.ItemsPanel> </ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate> <ItemsControl.ItemTemplate>
<DataTemplate> <DataTemplate>
<TextBlock Text="{Binding DisplayText}" FontSize="12" Foreground="{DynamicResource FgColor}" TextWrapping="Wrap" Margin="0,0,0,6"/> <TextBlock Text="{Binding DisplayText}" FontSize="12" Foreground="{DynamicResource AppFgColor}" TextWrapping="Wrap" Margin="0,0,0,6"/>
</DataTemplate> </DataTemplate>
</ItemsControl.ItemTemplate> </ItemsControl.ItemTemplate>
</ItemsControl> </ItemsControl>
</Grid> </Grid>
<Border x:Name="NonRevertibleSeparator" Grid.Row="5" Height="1" Background="{DynamicResource BorderColor}" Margin="0,12,0,12" Visibility="Collapsed"/> <Border x:Name="NonRevertibleSeparator" Grid.Row="5" Height="1" Background="{DynamicResource AppBorderColor}" Margin="0,12,0,12" Visibility="Collapsed"/>
<Grid x:Name="NonRevertiblePanel" Grid.Row="6" Visibility="Collapsed"> <Grid x:Name="NonRevertiblePanel" Grid.Row="6" Visibility="Collapsed">
<Grid.RowDefinitions> <Grid.RowDefinitions>
@@ -325,7 +325,7 @@
<TextBlock Grid.Row="0" <TextBlock Grid.Row="0"
Text="The following changes won't be reverted:" Text="The following changes won't be reverted:"
FontSize="13" FontSize="13"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
FontWeight="SemiBold" FontWeight="SemiBold"
Margin="0,0,0,8"/> Margin="0,0,0,8"/>
@@ -337,7 +337,7 @@
</ItemsControl.ItemsPanel> </ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate> <ItemsControl.ItemTemplate>
<DataTemplate> <DataTemplate>
<TextBlock Text="{Binding DisplayText}" FontSize="12" Foreground="{DynamicResource FgColor}" Opacity="0.85" TextWrapping="Wrap" Margin="0,0,0,6"/> <TextBlock Text="{Binding DisplayText}" FontSize="12" Foreground="{DynamicResource AppFgColor}" Opacity="0.85" TextWrapping="Wrap" Margin="0,0,0,6"/>
</DataTemplate> </DataTemplate>
</ItemsControl.ItemTemplate> </ItemsControl.ItemTemplate>
</ItemsControl> </ItemsControl>
@@ -373,7 +373,7 @@
FontSize="14" FontSize="14"
LineHeight="20" LineHeight="20"
Margin="0,0,0,12" Margin="0,0,0,12"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Text="This will restore the Start Menu pinned apps layout for the selected user(s) using a backup that is automatically created by Win11Debloat. Manually created backups can also be used."/> Text="This will restore the Start Menu pinned apps layout for the selected user(s) using a backup that is automatically created by Win11Debloat. Manually created backups can also be used."/>
<ComboBox x:Name="StartMenuScopeCombo" <ComboBox x:Name="StartMenuScopeCombo"
@@ -392,7 +392,7 @@
IsChecked="True" IsChecked="True"
FontSize="12" FontSize="12"
Margin="0,10,0,0" Margin="0,10,0,0"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
Opacity="0.85"/> Opacity="0.85"/>
</Grid> </Grid>

View File

@@ -3,9 +3,9 @@
<!-- Primary Button Style --> <!-- Primary Button Style -->
<Style x:Key="PrimaryButtonStyle" TargetType="Button"> <Style x:Key="PrimaryButtonStyle" TargetType="Button">
<Setter Property="Background" Value="{DynamicResource ButtonBg}"/> <Setter Property="Background" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="Foreground" Value="white"/> <Setter Property="Foreground" Value="white"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBg}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="0"/> <Setter Property="Padding" Value="0"/>
<Setter Property="FontSize" Value="14"/> <Setter Property="FontSize" Value="14"/>
@@ -25,25 +25,25 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsEnabled" Value="False"> <Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="{DynamicResource ButtonDisabled}"/> <Setter Property="Background" Value="{DynamicResource ButtonDisabledColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonDisabled}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonDisabledColor}"/>
<Setter Property="Foreground" Value="{DynamicResource ButtonTextDisabled}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonTextDisabledColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource ButtonHover}"/> <Setter Property="Background" Value="{DynamicResource ButtonHoverColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonHover}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource ButtonPressed}"/> <Setter Property="Background" Value="{DynamicResource ButtonPressedColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonPressed}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonPressedColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
<!-- Secondary Button Style --> <!-- Secondary Button Style -->
<Style x:Key="SecondaryButtonStyle" TargetType="Button"> <Style x:Key="SecondaryButtonStyle" TargetType="Button">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonBg}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonBgColor}"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="Padding" Value="0"/> <Setter Property="Padding" Value="0"/>
@@ -64,16 +64,16 @@
</Setter> </Setter>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsEnabled" Value="False"> <Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonDisabled}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonDisabledColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="Foreground" Value="{DynamicResource SecondaryButtonTextDisabled}"/> <Setter Property="Foreground" Value="{DynamicResource SecondaryButtonTextDisabledColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonHover}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonHoverColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsPressed" Value="True"> <Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource SecondaryButtonPressed}"/> <Setter Property="Background" Value="{DynamicResource SecondaryButtonPressedColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource ButtonBorderColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
@@ -81,11 +81,11 @@
<!-- Hyperlink Style --> <!-- Hyperlink Style -->
<Style x:Key="HyperlinkStyle" TargetType="TextBlock"> <Style x:Key="HyperlinkStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource ButtonBg}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="Cursor" Value="Hand"/> <Setter Property="Cursor" Value="Hand"/>
<Style.Triggers> <Style.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="{DynamicResource ButtonHover}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonHoverColor}"/>
</Trigger> </Trigger>
</Style.Triggers> </Style.Triggers>
</Style> </Style>
@@ -93,7 +93,7 @@
<!-- ProgressBar Style --> <!-- ProgressBar Style -->
<Style x:Key="ApplyProgressBarStyle" TargetType="ProgressBar"> <Style x:Key="ApplyProgressBarStyle" TargetType="ProgressBar">
<Setter Property="Background" Value="{DynamicResource ButtonBorderColor}"/> <Setter Property="Background" Value="{DynamicResource ButtonBorderColor}"/>
<Setter Property="Foreground" Value="{DynamicResource ButtonBg}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="Height" Value="6"/> <Setter Property="Height" Value="6"/>
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
@@ -109,9 +109,9 @@
<!-- Modal Title Style --> <!-- Modal Title Style -->
<Style x:Key="ModalTitleStyle" TargetType="TextBlock"> <Style x:Key="ModalTitleStyle" TargetType="TextBlock">
<Setter Property="FontWeight" Value="Bold"/> <Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="FontSize" Value="20"/> <Setter Property="FontSize" Value="20"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="HorizontalAlignment" Value="Center"/> <Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="Margin" Value="0,0,0,8"/> <Setter Property="Margin" Value="0,0,0,8"/>
</Style> </Style>
@@ -119,7 +119,7 @@
<!-- Modal Subtext Style --> <!-- Modal Subtext Style -->
<Style x:Key="ModalSubtextStyle" TargetType="TextBlock"> <Style x:Key="ModalSubtextStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="13"/> <Setter Property="FontSize" Value="13"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Opacity" Value="0.8"/> <Setter Property="Opacity" Value="0.8"/>
<Setter Property="HorizontalAlignment" Value="Center"/> <Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="TextAlignment" Value="Center"/> <Setter Property="TextAlignment" Value="Center"/>
@@ -127,7 +127,7 @@
<!-- Shared modal window shell styles --> <!-- Shared modal window shell styles -->
<Style x:Key="ModalCardBorderStyle" TargetType="Border"> <Style x:Key="ModalCardBorderStyle" TargetType="Border">
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="CornerRadius" Value="8"/> <Setter Property="CornerRadius" Value="8"/>
<Setter Property="Background" Value="{DynamicResource CardBgColor}"/> <Setter Property="Background" Value="{DynamicResource CardBgColor}"/>
@@ -149,16 +149,16 @@
</Style> </Style>
<Style x:Key="ModalTitleTextStyle" TargetType="TextBlock"> <Style x:Key="ModalTitleTextStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="FontSize" Value="16"/> <Setter Property="FontSize" Value="20"/>
<Setter Property="FontWeight" Value="SemiBold"/> <Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="VerticalAlignment" Value="Center"/> <Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Margin" Value="20,0,0,0"/> <Setter Property="Margin" Value="16,0,0,0"/>
</Style> </Style>
<Style x:Key="ModalFooterBorderStyle" TargetType="Border"> <Style x:Key="ModalFooterBorderStyle" TargetType="Border">
<Setter Property="Background" Value="{DynamicResource BgColor}"/> <Setter Property="Background" Value="{DynamicResource AppBgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="BorderThickness" Value="0,1,0,0"/> <Setter Property="BorderThickness" Value="0,1,0,0"/>
<Setter Property="Padding" Value="16,12"/> <Setter Property="Padding" Value="16,12"/>
<Setter Property="CornerRadius" Value="0,0,8,8"/> <Setter Property="CornerRadius" Value="0,0,8,8"/>
@@ -195,20 +195,20 @@
<Style x:Key="ModalInfoLabelTextStyle" TargetType="TextBlock"> <Style x:Key="ModalInfoLabelTextStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="13"/> <Setter Property="FontSize" Value="13"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="FontWeight" Value="SemiBold"/> <Setter Property="FontWeight" Value="SemiBold"/>
<Setter Property="Margin" Value="0,0,16,8"/> <Setter Property="Margin" Value="0,0,16,8"/>
</Style> </Style>
<Style x:Key="ModalInfoValueTextStyle" TargetType="TextBlock"> <Style x:Key="ModalInfoValueTextStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="13"/> <Setter Property="FontSize" Value="13"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Margin" Value="0,0,0,8"/> <Setter Property="Margin" Value="0,0,0,8"/>
</Style> </Style>
<!-- Shared ComboBox style used across windows --> <!-- Shared ComboBox style used across windows -->
<Style TargetType="ComboBoxItem"> <Style TargetType="ComboBoxItem">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="Padding" Value="10,8"/> <Setter Property="Padding" Value="10,8"/>
<Setter Property="Margin" Value="0,0,0,4"/> <Setter Property="Margin" Value="0,0,0,4"/>
@@ -223,14 +223,15 @@
Padding="{TemplateBinding Padding}" Padding="{TemplateBinding Padding}"
CornerRadius="4"> CornerRadius="4">
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Margin="0,0,0,1"/>
</Border> </Border>
<Border x:Name="AccentLine" <Border x:Name="AccentLine"
Width="3" Width="3"
Height="15" Height="15"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Stretch" VerticalAlignment="Stretch"
Background="{DynamicResource ButtonBg}" Background="{DynamicResource ButtonBgColor}"
CornerRadius="1.5" CornerRadius="1.5"
Margin="0" Margin="0"
Visibility="Collapsed"/> Visibility="Collapsed"/>
@@ -238,10 +239,10 @@
<ControlTemplate.Triggers> <ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True"> <Trigger Property="IsSelected" Value="True">
<Setter TargetName="AccentLine" Property="Visibility" Value="Visible"/> <Setter TargetName="AccentLine" Property="Visibility" Value="Visible"/>
<Setter TargetName="ItemBorder" Property="Background" Value="{DynamicResource ComboItemSelectedColor}"/> <Setter TargetName="ItemBorder" Property="Background" Value="{DynamicResource ComboBoxItemSelectedColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsHighlighted" Value="True"> <Trigger Property="IsHighlighted" Value="True">
<Setter TargetName="ItemBorder" Property="Background" Value="{DynamicResource ComboItemHoverColor}"/> <Setter TargetName="ItemBorder" Property="Background" Value="{DynamicResource ComboBoxItemHoverColor}"/>
</Trigger> </Trigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
</ControlTemplate> </ControlTemplate>
@@ -250,17 +251,18 @@
</Style> </Style>
<Style TargetType="ComboBox"> <Style TargetType="ComboBox">
<Setter Property="Background" Value="{DynamicResource ComboBgColor}"/> <Setter Property="Background" Value="{DynamicResource ComboBoxBgColor}"/>
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="BorderThickness" Value="1"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Margin" Value="0,4,0,12"/> <Setter Property="Margin" Value="0,4,0,12"/>
<Setter Property="MinHeight" Value="33"/> <Setter Property="MinHeight" Value="33"/>
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="ComboBox"> <ControlTemplate TargetType="ComboBox">
<Grid> <Grid>
<Border x:Name="ClosedAccentLine" Width="3" Height="18" HorizontalAlignment="Left" VerticalAlignment="Stretch" Background="{DynamicResource ButtonBg}" CornerRadius="1.5" Panel.ZIndex="2"/> <Border x:Name="ClosedAccentLine" Width="3" Height="18" HorizontalAlignment="Left" VerticalAlignment="Stretch" Background="{DynamicResource ButtonBgColor}" CornerRadius="1.5" Panel.ZIndex="2"/>
<ToggleButton x:Name="ToggleButton" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Focusable="False" IsChecked="{Binding Path=IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" ClickMode="Press"> <ToggleButton x:Name="ToggleButton" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Focusable="False" IsChecked="{Binding Path=IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" ClickMode="Press">
<ToggleButton.Style> <ToggleButton.Style>
<Style TargetType="ToggleButton"> <Style TargetType="ToggleButton">
@@ -275,7 +277,7 @@
HorizontalAlignment="Right" HorizontalAlignment="Right"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,8,0" Margin="0,0,8,0"
Foreground="{DynamicResource FgColor}" Foreground="{DynamicResource AppFgColor}"
RenderTransformOrigin="0.5,0.5"> RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform> <TextBlock.RenderTransform>
<RotateTransform Angle="0"/> <RotateTransform Angle="0"/>
@@ -284,7 +286,7 @@
</Border> </Border>
<ControlTemplate.Triggers> <ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True"> <Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="Border" Property="Background" Value="{DynamicResource ComboHoverColor}"/> <Setter TargetName="Border" Property="Background" Value="{DynamicResource ComboBoxHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsChecked" Value="True"> <Trigger Property="IsChecked" Value="True">
<Trigger.EnterActions> <Trigger.EnterActions>
@@ -319,7 +321,7 @@
</ToggleButton> </ToggleButton>
<ContentPresenter x:Name="ContentPresenter" <ContentPresenter x:Name="ContentPresenter"
IsHitTestVisible="False" IsHitTestVisible="False"
Margin="10,0,20,0" Margin="10,0,20,2"
HorizontalAlignment="Left" HorizontalAlignment="Left"
VerticalAlignment="Center" VerticalAlignment="Center"
Content="{TemplateBinding SelectionBoxItem}" Content="{TemplateBinding SelectionBoxItem}"
@@ -337,8 +339,8 @@
HorizontalOffset="0"> HorizontalOffset="0">
<Grid x:Name="DropDown" MinWidth="{TemplateBinding ActualWidth}" MaxHeight="{TemplateBinding MaxDropDownHeight}" Margin="12"> <Grid x:Name="DropDown" MinWidth="{TemplateBinding ActualWidth}" MaxHeight="{TemplateBinding MaxDropDownHeight}" Margin="12">
<Border x:Name="DropDownBorder" <Border x:Name="DropDownBorder"
Background="{DynamicResource ComboItemBgColor}" Background="{DynamicResource ComboBoxItemBgColor}"
BorderBrush="{DynamicResource BorderColor}" BorderBrush="{DynamicResource AppBorderColor}"
BorderThickness="1" BorderThickness="1"
CornerRadius="4" CornerRadius="4"
Padding="5,4,5,1"> Padding="5,4,5,1">
@@ -363,9 +365,9 @@
</Trigger> </Trigger>
<Trigger Property="IsEnabled" Value="False"> <Trigger Property="IsEnabled" Value="False">
<Setter TargetName="ClosedAccentLine" Property="Visibility" Value="Collapsed"/> <Setter TargetName="ClosedAccentLine" Property="Visibility" Value="Collapsed"/>
<Setter Property="Background" Value="{DynamicResource ButtonDisabled}"/> <Setter Property="Background" Value="{DynamicResource ButtonDisabledColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="Foreground" Value="{DynamicResource ButtonTextDisabled}"/> <Setter Property="Foreground" Value="{DynamicResource ButtonTextDisabledColor}"/>
<Setter Property="Opacity" Value="0.6"/> <Setter Property="Opacity" Value="0.6"/>
</Trigger> </Trigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
@@ -376,8 +378,9 @@
<!-- Base CheckBox style used across windows --> <!-- Base CheckBox style used across windows -->
<Style TargetType="CheckBox"> <Style TargetType="CheckBox">
<Setter Property="Foreground" Value="{DynamicResource FgColor}"/> <Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Background" Value="Transparent"/> <Setter Property="Background" Value="Transparent"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Padding" Value="4,2"/> <Setter Property="Padding" Value="4,2"/>
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
@@ -388,16 +391,16 @@
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Border x:Name="CheckBoxBorder" Grid.Column="0" Width="18" Height="18" Background="{DynamicResource CheckBoxBgColor}" BorderBrush="{DynamicResource CheckBoxBorderColor}" BorderThickness="1" CornerRadius="4" Margin="0,0,8,0"> <Border x:Name="CheckBoxBorder" Grid.Column="0" Width="20" Height="20" Background="{DynamicResource CheckBoxBgColor}" BorderBrush="{DynamicResource CheckBoxBorderColor}" BorderThickness="1" CornerRadius="4" Margin="0,0,8,0">
<Grid> <Grid>
<TextBlock x:Name="CheckMark" Text="&#xE73E;" FontFamily="Segoe Fluent Icons" FontSize="12" Foreground="{DynamicResource ButtonBg}" HorizontalAlignment="Center" VerticalAlignment="Center" Opacity="0"> <TextBlock x:Name="CheckMark" Text="&#xE73E;" FontFamily="Segoe Fluent Icons" FontSize="13" FontWeight="SemiBold" Foreground="{DynamicResource ButtonBgColor}" HorizontalAlignment="Center" VerticalAlignment="Center" Opacity="0">
<TextBlock.Clip> <TextBlock.Clip>
<RectangleGeometry x:Name="CheckMarkClip" Rect="0,0,0,16"/> <RectangleGeometry x:Name="CheckMarkClip" Rect="0,0,0,16"/>
</TextBlock.Clip> </TextBlock.Clip>
</TextBlock> </TextBlock>
<TextBlock x:Name="IndeterminateMark" Text="&#xE738;" FontFamily="Segoe Fluent Icons" FontSize="11" Foreground="{DynamicResource ButtonBg}" HorizontalAlignment="Center" VerticalAlignment="Center" Opacity="0" Margin="1,1,0,0"> <TextBlock x:Name="IndeterminateMark" Text="&#xe9ae;" FontFamily="Segoe Fluent Icons" FontSize="13" FontWeight="Bold" Foreground="{DynamicResource ButtonBgColor}" HorizontalAlignment="Center" VerticalAlignment="Center" Opacity="0" Margin="1,0,0,1">
<TextBlock.Clip> <TextBlock.Clip>
<RectangleGeometry x:Name="IndeterminateMarkClip" Rect="0,0,0,16"/> <RectangleGeometry x:Name="IndeterminateMarkClip" Rect="0,0,0,12"/>
</TextBlock.Clip> </TextBlock.Clip>
</TextBlock> </TextBlock>
</Grid> </Grid>
@@ -410,8 +413,8 @@
<Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource CheckBoxHoverColor}"/> <Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource CheckBoxHoverColor}"/>
</Trigger> </Trigger>
<Trigger Property="IsChecked" Value="True"> <Trigger Property="IsChecked" Value="True">
<Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonBg}"/> <Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonBgColor}"/>
<Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonBg}"/> <Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonBgColor}"/>
<Setter TargetName="CheckMark" Property="Foreground" Value="White"/> <Setter TargetName="CheckMark" Property="Foreground" Value="White"/>
<Setter TargetName="CheckMark" Property="Opacity" Value="1"/> <Setter TargetName="CheckMark" Property="Opacity" Value="1"/>
<Setter TargetName="IndeterminateMark" Property="Opacity" Value="0"/> <Setter TargetName="IndeterminateMark" Property="Opacity" Value="0"/>
@@ -433,9 +436,8 @@
</Trigger.ExitActions> </Trigger.ExitActions>
</Trigger> </Trigger>
<Trigger Property="IsChecked" Value="{x:Null}"> <Trigger Property="IsChecked" Value="{x:Null}">
<Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonBg}"/> <Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonBgColor}"/>
<Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonBg}"/> <Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonBgColor}"/>
<Setter TargetName="CheckBoxBorder" Property="Opacity" Value="0.8"/>
<Setter TargetName="IndeterminateMark" Property="Foreground" Value="White"/> <Setter TargetName="IndeterminateMark" Property="Foreground" Value="White"/>
<Setter TargetName="IndeterminateMark" Property="Opacity" Value="1"/> <Setter TargetName="IndeterminateMark" Property="Opacity" Value="1"/>
<Setter TargetName="CheckMark" Property="Opacity" Value="0"/> <Setter TargetName="CheckMark" Property="Opacity" Value="0"/>
@@ -461,8 +463,8 @@
<Setter TargetName="IndeterminateMark" Property="Opacity" Value="0"/> <Setter TargetName="IndeterminateMark" Property="Opacity" Value="0"/>
</Trigger> </Trigger>
<Trigger Property="IsEnabled" Value="False"> <Trigger Property="IsEnabled" Value="False">
<Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonDisabled}"/> <Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonDisabledColor}"/>
<Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource BorderColor}"/> <Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource AppBorderColor}"/>
<Setter Property="Opacity" Value="0.4"/> <Setter Property="Opacity" Value="0.4"/>
</Trigger> </Trigger>
<MultiTrigger> <MultiTrigger>
@@ -470,16 +472,16 @@
<Condition Property="IsMouseOver" Value="True"/> <Condition Property="IsMouseOver" Value="True"/>
<Condition Property="IsChecked" Value="True"/> <Condition Property="IsChecked" Value="True"/>
</MultiTrigger.Conditions> </MultiTrigger.Conditions>
<Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonHover}"/> <Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonHoverColor}"/>
<Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonHover}"/> <Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonHoverColor}"/>
</MultiTrigger> </MultiTrigger>
<MultiTrigger> <MultiTrigger>
<MultiTrigger.Conditions> <MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True"/> <Condition Property="IsMouseOver" Value="True"/>
<Condition Property="IsChecked" Value="{x:Null}"/> <Condition Property="IsChecked" Value="{x:Null}"/>
</MultiTrigger.Conditions> </MultiTrigger.Conditions>
<Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonHover}"/> <Setter TargetName="CheckBoxBorder" Property="Background" Value="{DynamicResource ButtonHoverColor}"/>
<Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonHover}"/> <Setter TargetName="CheckBoxBorder" Property="BorderBrush" Value="{DynamicResource ButtonHoverColor}"/>
<Setter TargetName="CheckBoxBorder" Property="Opacity" Value="0.8"/> <Setter TargetName="CheckBoxBorder" Property="Opacity" Value="0.8"/>
</MultiTrigger> </MultiTrigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
@@ -543,4 +545,47 @@
</Setter> </Setter>
</Style> </Style>
<!-- TextBox outer border: side/top borders in side color, background with hover/focus states -->
<Style x:Key="TextBoxBorderStyle" TargetType="Border">
<Setter Property="Background" Value="{DynamicResource TextBoxBgColor}"/>
<Setter Property="BorderBrush" Value="{DynamicResource TextBoxSideBorderColor}"/>
<Setter Property="BorderThickness" Value="1,1,1,0"/>
<Setter Property="CornerRadius" Value="4"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource TextBoxHoverColor}"/>
</Trigger>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter Property="Background" Value="{DynamicResource TextBoxFocusColor}"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- TextBox inner border: bottom accent line that thickens and changes color on focus -->
<Style x:Key="TextBoxBottomBorderStyle" TargetType="Border">
<Setter Property="BorderBrush" Value="{DynamicResource TextBoxBorderColor}"/>
<Setter Property="BorderThickness" Value="0,0,0,1"/>
<Setter Property="Padding" Value="8,6"/>
<Setter Property="CornerRadius" Value="0,0,4,4"/>
<Style.Triggers>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter Property="BorderBrush" Value="{DynamicResource ButtonBgColor}"/>
<Setter Property="BorderThickness" Value="0,0,0,2"/>
<Setter Property="Padding" Value="8,6,8,5"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- TextBox input (transparent, used inside TextBoxBorderStyle) -->
<Style x:Key="TextBoxInputStyle" TargetType="TextBox">
<Setter Property="CaretBrush" Value="{DynamicResource AppFgColor}"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Foreground" Value="{DynamicResource AppFgColor}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="FontSize" Value="13"/>
<Setter Property="Margin" Value="1,0,0,1"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Padding" Value="0"/>
</Style>
</ResourceDictionary> </ResourceDictionary>

View File

@@ -1,3 +1,24 @@
<#
.SYNOPSIS
Removes one or more Windows app packages based on the target scope.
.DESCRIPTION
Iterates over the provided list of app identifiers and removes each one.
Apps are removed via WinGet (for OneDrive and Microsoft Edge) or via
Remove-AppxPackage / Remove-ProvisionedAppxPackage (for all other apps).
The target scope is determined by script-level parameters:
-Sysprep removes from the OS image for future users; -User targets a
specific user; otherwise the current user is targeted.
.PARAMETER appsList
An array of app package identifiers to remove (e.g. 'Microsoft.BingNews').
.EXAMPLE
RemoveApps @('Microsoft.BingNews', 'Microsoft.BingWeather')
.EXAMPLE
RemoveApps -appsList (GenerateAppsList)
#>
# Removes apps specified during function call based on the target scope. # Removes apps specified during function call based on the target scope.
function RemoveApps { function RemoveApps {
param ( param (
@@ -22,7 +43,7 @@ function RemoveApps {
# Update step name and sub-progress to show which app is being removed (only for bulk removal) # Update step name and sub-progress to show which app is being removed (only for bulk removal)
if ($script:ApplySubStepCallback -and $appCount -gt 1) { if ($script:ApplySubStepCallback -and $appCount -gt 1) {
& $script:ApplySubStepCallback "Removing apps ($appIndex/$appCount)" $appIndex $appCount & $script:ApplySubStepCallback "Removing apps... ($appIndex/$appCount)" $appIndex $appCount
} }
Write-Host "Removing $app" Write-Host "Removing $app"

View File

@@ -148,7 +148,7 @@ function Build-DynamicTweaks {
$helpBtn = New-Object System.Windows.Controls.Button $helpBtn = New-Object System.Windows.Controls.Button
$helpBtn.Content = $helpIcon $helpBtn.Content = $helpIcon
$helpBtn.ToolTip = "Open wiki for more info on '$categoryName' tweaks" $helpBtn.ToolTip = "Open the wiki for more info on '$categoryName' tweaks"
$helpBtn.Tag = (GetWikiUrlForCategory -category $categoryName) $helpBtn.Tag = (GetWikiUrlForCategory -category $categoryName)
$helpBtn.Style = $Window.Resources['CategoryHelpLinkButtonStyle'] $helpBtn.Style = $Window.Resources['CategoryHelpLinkButtonStyle']
$helpBtn.Add_Click({ $helpBtn.Add_Click({

View File

@@ -1,3 +1,26 @@
<#
.SYNOPSIS
Applies light or dark theme colors to a WPF window's resource dictionary.
.DESCRIPTION
Iterates over a predefined set of theme color categories and
populates the window's Resources with SolidColorBrush entries keyed by
category and resource name (e.g. "AppAccentColor"). Additionally loads and
merges shared XAML styles from the script's SharedStylesSchema path if
available.
.PARAMETER window
The WPF Window whose resource dictionary will be populated.
.PARAMETER usesDarkMode
When $true, dark theme colors are applied; when $false, light theme colors.
.EXAMPLE
SetWindowThemeResources -window $MainWindow -usesDarkMode $true
.EXAMPLE
SetWindowThemeResources -window $Dialog -usesDarkMode $false
#>
# Sets resource colors for a WPF window based on dark mode preference # Sets resource colors for a WPF window based on dark mode preference
function SetWindowThemeResources { function SetWindowThemeResources {
param ( param (
@@ -5,80 +28,99 @@ function SetWindowThemeResources {
[bool]$usesDarkMode [bool]$usesDarkMode
) )
if ($usesDarkMode) { $ThemeColor = @{
$window.Resources.Add("BgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#202020"))) App = @{
$window.Resources.Add("FgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#FFFFFF"))) AccentColor = @{ Light = '#ffae00'; Dark = '#ffd700' }
$window.Resources.Add("CardBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#2b2b2b"))) BorderColor = @{ Light = '#ededed'; Dark = '#404040' }
$window.Resources.Add("BorderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#404040"))) BgColor = @{ Light = '#f3f3f3'; Dark = '#202020' }
$window.Resources.Add("ButtonBorderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#404040"))) FgColor = @{ Light = '#000000'; Dark = '#ffffff' }
$window.Resources.Add("CheckBoxBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#272727"))) IdColor = @{ Light = '#666666'; Dark = '#afafaf' }
$window.Resources.Add("CheckBoxBorderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#808080"))) }
$window.Resources.Add("CheckBoxHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#343434")))
$window.Resources.Add("ComboBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#373737"))) Card = @{
$window.Resources.Add("ComboHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#434343"))) BgColor = @{ Light = '#fbfbfb'; Dark = '#2b2b2b' }
$window.Resources.Add("ComboItemBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#2c2c2c"))) }
$window.Resources.Add("ComboItemHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#383838")))
$window.Resources.Add("ComboItemSelectedColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#343434"))) Button = @{
$window.Resources.Add("AccentColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#FFD700"))) BorderColor = @{ Light = '#d3d3d3'; Dark = '#404040' }
$window.Resources.Add("ButtonDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#434343"))) BgColor = @{ Light = '#0067c0'; Dark = '#0067c0' }
$window.Resources.Add("ButtonTextDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#989898"))) DisabledColor = @{ Light = '#bfbfbf'; Dark = '#434343' }
$window.Resources.Add("SecondaryButtonBg", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#393939"))) HoverColor = @{ Light = '#1975c5'; Dark = '#1975c5' }
$window.Resources.Add("SecondaryButtonHover", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#2a2a2a"))) PressedColor = @{ Light = '#3183ca'; Dark = '#3183ca' }
$window.Resources.Add("SecondaryButtonPressed", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#1e1e1e"))) TextDisabledColor = @{ Light = '#ffffff'; Dark = '#989898' }
$window.Resources.Add("SecondaryButtonDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#3b3b3b"))) }
$window.Resources.Add("SecondaryButtonTextDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#787878")))
$window.Resources.Add("InputFocusColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#1f1f1f"))) SecondaryButton = @{
$window.Resources.Add("ScrollBarThumbColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#3d3d3d"))) BgColor = @{ Light = '#fbfbfb'; Dark = '#393939' }
$window.Resources.Add("ScrollBarThumbHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#4b4b4b"))) DisabledColor = @{ Light = '#f7f7f7'; Dark = '#3b3b3b' }
$window.Resources.Add("TitlebarButtonHover", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#2d2d2d"))) HoverColor = @{ Light = '#f6f6f6'; Dark = '#2a2a2a' }
$window.Resources.Add("TitlebarButtonPressed", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#292929"))) PressedColor = @{ Light = '#f0f0f0'; Dark = '#1e1e1e' }
$window.Resources.Add("AppIdColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#afafaf"))) TextDisabledColor = @{ Light = '#b7b7b7'; Dark = '#787878' }
$window.Resources.Add("SearchHighlightColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#4A4A2A"))) }
$window.Resources.Add("SearchHighlightActiveColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#8A7000")))
$window.Resources.Add("TableHeaderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#333333"))) CheckBox = @{
} BgColor = @{ Light = '#f5f5f5'; Dark = '#272727' }
else { BorderColor = @{ Light = '#898989'; Dark = '#808080' }
$window.Resources.Add("BgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f3f3f3"))) HoverColor = @{ Light = '#ececec'; Dark = '#343434' }
$window.Resources.Add("FgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#000000"))) }
$window.Resources.Add("CardBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#fbfbfb")))
$window.Resources.Add("BorderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#ededed"))) ComboBox = @{
$window.Resources.Add("ButtonBorderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#d3d3d3"))) BgColor = @{ Light = '#ffffff'; Dark = '#373737' }
$window.Resources.Add("CheckBoxBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f5f5f5"))) HoverColor = @{ Light = '#f8f8f8'; Dark = '#434343' }
$window.Resources.Add("CheckBoxBorderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#898989"))) ItemBgColor = @{ Light = '#f9f9f9'; Dark = '#2c2c2c' }
$window.Resources.Add("CheckBoxHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#ececec"))) ItemHoverColor = @{ Light = '#f0f0f0'; Dark = '#383838' }
$window.Resources.Add("ComboBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#FFFFFF"))) ItemSelectedColor = @{ Light = '#f3f3f3'; Dark = '#343434' }
$window.Resources.Add("ComboHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f8f8f8"))) }
$window.Resources.Add("ComboItemBgColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f9f9f9")))
$window.Resources.Add("ComboItemHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f0f0f0"))) TextBox = @{
$window.Resources.Add("ComboItemSelectedColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f3f3f3"))) BorderColor = @{ Light = '#bdbdbd'; Dark = '#989a9d' }
$window.Resources.Add("AccentColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#ffae00"))) BgColor = @{ Light = '#fbfbfb'; Dark = '#2d2d2d' }
$window.Resources.Add("ButtonDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#bfbfbf"))) FocusColor = @{ Light = '#ffffff'; Dark = '#1f1f1f' }
$window.Resources.Add("ButtonTextDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#ffffff"))) HoverColor = @{ Light = '#f6f6f6'; Dark = '#323232' }
$window.Resources.Add("SecondaryButtonBg", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#fbfbfb"))) SideBorderColor = @{ Light = '#ececec'; Dark = '#343434' }
$window.Resources.Add("SecondaryButtonHover", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f6f6f6"))) }
$window.Resources.Add("SecondaryButtonPressed", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f0f0f0")))
$window.Resources.Add("SecondaryButtonDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#f7f7f7"))) ScrollBar = @{
$window.Resources.Add("SecondaryButtonTextDisabled", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#b7b7b7"))) ThumbColor = @{ Light = '#b9b9b9'; Dark = '#3d3d3d' }
$window.Resources.Add("InputFocusColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#fbfbfb"))) ThumbHoverColor = @{ Light = '#8b8b8b'; Dark = '#4b4b4b' }
$window.Resources.Add("ScrollBarThumbColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#b9b9b9"))) }
$window.Resources.Add("ScrollBarThumbHoverColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#8b8b8b")))
$window.Resources.Add("TitlebarButtonHover", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#e1e1e1"))) TitleBar = @{
$window.Resources.Add("TitlebarButtonPressed", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#e6e6e6"))) ButtonHoverColor = @{ Light = '#dcdcdc'; Dark = '#353535' }
$window.Resources.Add("AppIdColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#666666"))) ButtonPressedColor = @{ Light = '#cccccc'; Dark = '#333333' }
$window.Resources.Add("SearchHighlightColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#FFF4CE"))) CloseHoverColor = @{ Light = '#e81123'; Dark = '#e81123' }
$window.Resources.Add("SearchHighlightActiveColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#FFD966"))) ClosePressedColor = @{ Light = '#f1707a'; Dark = '#f1707a' }
$window.Resources.Add("TableHeaderColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#ffffff"))) UnfocusedFgColor = @{ Light = '#868686'; Dark = '#969696' }
}
Search = @{
HighlightActiveColor = @{ Light = '#ffd966'; Dark = '#8a7000' }
HighlightColor = @{ Light = '#fff4ce'; Dark = '#4a4a2a' }
}
Table = @{
HeaderColor = @{ Light = '#ffffff'; Dark = '#303030' }
}
Icon = @{
ErrorColor = @{ Light = '#e81123'; Dark = '#e81123' }
InformationColor = @{ Light = '#0078d4'; Dark = '#0078d4' }
QuestionColor = @{ Light = '#0078d4'; Dark = '#0078d4' }
SuccessColor = @{ Light = '#107c10'; Dark = '#107c10' }
WarningColor = @{ Light = '#ffb900'; Dark = '#ffb900' }
}
} }
$window.Resources.Add("ButtonBg", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#0067c0"))) $Theme = if ($usesDarkMode) { 'Dark' } else { 'Light' }
$window.Resources.Add("ButtonHover", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#1E88E5")))
$window.Resources.Add("ButtonPressed", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#3284cc"))) foreach ($Group in $ThemeColor.GetEnumerator()) {
$window.Resources.Add("CloseHover", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#c42b1c"))) foreach ($Resource in $Group.Value.GetEnumerator()) {
$window.Resources.Add("InformationIconColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#0078D4"))) $ResourceName = $Group.Key + $Resource.Key
$window.Resources.Add("SuccessIconColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#107C10"))) $window.Resources[$ResourceName] = [System.Windows.Media.SolidColorBrush]::new(
$window.Resources.Add("WarningIconColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#FFB900"))) [System.Windows.Media.ColorConverter]::ConvertFromString($Resource.Value[$Theme])
$window.Resources.Add("ErrorIconColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#E81123"))) )
$window.Resources.Add("QuestionIconColor", [System.Windows.Media.SolidColorBrush]::new([System.Windows.Media.ColorConverter]::ConvertFromString("#0078D4"))) }
}
# Load and merge shared styles # Load and merge shared styles
if ($script:SharedStylesSchema -and (Test-Path $script:SharedStylesSchema)) { if ($script:SharedStylesSchema -and (Test-Path $script:SharedStylesSchema)) {

View File

@@ -178,7 +178,7 @@ function Show-ApplyModal {
$tb = [System.Windows.Controls.TextBlock]::new() $tb = [System.Windows.Controls.TextBlock]::new()
$tb.Text = "$([char]0x2022) $featureName" $tb.Text = "$([char]0x2022) $featureName"
$tb.FontSize = 12 $tb.FontSize = 12
$tb.SetResourceReference([System.Windows.Controls.TextBlock]::ForegroundProperty, 'FgColor') $tb.SetResourceReference([System.Windows.Controls.TextBlock]::ForegroundProperty, "AppFgColor")
$tb.Opacity = 0.85 $tb.Opacity = 0.85
$tb.Margin = [System.Windows.Thickness]::new(0, 2, 0, 0) $tb.Margin = [System.Windows.Thickness]::new(0, 2, 0, 0)
$applyRebootList.Children.Add($tb) | Out-Null $applyRebootList.Children.Add($tb) | Out-Null

View File

@@ -78,7 +78,7 @@ function Show-ImportExportConfigWindow {
$cb.Margin = [System.Windows.Thickness]::new(0,0,0,4) $cb.Margin = [System.Windows.Thickness]::new(0,0,0,4)
$cb.FontSize = 14 $cb.FontSize = 14
$cb.FontWeight = [System.Windows.FontWeights]::Medium $cb.FontWeight = [System.Windows.FontWeights]::Medium
$cb.Foreground = $dlg.FindResource('FgColor') $cb.Foreground = $dlg.FindResource("AppFgColor")
if ($DisabledCategories -contains $cat) { if ($DisabledCategories -contains $cat) {
$cb.IsChecked = $false $cb.IsChecked = $false
$cb.IsEnabled = $false $cb.IsEnabled = $false
@@ -93,9 +93,9 @@ function Show-ImportExportConfigWindow {
$detailsText = New-Object System.Windows.Controls.TextBlock $detailsText = New-Object System.Windows.Controls.TextBlock
$detailsText.Text = $CategoryDetails[$cat] $detailsText.Text = $CategoryDetails[$cat]
$detailsText.FontSize = 12 $detailsText.FontSize = 12
$detailsText.Foreground = $dlg.FindResource('FgColor') $detailsText.Foreground = $dlg.FindResource("AppFgColor")
$detailsText.Margin = [System.Windows.Thickness]::new(30,0,0,0) $detailsText.Margin = [System.Windows.Thickness]::new(32,0,0,0)
$detailsText.Opacity = 0.75 $detailsText.Opacity = if ($DisabledCategories -contains $cat) { 0.45 } else { 0.75 }
$detailsText.TextWrapping = [System.Windows.TextWrapping]::Wrap $detailsText.TextWrapping = [System.Windows.TextWrapping]::Wrap
$container.Children.Add($detailsText) | Out-Null $container.Children.Add($detailsText) | Out-Null
} }
@@ -286,11 +286,17 @@ function Build-CategoryDetails {
$details = @{} $details = @{}
if ($AppCount -gt 0) { if ($AppCount -gt 0) {
$details['Applications'] = "$AppCount app$(if ($AppCount -ne 1) { 's' })" $details['Applications'] = "$AppCount app$(if ($AppCount -ne 1) { 's' }) selected"
}
else {
$details['Applications'] = 'No apps selected'
} }
if ($TweakCount -gt 0) { if ($TweakCount -gt 0) {
$details['System Tweaks'] = "$TweakCount tweak$(if ($TweakCount -ne 1) { 's' })" $details['System Tweaks'] = "$TweakCount tweak$(if ($TweakCount -ne 1) { 's' }) selected"
}
else {
$details['System Tweaks'] = 'No tweaks selected'
} }
if ($DeploymentSettings) { if ($DeploymentSettings) {

View File

@@ -87,27 +87,27 @@ function Show-MessageBox {
switch ($Icon) { switch ($Icon) {
'Information' { 'Information' {
$iconText.Text = [char]0xE946 $iconText.Text = [char]0xE946
$iconText.Foreground = $msgWindow.FindResource('InformationIconColor') $iconText.Foreground = $msgWindow.FindResource('IconInformationColor')
$iconText.Visibility = 'Visible' $iconText.Visibility = 'Visible'
} }
'Success' { 'Success' {
$iconText.Text = [char]0xE73E $iconText.Text = [char]0xE73E
$iconText.Foreground = $msgWindow.FindResource('SuccessIconColor') $iconText.Foreground = $msgWindow.FindResource('IconSuccessColor')
$iconText.Visibility = 'Visible' $iconText.Visibility = 'Visible'
} }
'Warning' { 'Warning' {
$iconText.Text = [char]0xE7BA $iconText.Text = [char]0xE7BA
$iconText.Foreground = $msgWindow.FindResource('WarningIconColor') $iconText.Foreground = $msgWindow.FindResource('IconWarningColor')
$iconText.Visibility = 'Visible' $iconText.Visibility = 'Visible'
} }
'Error' { 'Error' {
$iconText.Text = [char]0xEA39 $iconText.Text = [char]0xEA39
$iconText.Foreground = $msgWindow.FindResource('ErrorIconColor') $iconText.Foreground = $msgWindow.FindResource('IconErrorColor')
$iconText.Visibility = 'Visible' $iconText.Visibility = 'Visible'
} }
'Question' { 'Question' {
$iconText.Text = [char]0xE897 $iconText.Text = [char]0xE897
$iconText.Foreground = $msgWindow.FindResource('QuestionIconColor') $iconText.Foreground = $msgWindow.FindResource('IconQuestionColor')
$iconText.Visibility = 'Visible' $iconText.Visibility = 'Visible'
} }
default { default {
@@ -121,6 +121,8 @@ function Show-MessageBox {
$button1.Content = 'OK' $button1.Content = 'OK'
$button1.Add_Click({ $msgWindow.Tag = 'OK'; $msgWindow.Close() }) $button1.Add_Click({ $msgWindow.Tag = 'OK'; $msgWindow.Close() })
$button2.Visibility = 'Collapsed' $button2.Visibility = 'Collapsed'
# Right-align sole button by moving it to column 1
[System.Windows.Controls.Grid]::SetColumn($button1, 1)
} }
'OKCancel' { 'OKCancel' {
$button1.Content = 'OK' $button1.Content = 'OK'

View File

@@ -156,7 +156,7 @@ $script:RegistryBackupsPath = Join-Path $PSScriptRoot 'Backups'
$script:AssetsPath = Join-Path $PSScriptRoot 'Assets' $script:AssetsPath = Join-Path $PSScriptRoot 'Assets'
$script:AppSelectionSchema = Join-Path $schemasPath 'AppSelectionWindow.xaml' $script:AppSelectionSchema = Join-Path $schemasPath 'AppSelectionWindow.xaml'
$script:MainWindowSchema = Join-Path $schemasPath 'MainWindow.xaml' $script:MainWindowSchema = Join-Path $schemasPath 'MainWindow.xaml'
$script:MessageBoxSchema = Join-Path $schemasPath 'MessageBoxWindow.xaml' $script:MessageBoxSchema = Join-Path $schemasPath 'MessageBox.xaml'
$script:AboutWindowSchema = Join-Path $schemasPath 'AboutWindow.xaml' $script:AboutWindowSchema = Join-Path $schemasPath 'AboutWindow.xaml'
$script:ApplyChangesWindowSchema = Join-Path $schemasPath 'ApplyChangesWindow.xaml' $script:ApplyChangesWindowSchema = Join-Path $schemasPath 'ApplyChangesWindow.xaml'
$script:SharedStylesSchema = Join-Path $schemasPath 'SharedStyles.xaml' $script:SharedStylesSchema = Join-Path $schemasPath 'SharedStyles.xaml'
@@ -209,7 +209,8 @@ Write-Host " " -NoNewline; Write-Host " (" -ForegroundColor
Write-Host " " -NoNewline; Write-Host " ( " -ForegroundColor DarkYellow -NoNewline; Write-Host "'" -ForegroundColor Red -NoNewline; Write-Host " ) " -ForegroundColor DarkYellow -NoNewline; Write-Host "*" -ForegroundColor Yellow Write-Host " " -NoNewline; Write-Host " ( " -ForegroundColor DarkYellow -NoNewline; Write-Host "'" -ForegroundColor Red -NoNewline; Write-Host " ) " -ForegroundColor DarkYellow -NoNewline; Write-Host "*" -ForegroundColor Yellow
Write-Host "" Write-Host ""
Write-Host " Win11Debloat is launching..." -ForegroundColor White Write-Host " Win11Debloat is launching..." -ForegroundColor White
Write-Host " Leave this window open" -ForegroundColor DarkGray Write-Host " Keep this window open" -ForegroundColor DarkGray
Write-Host ""
Write-Host "" Write-Host ""
# Log script output to 'Win11Debloat.log' at the specified path # Log script output to 'Win11Debloat.log' at the specified path