summaryrefslogtreecommitdiffstats
path: root/win/CS/HandBrakeWPF
diff options
context:
space:
mode:
Diffstat (limited to 'win/CS/HandBrakeWPF')
-rw-r--r--win/CS/HandBrakeWPF/App.xaml.cs11
-rw-r--r--win/CS/HandBrakeWPF/HandBrakeWPF.csproj8
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.Designer.cs9
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.resx3
-rw-r--r--win/CS/HandBrakeWPF/Themes/Controls/ComboBoxDark.xaml372
-rw-r--r--win/CS/HandBrakeWPF/Themes/Dark.xaml101
-rw-r--r--win/CS/HandBrakeWPF/UserSettingConstants.cs1
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs43
-rw-r--r--win/CS/HandBrakeWPF/Views/AudioView.xaml11
-rw-r--r--win/CS/HandBrakeWPF/Views/ChaptersView.xaml5
-rw-r--r--win/CS/HandBrakeWPF/Views/OptionsView.xaml3
-rw-r--r--win/CS/HandBrakeWPF/Views/SubtitlesView.xaml16
-rw-r--r--win/CS/HandBrakeWPF/defaultsettings.xml8
13 files changed, 552 insertions, 39 deletions
diff --git a/win/CS/HandBrakeWPF/App.xaml.cs b/win/CS/HandBrakeWPF/App.xaml.cs
index ce31b066d..a091dfaf9 100644
--- a/win/CS/HandBrakeWPF/App.xaml.cs
+++ b/win/CS/HandBrakeWPF/App.xaml.cs
@@ -108,8 +108,7 @@ namespace HandBrakeWPF
}
// Setup the UI Language
-
- IUserSettingService userSettingService = IoC.Get<IUserSettingService>();
+ IUserSettingService userSettingService = IoC.Get<IUserSettingService>();
string culture = userSettingService.GetUserSetting<string>(UserSettingConstants.UiLanguage);
if (!string.IsNullOrEmpty(culture))
{
@@ -122,6 +121,14 @@ namespace HandBrakeWPF
}
}
+ bool useDarkTheme = userSettingService.GetUserSetting<bool>(UserSettingConstants.UseDarkTheme);
+ if (useDarkTheme)
+ {
+ ResourceDictionary darkTheme = new ResourceDictionary();
+ darkTheme.Source = new Uri("Themes/Dark.xaml", UriKind.Relative);
+ Application.Current.Resources.MergedDictionaries.Add(darkTheme);
+ }
+
// NO-Hardware Mode
bool noHardware = e.Args.Any(f => f.Equals("--no-hardware")) || (Portable.IsPortable() && !Portable.IsHardwareEnabled());
diff --git a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
index 1c1fbc871..fcd89d65b 100644
--- a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
+++ b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
@@ -502,6 +502,14 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
+ <Page Include="Themes\Controls\ComboBoxDark.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
+ <Page Include="Themes\Dark.xaml">
+ <SubType>Designer</SubType>
+ <Generator>MSBuild:Compile</Generator>
+ </Page>
<Page Include="Themes\Generic.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
index 8a9b7e42b..353beb922 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
+++ b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
@@ -2633,6 +2633,15 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Use the Dark Theme. (Requires Restart) (THIS IS AN EARLY PREVIEW. IT IS NOT YET COMPLETE!).
+ /// </summary>
+ public static string Options_DarkTheme {
+ get {
+ return ResourceManager.GetString("Options_DarkTheme", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Decoding.
/// </summary>
public static string Options_Decoding {
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.resx b/win/CS/HandBrakeWPF/Properties/Resources.resx
index 05ca13d66..37704b92b 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.resx
+++ b/win/CS/HandBrakeWPF/Properties/Resources.resx
@@ -2014,4 +2014,7 @@ Where supported, any user presets will have been imported.</value>
<data name="QueueView_ExportCLI" xml:space="preserve">
<value>Export Queue (CLI Only)</value>
</data>
+ <data name="Options_DarkTheme" xml:space="preserve">
+ <value>Use the Dark Theme. (Requires Restart) (THIS IS AN EARLY PREVIEW. IT IS NOT YET COMPLETE!)</value>
+ </data>
</root> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Themes/Controls/ComboBoxDark.xaml b/win/CS/HandBrakeWPF/Themes/Controls/ComboBoxDark.xaml
new file mode 100644
index 000000000..5e3431a77
--- /dev/null
+++ b/win/CS/HandBrakeWPF/Themes/Controls/ComboBoxDark.xaml
@@ -0,0 +1,372 @@
+<ResourceDictionary
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero">
+
+ <SolidColorBrush x:Key="ComboBox.Static.Background" Color="#414141" />
+ <SolidColorBrush x:Key="ComboBox.Static.Border" Color="#606060" />
+ <SolidColorBrush x:Key="ComboBox.Static.Editable.Background" Color="Black" />
+ <SolidColorBrush x:Key="ComboBox.Static.Editable.Border" Color="#5D5E60" />
+ <SolidColorBrush x:Key="ComboBox.Static.Editable.Button.Background" Color="Transparent" />
+ <SolidColorBrush x:Key="ComboBox.Static.Editable.Button.Border" Color="Transparent" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Glyph" Color="White" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Background" Color="#43474C" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Border" Color="#7EB4EA" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Editable.Background" Color="Black" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Editable.Border" Color="#7EB4EA" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Editable.Button.Background" Color="#1D5791" />
+ <SolidColorBrush x:Key="ComboBox.MouseOver.Editable.Button.Border" Color="#4B77A3" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Glyph" Color="White" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Background" Color="#2164A8" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Border" Color="#569DE5" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Editable.Background" Color="Black" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Editable.Border" Color="#569DE5" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Editable.Button.Background" Color="#2164A8" />
+ <SolidColorBrush x:Key="ComboBox.Pressed.Editable.Button.Border" Color="#569DE5" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Glyph" Color="#BFBFBF" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Background" Color="#282828" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Border" Color="#A8A8A8" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Editable.Background" Color="Black" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Editable.Border" Color="#A8A8A8" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Editable.Button.Background" Color="Transparent" />
+ <SolidColorBrush x:Key="ComboBox.Disabled.Editable.Button.Border" Color="Transparent" />
+ <SolidColorBrush x:Key="ComboBox.Static.Glyph" Color="#B7B7B7" />
+
+ <Style x:Key="ComboBoxToggleButton2" TargetType="{x:Type ToggleButton}">
+ <Setter Property="OverridesDefaultStyle" Value="true" />
+ <Setter Property="IsTabStop" Value="false" />
+ <Setter Property="Focusable" Value="false" />
+ <Setter Property="ClickMode" Value="Press" />
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ToggleButton}">
+ <Border
+ x:Name="templateRoot"
+ Background="{DynamicResource ComboBox.Static.Background}"
+ BorderBrush="{DynamicResource ComboBox.Static.Border}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ SnapsToDevicePixels="true">
+ <Border
+ x:Name="splitBorder"
+ Width="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"
+ Margin="0"
+ HorizontalAlignment="Right"
+ BorderBrush="Transparent"
+ BorderThickness="1"
+ SnapsToDevicePixels="true">
+ <Path
+ x:Name="arrow"
+ Margin="0"
+ HorizontalAlignment="Center"
+ VerticalAlignment="Center"
+ Data="F1 M 0,0 L 2.667,2.66665 L 5.3334,0 L 5.3334,-1.78168 L 2.6667,0.88501 L0,-1.78168 L0,0 Z"
+ Fill="{DynamicResource ComboBox.Static.Glyph}" />
+ </Border>
+ </Border>
+ <ControlTemplate.Triggers>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="true" />
+ <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="false" />
+ <Condition Binding="{Binding IsPressed, RelativeSource={RelativeSource Self}}" Value="false" />
+ <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="true" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.Static.Editable.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.Static.Editable.Border}" />
+ <Setter TargetName="splitBorder" Property="Background" Value="{DynamicResource ComboBox.Static.Editable.Button.Background}" />
+ <Setter TargetName="splitBorder" Property="BorderBrush" Value="{DynamicResource ComboBox.Static.Editable.Button.Border}" />
+ </MultiDataTrigger>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter TargetName="arrow" Property="Fill" Value="{DynamicResource ComboBox.MouseOver.Glyph}" />
+ </Trigger>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true" />
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="false" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.MouseOver.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.MouseOver.Border}" />
+ </MultiDataTrigger>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="true" />
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="true" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.MouseOver.Editable.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.MouseOver.Editable.Border}" />
+ <Setter TargetName="splitBorder" Property="Background" Value="{DynamicResource ComboBox.MouseOver.Editable.Button.Background}" />
+ <Setter TargetName="splitBorder" Property="BorderBrush" Value="{DynamicResource ComboBox.MouseOver.Editable.Button.Border}" />
+ </MultiDataTrigger>
+ <Trigger Property="IsPressed" Value="true">
+ <Setter TargetName="arrow" Property="Fill" Value="{DynamicResource ComboBox.Pressed.Glyph}" />
+ </Trigger>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsPressed, RelativeSource={RelativeSource Self}}" Value="true" />
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="false" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.Pressed.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.Pressed.Border}" />
+ </MultiDataTrigger>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsPressed, RelativeSource={RelativeSource Self}}" Value="true" />
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="true" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.Pressed.Editable.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.Pressed.Editable.Border}" />
+ <Setter TargetName="splitBorder" Property="Background" Value="{DynamicResource ComboBox.Pressed.Editable.Button.Background}" />
+ <Setter TargetName="splitBorder" Property="BorderBrush" Value="{DynamicResource ComboBox.Pressed.Editable.Button.Border}" />
+ </MultiDataTrigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter TargetName="arrow" Property="Fill" Value="{DynamicResource ComboBox.Disabled.Glyph}" />
+ </Trigger>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false" />
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="false" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.Disabled.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.Disabled.Border}" />
+ </MultiDataTrigger>
+ <MultiDataTrigger>
+ <MultiDataTrigger.Conditions>
+ <Condition Binding="{Binding IsEnabled, RelativeSource={RelativeSource Self}}" Value="false" />
+ <Condition Binding="{Binding IsEditable, RelativeSource={RelativeSource AncestorType={x:Type ComboBox}}}" Value="true" />
+ </MultiDataTrigger.Conditions>
+ <Setter TargetName="templateRoot" Property="Background" Value="{DynamicResource ComboBox.Disabled.Editable.Background}" />
+ <Setter TargetName="templateRoot" Property="BorderBrush" Value="{DynamicResource ComboBox.Disabled.Editable.Border}" />
+ <Setter TargetName="splitBorder" Property="Background" Value="{DynamicResource ComboBox.Disabled.Editable.Button.Background}" />
+ <Setter TargetName="splitBorder" Property="BorderBrush" Value="{DynamicResource ComboBox.Disabled.Editable.Button.Border}" />
+ </MultiDataTrigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+ <ControlTemplate x:Key="ComboBoxTemplate" TargetType="{x:Type ComboBox}">
+ <Grid x:Name="templateRoot" SnapsToDevicePixels="true">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="*" />
+ <ColumnDefinition Width="0" MinWidth="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}" />
+ </Grid.ColumnDefinitions>
+ <Popup
+ x:Name="PART_Popup"
+ Grid.ColumnSpan="2"
+ Margin="1"
+ AllowsTransparency="true"
+ IsOpen="{Binding IsDropDownOpen,
+ Mode=TwoWay,
+ RelativeSource={RelativeSource TemplatedParent}}"
+ Placement="Bottom"
+ PopupAnimation="{DynamicResource {x:Static SystemParameters.ComboBoxPopupAnimationKey}}">
+ <themes:SystemDropShadowChrome
+ x:Name="shadow"
+ MinWidth="{Binding ActualWidth,
+ ElementName=templateRoot}"
+ MaxHeight="{TemplateBinding MaxDropDownHeight}"
+ Color="Transparent">
+ <Border
+ x:Name="dropDownBorder"
+ Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"
+ BorderBrush="{DynamicResource {x:Static SystemColors.WindowFrameBrushKey}}"
+ BorderThickness="1">
+ <ScrollViewer x:Name="DropDownScrollViewer">
+ <Grid x:Name="grid" RenderOptions.ClearTypeHint="Enabled">
+ <Canvas
+ x:Name="canvas"
+ Width="0"
+ Height="0"
+ HorizontalAlignment="Left"
+ VerticalAlignment="Top">
+ <Rectangle
+ x:Name="opaqueRect"
+ Width="{Binding ActualWidth,
+ ElementName=dropDownBorder}"
+ Height="{Binding ActualHeight,
+ ElementName=dropDownBorder}"
+ Fill="{Binding Background,
+ ElementName=dropDownBorder}" />
+ </Canvas>
+ <ItemsPresenter
+ x:Name="ItemsPresenter"
+ KeyboardNavigation.DirectionalNavigation="Contained"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ </Grid>
+ </ScrollViewer>
+ </Border>
+ </themes:SystemDropShadowChrome>
+ </Popup>
+ <ToggleButton
+ x:Name="toggleButton"
+ Grid.ColumnSpan="2"
+ Background="{TemplateBinding Background}"
+ BorderBrush="{TemplateBinding BorderBrush}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ IsChecked="{Binding IsDropDownOpen,
+ Mode=TwoWay,
+ RelativeSource={RelativeSource TemplatedParent}}"
+ Style="{StaticResource ComboBoxToggleButton2}" />
+ <ContentPresenter
+ x:Name="contentPresenter"
+ Margin="{TemplateBinding Padding}"
+ HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
+ VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
+ Content="{TemplateBinding SelectionBoxItem}"
+ ContentStringFormat="{TemplateBinding SelectionBoxItemStringFormat}"
+ ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}"
+ ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}"
+ IsHitTestVisible="false"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger SourceName="PART_Popup" Property="HasDropShadow" Value="true">
+ <Setter TargetName="shadow" Property="Margin" Value="0 0 5 5" />
+ <Setter TargetName="shadow" Property="Color" Value="#71000000" />
+ </Trigger>
+ <Trigger Property="HasItems" Value="false">
+ <Setter TargetName="dropDownBorder" Property="Height" Value="95" />
+ </Trigger>
+ <MultiTrigger>
+ <MultiTrigger.Conditions>
+ <Condition Property="IsGrouping" Value="true" />
+ <Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="false" />
+ </MultiTrigger.Conditions>
+ <Setter Property="ScrollViewer.CanContentScroll" Value="false" />
+ </MultiTrigger>
+ <Trigger SourceName="DropDownScrollViewer" Property="ScrollViewer.CanContentScroll" Value="false">
+ <Setter TargetName="opaqueRect" Property="Canvas.Top" Value="{Binding VerticalOffset, ElementName=DropDownScrollViewer}" />
+ <Setter TargetName="opaqueRect" Property="Canvas.Left" Value="{Binding HorizontalOffset, ElementName=DropDownScrollViewer}" />
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ <SolidColorBrush x:Key="TextBox.Static.Background" Color="#FFFFFFFF" />
+ <ControlTemplate x:Key="ComboBoxEditableTemplate" TargetType="{x:Type ComboBox}">
+ <Grid x:Name="templateRoot" SnapsToDevicePixels="true">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="*" />
+ <ColumnDefinition Width="0" MinWidth="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}" />
+ </Grid.ColumnDefinitions>
+ <Popup
+ x:Name="PART_Popup"
+ Grid.ColumnSpan="2"
+ AllowsTransparency="true"
+ IsOpen="{Binding IsDropDownOpen,
+ RelativeSource={RelativeSource TemplatedParent}}"
+ Placement="Bottom"
+ PopupAnimation="{DynamicResource {x:Static SystemParameters.ComboBoxPopupAnimationKey}}">
+ <themes:SystemDropShadowChrome
+ x:Name="shadow"
+ MinWidth="{Binding ActualWidth,
+ ElementName=templateRoot}"
+ MaxHeight="{TemplateBinding MaxDropDownHeight}"
+ Color="Transparent">
+ <Border
+ x:Name="dropDownBorder"
+ Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"
+ BorderBrush="{DynamicResource {x:Static SystemColors.WindowFrameBrushKey}}"
+ BorderThickness="1">
+ <ScrollViewer x:Name="DropDownScrollViewer">
+ <Grid x:Name="grid" RenderOptions.ClearTypeHint="Enabled">
+ <Canvas
+ x:Name="canvas"
+ Width="0"
+ Height="0"
+ HorizontalAlignment="Left"
+ VerticalAlignment="Top">
+ <Rectangle
+ x:Name="opaqueRect"
+ Width="{Binding ActualWidth,
+ ElementName=dropDownBorder}"
+ Height="{Binding ActualHeight,
+ ElementName=dropDownBorder}"
+ Fill="{Binding Background,
+ ElementName=dropDownBorder}" />
+ </Canvas>
+ <ItemsPresenter
+ x:Name="ItemsPresenter"
+ KeyboardNavigation.DirectionalNavigation="Contained"
+ SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
+ </Grid>
+ </ScrollViewer>
+ </Border>
+ </themes:SystemDropShadowChrome>
+ </Popup>
+ <ToggleButton
+ x:Name="toggleButton"
+ Grid.ColumnSpan="2"
+ Background="{TemplateBinding Background}"
+ BorderBrush="{TemplateBinding BorderBrush}"
+ BorderThickness="{TemplateBinding BorderThickness}"
+ IsChecked="{Binding IsDropDownOpen,
+ Mode=TwoWay,
+ RelativeSource={RelativeSource TemplatedParent}}"
+ Style="{StaticResource ComboBoxToggleButton2}" />
+ <Border
+ x:Name="border"
+ Margin="{TemplateBinding BorderThickness}"
+ Background="{StaticResource TextBox.Static.Background}">
+ <TextBox
+ x:Name="PART_EditableTextBox"
+ Margin="{TemplateBinding Padding}"
+ HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
+ VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
+ IsReadOnly="{Binding IsReadOnly,
+ RelativeSource={RelativeSource TemplatedParent}}"
+ Style="{StaticResource ComboBoxEditableTextBox}" />
+ </Border>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter TargetName="border" Property="Opacity" Value="0.56" />
+ </Trigger>
+ <Trigger Property="IsKeyboardFocusWithin" Value="true">
+ <Setter Property="Foreground" Value="Black" />
+ </Trigger>
+ <Trigger SourceName="PART_Popup" Property="HasDropShadow" Value="true">
+ <Setter TargetName="shadow" Property="Margin" Value="0 0 5 5" />
+ <Setter TargetName="shadow" Property="Color" Value="#71000000" />
+ </Trigger>
+ <Trigger Property="HasItems" Value="false">
+ <Setter TargetName="dropDownBorder" Property="Height" Value="95" />
+ </Trigger>
+ <MultiTrigger>
+ <MultiTrigger.Conditions>
+ <Condition Property="IsGrouping" Value="true" />
+ <Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="false" />
+ </MultiTrigger.Conditions>
+ <Setter Property="ScrollViewer.CanContentScroll" Value="false" />
+ </MultiTrigger>
+ <Trigger SourceName="DropDownScrollViewer" Property="ScrollViewer.CanContentScroll" Value="false">
+ <Setter TargetName="opaqueRect" Property="Canvas.Top" Value="{Binding VerticalOffset, ElementName=DropDownScrollViewer}" />
+ <Setter TargetName="opaqueRect" Property="Canvas.Left" Value="{Binding HorizontalOffset, ElementName=DropDownScrollViewer}" />
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ <Style x:Key="ComboBoxBaseStyle" TargetType="ComboBox">
+ <Setter Property="Background" Value="{StaticResource ComboBox.Static.Background}" />
+ <Setter Property="BorderBrush" Value="{StaticResource ComboBox.Static.Border}" />
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.WindowTextBrushKey}}" />
+ <Setter Property="BorderThickness" Value="1" />
+ <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
+ <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
+ <Setter Property="Padding" Value="6 3 5 3" />
+ <Setter Property="ScrollViewer.CanContentScroll" Value="true" />
+ <Setter Property="ScrollViewer.PanningMode" Value="Both" />
+ <Setter Property="Stylus.IsFlicksEnabled" Value="False" />
+ <Setter Property="Template" Value="{StaticResource ComboBoxTemplate}" />
+ <Style.Triggers>
+ <Trigger Property="IsEditable" Value="true">
+ <Setter Property="IsTabStop" Value="false" />
+ <Setter Property="Padding" Value="2" />
+ <Setter Property="Template" Value="{StaticResource ComboBoxEditableTemplate}" />
+ </Trigger>
+ </Style.Triggers>
+ </Style>
+ <Style BasedOn="{StaticResource ComboBoxBaseStyle}" TargetType="{x:Type ComboBox}" />
+ <Style
+ x:Key="ButtonStyle1"
+ BasedOn="{StaticResource ButtonBaseStyle}"
+ TargetType="{x:Type Button}" />
+
+</ResourceDictionary> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Themes/Dark.xaml b/win/CS/HandBrakeWPF/Themes/Dark.xaml
new file mode 100644
index 000000000..a68fba433
--- /dev/null
+++ b/win/CS/HandBrakeWPF/Themes/Dark.xaml
@@ -0,0 +1,101 @@
+<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
+ <!--
+ #252525 - Dark
+ #363636 - Mid
+
+ #414141 - Light
+ #606060 - Ultralight
+ -->
+
+ <SolidColorBrush x:Key="Ui.Dark" Color="#252525" />
+ <SolidColorBrush x:Key="Ui.Mid" Color="#363636" />
+
+ <SolidColorBrush x:Key="Ui.Light" Color="#464646" />
+ <SolidColorBrush x:Key="Ui.Ultralight" Color="#606060" />
+
+ <!-- General -->
+ <SolidColorBrush x:Key="{x:Static SystemColors.WindowBrushKey}" Color="#252525" />
+ <SolidColorBrush x:Key="{x:Static SystemColors.WindowTextBrushKey}" Color="White" />
+ <SolidColorBrush x:Key="{x:Static SystemColors.ControlTextBrushKey}" Color="White" />
+ <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="WhiteSmoke" />
+
+
+ <!-- Button -->
+ <Style TargetType="Button">
+ <Setter Property="Background" Value="{DynamicResource Ui.Light}" />
+ <Setter Property="Foreground" Value="White" />
+ </Style>
+
+ <!-- Listbox -->
+ <Style TargetType="ListBox">
+ <Setter Property="Background" Value="{DynamicResource Ui.Dark}" />
+ <Setter Property="Foreground" Value="White" />
+ </Style>
+
+ <!-- Toolbar -->
+ <Style TargetType="ToolBar">
+ <Setter Property="Background" Value="Black" />
+ <Setter Property="Foreground" Value="White" />
+ </Style>
+
+ <!-- Menu -->
+ <Style TargetType="Menu">
+ <Setter Property="Background" Value="{DynamicResource Ui.Mid}" />
+ <Setter Property="Foreground" Value="White" />
+ </Style>
+
+ <Style TargetType="MenuItem">
+ <Setter Property="Background" Value="{DynamicResource Ui.Mid}" />
+ <Setter Property="Foreground" Value="White" />
+ </Style>
+
+ <!-- StatusBar -->
+ <Style TargetType="StatusBar">
+ <Setter Property="Background" Value="{DynamicResource Ui.Mid}" />
+ <Setter Property="Foreground" Value="White" />
+ </Style>
+
+ <!-- Text Entry Controls -->
+ <Style TargetType="TextBox">
+ <Setter Property="Background" Value="{DynamicResource Ui.Light}" />
+ </Style>
+
+ <Style TargetType="{x:Type TextBlock}">
+ <Setter Property="Foreground" Value="White"/>
+ </Style>
+
+ <!-- Tab Control -->
+ <Style TargetType="{x:Type TabControl}">
+ <Setter Property="Background" Value="{DynamicResource Ui.Mid}"/>
+ <Setter Property="BorderThickness" Value="0"/>
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
+ </Style>
+
+ <Style TargetType="TabItem">
+ <Setter Property="Background" Value="{DynamicResource Ui.Mid}" />
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="TabItem">
+ <Grid Name="Panel">
+ <ContentPresenter x:Name="ContentSite" VerticalAlignment="Center" HorizontalAlignment="Center" ContentSource="Header" Margin="10,6"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsSelected" Value="True">
+ <Setter TargetName="Panel" Property="Background" Value="{DynamicResource Ui.Mid}" />
+ </Trigger>
+ <Trigger Property="IsSelected" Value="False">
+ <Setter TargetName="Panel" Property="Background" Value="{DynamicResource Ui.Dark}" />
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- ComboBox -->
+ <ResourceDictionary.MergedDictionaries>
+ <ResourceDictionary Source="Controls/ComboBoxDark.xaml" />
+ </ResourceDictionary.MergedDictionaries>
+
+</ResourceDictionary> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/UserSettingConstants.cs b/win/CS/HandBrakeWPF/UserSettingConstants.cs
index 014c9ef23..c12a756ce 100644
--- a/win/CS/HandBrakeWPF/UserSettingConstants.cs
+++ b/win/CS/HandBrakeWPF/UserSettingConstants.cs
@@ -72,5 +72,6 @@ namespace HandBrakeWPF
public const string AutonameFileCollisionBehaviour = "AutonameFileCollisionBehaviour";
public const string AutonameFilePrePostString = "AutonameFilePrePostString";
public const string WhenDonePerformActionImmediately = "WhenDonePerformActionImmediately";
+ public const string UseDarkTheme = "UseDarkTheme";
}
} \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs
index 06629ece2..1fcb2379e 100644
--- a/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs
@@ -111,6 +111,7 @@ namespace HandBrakeWPF.ViewModels
private string prePostFilenameText;
private bool showPrePostFilenameBox;
private bool whenDonePerformActionImmediately;
+ private bool useDarkTheme;
#endregion
@@ -521,6 +522,17 @@ namespace HandBrakeWPF.ViewModels
}
}
+ public bool UseDarkTheme
+ {
+ get => this.useDarkTheme;
+ set
+ {
+ if (value == this.useDarkTheme) return;
+ this.useDarkTheme = value;
+ this.NotifyOfPropertyChange(() => this.UseDarkTheme);
+ }
+ }
+
#endregion
#region Output Files
@@ -1469,6 +1481,7 @@ namespace HandBrakeWPF.ViewModels
this.ShowPreviewOnSummaryTab = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowPreviewOnSummaryTab);
this.ShowAddAllToQueue = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowAddAllToQueue);
this.ShowAddSelectionToQueue = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowAddSelectionToQueue);
+ this.UseDarkTheme = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.UseDarkTheme);
// #############################
// When Done
@@ -1671,7 +1684,7 @@ namespace HandBrakeWPF.ViewModels
this.userSettingService.SetUserSetting(UserSettingConstants.SendFileToArgs, this.Arguments);
this.userSettingService.SetUserSetting(UserSettingConstants.ShowStatusInTitleBar, this.ShowStatusInTitleBar);
this.userSettingService.SetUserSetting(UserSettingConstants.ShowPreviewOnSummaryTab, this.ShowPreviewOnSummaryTab);
-
+ this.userSettingService.SetUserSetting(UserSettingConstants.UseDarkTheme, this.UseDarkTheme);
this.userSettingService.SetUserSetting(UserSettingConstants.UiLanguage, this.SelectedLanguage?.Culture);
this.userSettingService.SetUserSetting(UserSettingConstants.ShowAddAllToQueue, this.ShowAddAllToQueue);
this.userSettingService.SetUserSetting(UserSettingConstants.ShowAddSelectionToQueue, this.ShowAddSelectionToQueue);
@@ -1713,21 +1726,21 @@ namespace HandBrakeWPF.ViewModels
this.userSettingService.SetUserSetting(UserSettingConstants.EnableNvencEncoder, this.EnableNvencEncoder);
/* System and Logging */
- userSettingService.SetUserSetting(UserSettingConstants.ProcessPriority, this.SelectedPriority);
- userSettingService.SetUserSetting(UserSettingConstants.PreventSleep, this.PreventSleep);
- userSettingService.SetUserSetting(UserSettingConstants.PauseOnLowDiskspace, this.PauseOnLowDiskspace);
- userSettingService.SetUserSetting(UserSettingConstants.PauseOnLowDiskspaceLevel, this.PauseOnLowDiskspaceLevel);
- userSettingService.SetUserSetting(UserSettingConstants.Verbosity, this.SelectedVerbosity);
- userSettingService.SetUserSetting(UserSettingConstants.SaveLogWithVideo, this.CopyLogToEncodeDirectory);
- userSettingService.SetUserSetting(UserSettingConstants.SaveLogToCopyDirectory, this.CopyLogToSepcficedLocation);
- userSettingService.SetUserSetting(UserSettingConstants.SaveLogCopyDirectory, this.LogDirectory);
- userSettingService.SetUserSetting(UserSettingConstants.ClearOldLogs, this.ClearOldOlgs);
+ this.userSettingService.SetUserSetting(UserSettingConstants.ProcessPriority, this.SelectedPriority);
+ this.userSettingService.SetUserSetting(UserSettingConstants.PreventSleep, this.PreventSleep);
+ this.userSettingService.SetUserSetting(UserSettingConstants.PauseOnLowDiskspace, this.PauseOnLowDiskspace);
+ this.userSettingService.SetUserSetting(UserSettingConstants.PauseOnLowDiskspaceLevel, this.PauseOnLowDiskspaceLevel);
+ this.userSettingService.SetUserSetting(UserSettingConstants.Verbosity, this.SelectedVerbosity);
+ this.userSettingService.SetUserSetting(UserSettingConstants.SaveLogWithVideo, this.CopyLogToEncodeDirectory);
+ this.userSettingService.SetUserSetting(UserSettingConstants.SaveLogToCopyDirectory, this.CopyLogToSepcficedLocation);
+ this.userSettingService.SetUserSetting(UserSettingConstants.SaveLogCopyDirectory, this.LogDirectory);
+ this.userSettingService.SetUserSetting(UserSettingConstants.ClearOldLogs, this.ClearOldOlgs);
/* Advanced */
- userSettingService.SetUserSetting(UserSettingConstants.MainWindowMinimize, this.MinimiseToTray);
- userSettingService.SetUserSetting(UserSettingConstants.ClearCompletedFromQueue, this.ClearQueueOnEncodeCompleted);
- userSettingService.SetUserSetting(UserSettingConstants.PreviewScanCount, this.SelectedPreviewCount);
- userSettingService.SetUserSetting(UserSettingConstants.X264Step, double.Parse(this.SelectedGranulairty, CultureInfo.InvariantCulture));
+ this.userSettingService.SetUserSetting(UserSettingConstants.MainWindowMinimize, this.MinimiseToTray);
+ this.userSettingService.SetUserSetting(UserSettingConstants.ClearCompletedFromQueue, this.ClearQueueOnEncodeCompleted);
+ this.userSettingService.SetUserSetting(UserSettingConstants.PreviewScanCount, this.SelectedPreviewCount);
+ this.userSettingService.SetUserSetting(UserSettingConstants.X264Step, double.Parse(this.SelectedGranulairty, CultureInfo.InvariantCulture));
int value;
if (int.TryParse(this.MinLength.ToString(CultureInfo.InvariantCulture), out value))
@@ -1735,7 +1748,7 @@ namespace HandBrakeWPF.ViewModels
this.userSettingService.SetUserSetting(UserSettingConstants.MinScanDuration, value);
}
- userSettingService.SetUserSetting(UserSettingConstants.DisableLibDvdNav, this.DisableLibdvdNav);
+ this.userSettingService.SetUserSetting(UserSettingConstants.DisableLibDvdNav, this.DisableLibdvdNav);
}
/// <summary>
diff --git a/win/CS/HandBrakeWPF/Views/AudioView.xaml b/win/CS/HandBrakeWPF/Views/AudioView.xaml
index ecb53ae4d..c51ce368b 100644
--- a/win/CS/HandBrakeWPF/Views/AudioView.xaml
+++ b/win/CS/HandBrakeWPF/Views/AudioView.xaml
@@ -143,13 +143,6 @@
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
- <!-- Marker -->
- <Image Grid.Column="0" Grid.Row="0"
- Width="20"
- Height="20"
- Margin="5,0,5,0"
- Source="Images/Movies_small.png" />
-
<!-- Settings -->
<Grid Grid.Column="1" Grid.Row="0" HorizontalAlignment="Stretch" Margin="0,5,0,5">
<Grid.ColumnDefinitions>
@@ -248,7 +241,7 @@
<!-- Hidden Row -->
<Grid Grid.Column="1" Grid.Row="1" HorizontalAlignment="Stretch" Visibility="{Binding IsChecked, ElementName=advancedOptionsToggle, Converter={StaticResource boolToVisConverter}}">
- <StackPanel Orientation="Horizontal" Margin="0,5,0,5" >
+ <StackPanel Orientation="Horizontal" Margin="8,5,0,5" >
<TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="{x:Static Properties:Resources.AudioView_Samplerate}"
Visibility="{Binding IsPassthru, Converter={StaticResource boolToVisConverter}, ConverterParameter=true}" />
@@ -272,7 +265,7 @@
Visibility="{Binding IsPassthru, Converter={StaticResource boolToHiddenVisConverter}, ConverterParameter=true}"/>
<TextBlock Text="{x:Static Properties:Resources.AudioView_TrackName}" VerticalAlignment="Center" FontWeight="Bold" Margin="5,0,5,0" />
- <TextBox Text="{Binding TrackName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="138" Height="22" />
+ <TextBox Text="{Binding TrackName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Width="175" Height="22" />
</StackPanel>
</Grid>
diff --git a/win/CS/HandBrakeWPF/Views/ChaptersView.xaml b/win/CS/HandBrakeWPF/Views/ChaptersView.xaml
index f916ff503..e74a896dc 100644
--- a/win/CS/HandBrakeWPF/Views/ChaptersView.xaml
+++ b/win/CS/HandBrakeWPF/Views/ChaptersView.xaml
@@ -32,10 +32,13 @@
VerticalAlignment="Stretch" AutoGenerateColumns="False"
CanUserSortColumns="False" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserResizeRows="False"
CanUserAddRows="False" CanUserDeleteRows="False" HeadersVisibility="Column"
- HorizontalGridLinesBrush="#FFABADB3" VerticalGridLinesBrush="#FFABADB3">
+ HorizontalGridLinesBrush="#FFABADB3" VerticalGridLinesBrush="#FFABADB3"
+ Background="Transparent" SelectionMode="Single">
<DataGrid.CellStyle>
<Style TargetType="DataGridCell" BasedOn="{StaticResource {x:Type DataGridCell}}">
<Setter Property="MinHeight" Value="22" />
+ <Setter Property="BorderThickness" Value="0" />
+ <Setter Property="VerticalContentAlignment" Value="Center" />
</Style>
</DataGrid.CellStyle>
<DataGrid.ContextMenu>
diff --git a/win/CS/HandBrakeWPF/Views/OptionsView.xaml b/win/CS/HandBrakeWPF/Views/OptionsView.xaml
index 244929800..9a72fdf51 100644
--- a/win/CS/HandBrakeWPF/Views/OptionsView.xaml
+++ b/win/CS/HandBrakeWPF/Views/OptionsView.xaml
@@ -115,7 +115,8 @@
<ComboBox DisplayMemberPath="Name" ItemsSource="{Binding InterfaceLanguages}" SelectedItem="{Binding SelectedLanguage}" Margin="5,0,0,0" HorizontalAlignment="Left" Width="150" />
</StackPanel>
- <StackPanel Orientation="Vertical" Margin="20,0,0,0">
+ <StackPanel Orientation="Vertical" Margin="20,5,0,0">
+ <CheckBox Content="{x:Static Properties:Resources.Options_DarkTheme}" IsChecked="{Binding UseDarkTheme}" />
<CheckBox Content="{x:Static Properties:Resources.Options_MinimiseTray}" IsChecked="{Binding MinimiseToTray}" />
<CheckBox Content="{x:Static Properties:Resources.Options_ClearCompleted}" IsChecked="{Binding ClearQueueOnEncodeCompleted}" />
<CheckBox Content="{x:Static Properties:Resources.OptionsView_ShowStatusInTitleBar}" IsChecked="{Binding ShowStatusInTitleBar}" />
diff --git a/win/CS/HandBrakeWPF/Views/SubtitlesView.xaml b/win/CS/HandBrakeWPF/Views/SubtitlesView.xaml
index f7ed98288..1270cb258 100644
--- a/win/CS/HandBrakeWPF/Views/SubtitlesView.xaml
+++ b/win/CS/HandBrakeWPF/Views/SubtitlesView.xaml
@@ -143,13 +143,6 @@
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
- <!-- Marker -->
- <Image Grid.Column="0"
- Width="20"
- Height="20"
- Margin="5,0,5,0"
- Source="Images/Movies_small.png" />
-
<!-- Standard Subtitle Settings -->
<Grid Grid.Column="1" HorizontalAlignment="Stretch" Margin="0,8,0,8"
Visibility="{Binding IsSrtSubtitle, Converter={StaticResource booleanToVisConverter}, ConverterParameter=true}">
@@ -226,7 +219,7 @@
</Grid.RowDefinitions>
<!-- Row 1 -->
- <TextBlock Grid.Column="0" VerticalAlignment="Center" FontWeight="Bold" Text="Source" />
+ <TextBlock Grid.Column="0" VerticalAlignment="Center" FontWeight="Bold" Text="Source" Margin="10,0,0,0" />
<TextBlock Grid.Column="1" VerticalAlignment="Center" Text="{Binding SrtFileName}" Margin="5,0,5,0" Width="75" TextWrapping="NoWrap" TextTrimming="WordEllipsis"
Visibility="{Binding IsSrtSubtitle, Converter={StaticResource booleanToVisConverter}, ConverterParameter=false}" />
@@ -243,8 +236,9 @@
<TextBlock Grid.Column="6" VerticalAlignment="Center" FontWeight="Bold" Text="Offset (ms)" />
<controls:NumberBox Grid.Column="7" Width="58" Height="24" Margin="5,0,5,0" Minimum="-9000000" Maximum="900000"
IsEnabled="{Binding IsSrtSubtitle}" Number="{Binding SrtOffset, Mode=TwoWay}" />
-
- <CheckBox Grid.Column="8" Margin="5,0,5,0" VerticalAlignment="Center" IsChecked="{Binding Burned}" IsEnabled="{Binding CanBeBurned}" Content="Burn In" FontWeight="Bold">
+
+ <CheckBox Grid.Column="8" Margin="5,0,5,0" VerticalAlignment="Center" IsChecked="{Binding Burned}" IsEnabled="{Binding CanBeBurned}" Content="Burn In" FontWeight="Bold"
+ VerticalContentAlignment="Center">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cal:ActionMessage MethodName="SetBurnedToFalseForAllExcept">
@@ -254,7 +248,7 @@
</i:Interaction.Triggers>
</CheckBox>
- <CheckBox Grid.Column="9" Margin="5,0,5,0" VerticalAlignment="Center" IsChecked="{Binding Default}" Content="Default" FontWeight="Bold"
+ <CheckBox Grid.Column="9" Margin="0,0,5,0" VerticalAlignment="Center" IsChecked="{Binding Default}" Content="Default" FontWeight="Bold" VerticalContentAlignment="Center"
IsEnabled="{Binding DataContext.IsBurnableOnly, Converter={StaticResource booleanConverter}, ConverterParameter=true, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
diff --git a/win/CS/HandBrakeWPF/defaultsettings.xml b/win/CS/HandBrakeWPF/defaultsettings.xml
index dd7ef6abe..22f5eb6ac 100644
--- a/win/CS/HandBrakeWPF/defaultsettings.xml
+++ b/win/CS/HandBrakeWPF/defaultsettings.xml
@@ -553,4 +553,12 @@
<anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
</value>
</item>
+ <item>
+ <key>
+ <string>UseDarkTheme</string>
+ </key>
+ <value>
+ <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
+ </value>
+ </item>
</dictionary> \ No newline at end of file