mirror of
https://github.com/QL-Win/QuickLook.git
synced 2025-09-12 18:39:45 +00:00
wip videoviewer
This commit is contained in:
@@ -60,7 +60,7 @@ namespace QuickLook.Plugin.VideoViewer
|
|||||||
{
|
{
|
||||||
_context = context;
|
_context = context;
|
||||||
|
|
||||||
var def = new Size(450, 450);
|
var def = new Size(500, 300);
|
||||||
|
|
||||||
_mediaSize = GetMediaSizeWithVlc(path);
|
_mediaSize = GetMediaSizeWithVlc(path);
|
||||||
|
|
||||||
|
@@ -1,9 +1,6 @@
|
|||||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||||
<SolidColorBrush x:Key="CaptionButtonIconForeground" Color="#E5EFEFEF" />
|
|
||||||
<SolidColorBrush x:Key="CaptionButtonHoverBackground" Color="#22FFFFFF" />
|
|
||||||
<SolidColorBrush x:Key="CaptionButtonPressBackground" Color="#44FFFFFF" />
|
|
||||||
|
|
||||||
<Style x:Key="CaptionButtonBaseStyle" TargetType="Button">
|
<Style x:Key="CaptionButtonBaseStyle" TargetType="Button">
|
||||||
<Setter Property="Focusable" Value="False" />
|
<Setter Property="Focusable" Value="False" />
|
||||||
<Setter Property="Cursor" Value="Hand" />
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
xmlns:glassLayer="clr-namespace:QuickLook.Controls.GlassLayer;assembly=QuickLook"
|
xmlns:glassLayer="clr-namespace:QuickLook.Controls.GlassLayer;assembly=QuickLook"
|
||||||
mc:Ignorable="d"
|
mc:Ignorable="d"
|
||||||
x:Name="viewerPanel"
|
x:Name="viewerPanel"
|
||||||
d:DesignHeight="450" d:DesignWidth="450">
|
d:DesignHeight="300" d:DesignWidth="500">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid.Resources>
|
<Grid.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
@@ -19,31 +19,71 @@
|
|||||||
</ResourceDictionary.MergedDictionaries>
|
</ResourceDictionary.MergedDictionaries>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
</Grid.Resources>
|
</Grid.Resources>
|
||||||
|
|
||||||
<vlc:VlcPlayer x:Name="mediaElement" LibVlcPath="{Binding LibVlcPath, ElementName=viewerPanel}"
|
<vlc:VlcPlayer x:Name="mediaElement" LibVlcPath="{Binding LibVlcPath, ElementName=viewerPanel}"
|
||||||
VlcOption="{Binding VlcOption, ElementName=viewerPanel}" />
|
VlcOption="{Binding VlcOption, ElementName=viewerPanel}" />
|
||||||
|
<Grid>
|
||||||
<Image>
|
<Grid.Style>
|
||||||
<Image.Style>
|
<Style TargetType="Grid">
|
||||||
<Style TargetType="Image">
|
<Setter Property="Visibility" Value="Visible" />
|
||||||
<Setter Property="Source" Value="{Binding CoverArt, ElementName=viewerPanel}" />
|
|
||||||
<Setter Property="Visibility" Value="Collapsed" />
|
|
||||||
<Style.Triggers>
|
<Style.Triggers>
|
||||||
<DataTrigger Binding="{Binding HasVideo, ElementName=viewerPanel}" Value="False">
|
<DataTrigger Binding="{Binding HasVideo, ElementName=viewerPanel}" Value="True">
|
||||||
<Setter Property="Visibility" Value="Visible" />
|
<Setter Property="Visibility" Value="Collapsed" />
|
||||||
</DataTrigger>
|
|
||||||
<DataTrigger
|
|
||||||
Binding="{Binding CoverArt.Length, ElementName=viewerPanel, FallbackValue=0, TargetNullValue=0}"
|
|
||||||
Value="0">
|
|
||||||
<Setter Property="Source" Value="Resources/compact-disc.png" />
|
|
||||||
<Setter Property="Margin" Value="50" />
|
|
||||||
</DataTrigger>
|
</DataTrigger>
|
||||||
</Style.Triggers>
|
</Style.Triggers>
|
||||||
</Style>
|
</Style>
|
||||||
</Image.Style>
|
</Grid.Style>
|
||||||
</Image>
|
<Grid.ColumnDefinitions>
|
||||||
|
<ColumnDefinition Width="4*" />
|
||||||
|
<ColumnDefinition Width="6*" />
|
||||||
|
</Grid.ColumnDefinitions>
|
||||||
|
<Rectangle Grid.Column="0" Grid.ColumnSpan="2" ClipToBounds="True">
|
||||||
|
<Rectangle.Effect>
|
||||||
|
<BlurEffect Radius="100"/>
|
||||||
|
</Rectangle.Effect>
|
||||||
|
<Rectangle.Fill>
|
||||||
|
<ImageBrush ImageSource="{Binding ElementName=imageCoverArt, Path=Source}" Viewbox="0.15,0,0.7,1" Stretch="UniformToFill" />
|
||||||
|
</Rectangle.Fill>
|
||||||
|
|
||||||
|
</Rectangle>
|
||||||
|
<Image Grid.Column="0" x:Name="imageCoverArt" Margin="20,40,20,40">
|
||||||
|
<Image.Effect>
|
||||||
|
<DropShadowEffect Direction="0" BlurRadius="6" Color="#FF898989" ShadowDepth="0"/>
|
||||||
|
</Image.Effect>
|
||||||
|
<Image.Style>
|
||||||
|
<Style TargetType="Image">
|
||||||
|
<Setter Property="Source" Value="{Binding CoverArt, ElementName=viewerPanel}" />
|
||||||
|
<Style.Triggers>
|
||||||
|
<DataTrigger
|
||||||
|
Binding="{Binding CoverArt.Length, ElementName=viewerPanel, FallbackValue=0, TargetNullValue=0}"
|
||||||
|
Value="0">
|
||||||
|
<Setter Property="Source" Value="Resources/compact-disc.png" />
|
||||||
|
</DataTrigger>
|
||||||
|
</Style.Triggers>
|
||||||
|
</Style>
|
||||||
|
</Image.Style>
|
||||||
|
</Image>
|
||||||
|
</Grid>
|
||||||
|
|
||||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Height="32">
|
<Grid x:Name="videoControlContainer" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Height="32">
|
||||||
|
<Grid.Resources>
|
||||||
|
<Storyboard x:Key="ShowControlStoryboard" Completed="AutoHideViedoControlContainer">
|
||||||
|
<DoubleAnimation
|
||||||
|
Storyboard.Target="{Binding Source={x:Reference videoControlContainer}}"
|
||||||
|
Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:0.05">
|
||||||
|
</DoubleAnimation>
|
||||||
|
</Storyboard>
|
||||||
|
<Storyboard x:Key="HideControlStoryboard">
|
||||||
|
<DoubleAnimationUsingKeyFrames
|
||||||
|
Storyboard.Target="{Binding Source={x:Reference videoControlContainer}}"
|
||||||
|
Storyboard.TargetProperty="Opacity">
|
||||||
|
<DoubleAnimationUsingKeyFrames.KeyFrames>
|
||||||
|
<LinearDoubleKeyFrame Value="1" KeyTime="0:0:0" />
|
||||||
|
<LinearDoubleKeyFrame Value="1" KeyTime="0:0:3" />
|
||||||
|
<LinearDoubleKeyFrame Value="0" KeyTime="0:0:3.05" />
|
||||||
|
</DoubleAnimationUsingKeyFrames.KeyFrames>
|
||||||
|
</DoubleAnimationUsingKeyFrames>
|
||||||
|
</Storyboard>
|
||||||
|
</Grid.Resources>
|
||||||
<glassLayer:GlassLayer BlurredElement="{Binding ElementName=mediaElement}" OverlayColor="#FF3B3B3B" />
|
<glassLayer:GlassLayer BlurredElement="{Binding ElementName=mediaElement}" OverlayColor="#FF3B3B3B" />
|
||||||
<DockPanel>
|
<DockPanel>
|
||||||
<Button x:Name="buttonPlayPause" Style="{StaticResource CaptionButtonStyle}" DockPanel.Dock="Left">
|
<Button x:Name="buttonPlayPause" Style="{StaticResource CaptionButtonStyle}" DockPanel.Dock="Left">
|
||||||
|
@@ -22,6 +22,7 @@ using System.Runtime.CompilerServices;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using System.Windows.Input;
|
using System.Windows.Input;
|
||||||
|
using System.Windows.Media.Animation;
|
||||||
using Meta.Vlc;
|
using Meta.Vlc;
|
||||||
using Meta.Vlc.Interop.Media;
|
using Meta.Vlc.Interop.Media;
|
||||||
using QuickLook.Annotations;
|
using QuickLook.Annotations;
|
||||||
@@ -48,6 +49,9 @@ namespace QuickLook.Plugin.VideoViewer
|
|||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
ShowViedoControlContainer(null, null);
|
||||||
|
viewerPanel.PreviewMouseMove += ShowViedoControlContainer;
|
||||||
|
|
||||||
mediaElement.PropertyChanged += PlayerPropertyChanged;
|
mediaElement.PropertyChanged += PlayerPropertyChanged;
|
||||||
mediaElement.StateChanged += PlayerStateChanged;
|
mediaElement.StateChanged += PlayerStateChanged;
|
||||||
|
|
||||||
@@ -175,6 +179,23 @@ namespace QuickLook.Plugin.VideoViewer
|
|||||||
|
|
||||||
public event PropertyChangedEventHandler PropertyChanged;
|
public event PropertyChangedEventHandler PropertyChanged;
|
||||||
|
|
||||||
|
private void ShowViedoControlContainer(object sender, MouseEventArgs e)
|
||||||
|
{
|
||||||
|
var show = (Storyboard) videoControlContainer.FindResource("ShowControlStoryboard");
|
||||||
|
if (videoControlContainer.Opacity == 0 || videoControlContainer.Opacity == 1)
|
||||||
|
show.Begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AutoHideViedoControlContainer(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (videoControlContainer.IsMouseOver)
|
||||||
|
return;
|
||||||
|
|
||||||
|
var hide = (Storyboard) videoControlContainer.FindResource("HideControlStoryboard");
|
||||||
|
|
||||||
|
hide.Begin();
|
||||||
|
}
|
||||||
|
|
||||||
private void PlayerStop(object sender, MouseButtonEventArgs e)
|
private void PlayerStop(object sender, MouseButtonEventArgs e)
|
||||||
{
|
{
|
||||||
HasEnded = false;
|
HasEnded = false;
|
||||||
|
@@ -10,6 +10,7 @@
|
|||||||
<ResourceDictionary.MergedDictionaries>
|
<ResourceDictionary.MergedDictionaries>
|
||||||
<ResourceDictionary Source="Styles/ScrollBarStyleDictionary.xaml" />
|
<ResourceDictionary Source="Styles/ScrollBarStyleDictionary.xaml" />
|
||||||
<ResourceDictionary Source="Styles/BusyDecorator.xaml" />
|
<ResourceDictionary Source="Styles/BusyDecorator.xaml" />
|
||||||
|
<ResourceDictionary Source="Styles/MainWindowStyles.xaml" />
|
||||||
</ResourceDictionary.MergedDictionaries>
|
</ResourceDictionary.MergedDictionaries>
|
||||||
</ResourceDictionary>
|
</ResourceDictionary>
|
||||||
</Application.Resources>
|
</Application.Resources>
|
||||||
|
@@ -19,9 +19,6 @@
|
|||||||
ShowActivated="False" ShowInTaskbar="False">
|
ShowActivated="False" ShowInTaskbar="False">
|
||||||
<controls:MainWindowBase.Resources>
|
<controls:MainWindowBase.Resources>
|
||||||
<ResourceDictionary>
|
<ResourceDictionary>
|
||||||
<ResourceDictionary.MergedDictionaries>
|
|
||||||
<ResourceDictionary Source="Styles/MainWindowStyles.xaml" />
|
|
||||||
</ResourceDictionary.MergedDictionaries>
|
|
||||||
<converters:BooleanToResizeModeConverter x:Key="BooleanToResizeModeConverter" />
|
<converters:BooleanToResizeModeConverter x:Key="BooleanToResizeModeConverter" />
|
||||||
<converters:BooleanToKeyTimeConverter x:Key="BooleanToKeyTimeConverter" />
|
<converters:BooleanToKeyTimeConverter x:Key="BooleanToKeyTimeConverter" />
|
||||||
<converters:WindowStateToThicknessConverter x:Key="WindowStateToThicknessConverter" />
|
<converters:WindowStateToThicknessConverter x:Key="WindowStateToThicknessConverter" />
|
||||||
@@ -33,7 +30,7 @@
|
|||||||
</controls:MainWindowBase.Resources>
|
</controls:MainWindowBase.Resources>
|
||||||
<controls:MainWindowBase.Style>
|
<controls:MainWindowBase.Style>
|
||||||
<Style TargetType="controls:MainWindowBase">
|
<Style TargetType="controls:MainWindowBase">
|
||||||
<Setter Property="Foreground" Value="{DynamicResource MainWindowForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource WindowTextForeground}" />
|
||||||
<Setter Property="ResizeMode"
|
<Setter Property="ResizeMode"
|
||||||
Value="{Binding ContextObject.CanResize, ElementName=mainWindow, Converter={StaticResource BooleanToResizeModeConverter}}" />
|
Value="{Binding ContextObject.CanResize, ElementName=mainWindow, Converter={StaticResource BooleanToResizeModeConverter}}" />
|
||||||
<Setter Property="WindowChrome.WindowChrome">
|
<Setter Property="WindowChrome.WindowChrome">
|
||||||
@@ -61,29 +58,29 @@
|
|||||||
</Border.Effect>
|
</Border.Effect>
|
||||||
<Grid x:Name="windowFrameContainer" Background="{DynamicResource MainWindowBackground}"
|
<Grid x:Name="windowFrameContainer" Background="{DynamicResource MainWindowBackground}"
|
||||||
Margin="{Binding WindowState, ElementName=mainWindow, Converter={StaticResource WindowStateToThicknessConverter}, ConverterParameter={StaticResource MainWindowShadowPaddingThinkness}}">
|
Margin="{Binding WindowState, ElementName=mainWindow, Converter={StaticResource WindowStateToThicknessConverter}, ConverterParameter={StaticResource MainWindowShadowPaddingThinkness}}">
|
||||||
<Grid.Resources>
|
|
||||||
<Storyboard x:Key="ShowCaptionStoryboard">
|
|
||||||
<DoubleAnimation
|
|
||||||
Storyboard.Target="{Binding Source={x:Reference windowCaptionContainer}}"
|
|
||||||
Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:0.05">
|
|
||||||
</DoubleAnimation>
|
|
||||||
</Storyboard>
|
|
||||||
<Storyboard x:Key="ShowAndHideTitlebarStoryboard">
|
|
||||||
<DoubleAnimationUsingKeyFrames
|
|
||||||
Storyboard.Target="{Binding Source={x:Reference windowCaptionContainer}}"
|
|
||||||
Storyboard.TargetProperty="Opacity">
|
|
||||||
<DoubleAnimationUsingKeyFrames.KeyFrames>
|
|
||||||
<LinearDoubleKeyFrame Value="1" KeyTime="0:0:0.05" />
|
|
||||||
<LinearDoubleKeyFrame Value="1" KeyTime="0:0:3" />
|
|
||||||
<LinearDoubleKeyFrame Value="0" KeyTime="0:0:3.05" />
|
|
||||||
</DoubleAnimationUsingKeyFrames.KeyFrames>
|
|
||||||
</DoubleAnimationUsingKeyFrames>
|
|
||||||
</Storyboard>
|
|
||||||
</Grid.Resources>
|
|
||||||
<Grid x:Name="viewerRootContainer" ZIndex="190">
|
<Grid x:Name="viewerRootContainer" ZIndex="190">
|
||||||
<Grid x:Name="windowCaptionContainer" Height="{StaticResource MainWindowCaptionHeight}"
|
<Grid x:Name="windowCaptionContainer" Height="{StaticResource MainWindowCaptionHeight}"
|
||||||
VerticalAlignment="Top"
|
VerticalAlignment="Top"
|
||||||
ZIndex="100">
|
ZIndex="100">
|
||||||
|
<Grid.Resources>
|
||||||
|
<Storyboard x:Key="ShowCaptionContainerStoryboard" Completed="AutoHideCaptionContainer">
|
||||||
|
<DoubleAnimation
|
||||||
|
Storyboard.Target="{Binding Source={x:Reference windowCaptionContainer}}"
|
||||||
|
Storyboard.TargetProperty="Opacity" To="1" Duration="0:0:0.05">
|
||||||
|
</DoubleAnimation>
|
||||||
|
</Storyboard>
|
||||||
|
<Storyboard x:Key="HideCaptionContainerStoryboard">
|
||||||
|
<DoubleAnimationUsingKeyFrames
|
||||||
|
Storyboard.Target="{Binding Source={x:Reference windowCaptionContainer}}"
|
||||||
|
Storyboard.TargetProperty="Opacity">
|
||||||
|
<DoubleAnimationUsingKeyFrames.KeyFrames>
|
||||||
|
<LinearDoubleKeyFrame Value="1" KeyTime="0:0:0" />
|
||||||
|
<LinearDoubleKeyFrame Value="1" KeyTime="0:0:3" />
|
||||||
|
<LinearDoubleKeyFrame Value="0" KeyTime="0:0:3.05" />
|
||||||
|
</DoubleAnimationUsingKeyFrames.KeyFrames>
|
||||||
|
</DoubleAnimationUsingKeyFrames>
|
||||||
|
</Storyboard>
|
||||||
|
</Grid.Resources>
|
||||||
<glassLayer:GlassLayer OverlayColor="{DynamicResource CaptionBackground}" BlurredElement="{Binding ElementName=containerPanel}" />
|
<glassLayer:GlassLayer OverlayColor="{DynamicResource CaptionBackground}" BlurredElement="{Binding ElementName=containerPanel}" />
|
||||||
<DockPanel>
|
<DockPanel>
|
||||||
<Button x:Name="buttonCloseWindow" Style="{StaticResource CaptionCloseButtonStyle}"
|
<Button x:Name="buttonCloseWindow" Style="{StaticResource CaptionCloseButtonStyle}"
|
||||||
|
@@ -103,22 +103,26 @@ namespace QuickLook
|
|||||||
|
|
||||||
private void ShowWindowCaptionContainer(object sender, MouseEventArgs e)
|
private void ShowWindowCaptionContainer(object sender, MouseEventArgs e)
|
||||||
{
|
{
|
||||||
var show = (Storyboard) windowFrameContainer.FindResource("ShowCaptionStoryboard");
|
var show = (Storyboard) windowCaptionContainer.FindResource("ShowCaptionContainerStoryboard");
|
||||||
var showAndHide = (Storyboard) windowFrameContainer.FindResource("ShowAndHideTitlebarStoryboard");
|
|
||||||
|
|
||||||
if (!ContextObject.TitlebarOverlap)
|
if (windowCaptionContainer.Opacity == 0 || windowCaptionContainer.Opacity == 1)
|
||||||
{
|
|
||||||
show.Begin();
|
show.Begin();
|
||||||
showAndHide.Stop();
|
}
|
||||||
|
|
||||||
|
private void AutoHideCaptionContainer(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!ContextObject.TitlebarOverlap)
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
if (windowCaptionContainer.IsMouseOver)
|
if (windowCaptionContainer.IsMouseOver)
|
||||||
show.Begin();
|
return;
|
||||||
else
|
|
||||||
showAndHide.Begin();
|
var hide = (Storyboard) windowCaptionContainer.FindResource("HideCaptionContainerStoryboard");
|
||||||
|
|
||||||
|
hide.Begin();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public bool Pinned
|
public bool Pinned
|
||||||
{
|
{
|
||||||
get => _pinned;
|
get => _pinned;
|
||||||
@@ -401,16 +405,6 @@ namespace QuickLook
|
|||||||
ProcessHelper.PerformAggressiveGC();
|
ProcessHelper.PerformAggressiveGC();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ShowTitlebar()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public void HideTitlebar()
|
|
||||||
{
|
|
||||||
var sb = FindResource("HideTitlebarStoryboard") as Storyboard;
|
|
||||||
sb?.Begin();
|
|
||||||
}
|
|
||||||
|
|
||||||
[NotifyPropertyChangedInvocator]
|
[NotifyPropertyChangedInvocator]
|
||||||
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
|
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
|
||||||
{
|
{
|
||||||
@@ -421,13 +415,13 @@ namespace QuickLook
|
|||||||
{
|
{
|
||||||
if (dark)
|
if (dark)
|
||||||
{
|
{
|
||||||
if (!Resources.MergedDictionaries.Contains(_darkDict))
|
if (!Application.Current.Resources.MergedDictionaries.Contains(_darkDict))
|
||||||
Resources.MergedDictionaries.Add(_darkDict);
|
Application.Current.Resources.MergedDictionaries.Add(_darkDict);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (Resources.MergedDictionaries.Contains(_darkDict))
|
if (Application.Current.Resources.MergedDictionaries.Contains(_darkDict))
|
||||||
Resources.MergedDictionaries.Remove(_darkDict);
|
Application.Current.Resources.MergedDictionaries.Remove(_darkDict);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -54,11 +54,11 @@
|
|||||||
FilenameFilenameFilenameFilenameFilenameFilenameFilenameFilenameFilenameFilename.ext
|
FilenameFilenameFilenameFilenameFilenameFilenameFilenameFilenameFilenameFilename.ext
|
||||||
</TextBlock>
|
</TextBlock>
|
||||||
<TextBlock x:Name="modDate" Grid.Row="3" Grid.Column="1" Padding="3" FontWeight="Light"
|
<TextBlock x:Name="modDate" Grid.Row="3" Grid.Column="1" Padding="3" FontWeight="Light"
|
||||||
Foreground="DimGray">
|
Foreground="{DynamicResource WindowTextForegroundAlternative}">
|
||||||
Last modified at 01/01/2017 00:00:00
|
Last modified at 01/01/2017 00:00:00
|
||||||
</TextBlock>
|
</TextBlock>
|
||||||
<TextBlock x:Name="totalSize" Grid.Row="4" Grid.Column="1" Padding="3" FontWeight="Light"
|
<TextBlock x:Name="totalSize" Grid.Row="4" Grid.Column="1" Padding="3" FontWeight="Light"
|
||||||
Foreground="DimGray">
|
Foreground="{DynamicResource WindowTextForegroundAlternative}">
|
||||||
Calculating size...
|
Calculating size...
|
||||||
</TextBlock>
|
</TextBlock>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
@@ -4,7 +4,8 @@
|
|||||||
xmlns:fa="http://schemas.fontawesome.io/icons/">
|
xmlns:fa="http://schemas.fontawesome.io/icons/">
|
||||||
<Color x:Key="MainWindowShadowColor">Gray</Color>
|
<Color x:Key="MainWindowShadowColor">Gray</Color>
|
||||||
<SolidColorBrush x:Key="MainWindowBackground" Color="#FF565656" />
|
<SolidColorBrush x:Key="MainWindowBackground" Color="#FF565656" />
|
||||||
<SolidColorBrush x:Key="MainWindowForeground" Color="#E5EFEFEF" />
|
<SolidColorBrush x:Key="WindowTextForeground" Color="#E5EFEFEF" />
|
||||||
|
<SolidColorBrush x:Key="WindowTextForegroundAlternative" Color="#E5EFEFEF" />
|
||||||
<SolidColorBrush x:Key="CaptionTextHoverBorder" Color="#FFB9B9B9" />
|
<SolidColorBrush x:Key="CaptionTextHoverBorder" Color="#FFB9B9B9" />
|
||||||
<SolidColorBrush x:Key="CaptionButtonIconForeground" Color="#E5EFEFEF" />
|
<SolidColorBrush x:Key="CaptionButtonIconForeground" Color="#E5EFEFEF" />
|
||||||
<SolidColorBrush x:Key="CaptionButtonHoverBackground" Color="#22FFFFFF" />
|
<SolidColorBrush x:Key="CaptionButtonHoverBackground" Color="#22FFFFFF" />
|
||||||
|
@@ -7,7 +7,8 @@
|
|||||||
<system:Double x:Key="MainWindowCaptionHeight">32</system:Double>
|
<system:Double x:Key="MainWindowCaptionHeight">32</system:Double>
|
||||||
<Color x:Key="MainWindowShadowColor">Gray</Color>
|
<Color x:Key="MainWindowShadowColor">Gray</Color>
|
||||||
<SolidColorBrush x:Key="MainWindowBackground" Color="#FFF8F8FB" />
|
<SolidColorBrush x:Key="MainWindowBackground" Color="#FFF8F8FB" />
|
||||||
<SolidColorBrush x:Key="MainWindowForeground" Color="#E50E0E0E" />
|
<SolidColorBrush x:Key="WindowTextForeground" Color="#E50E0E0E" />
|
||||||
|
<SolidColorBrush x:Key="WindowTextForegroundAlternative" Color="#E5626262" />
|
||||||
<SolidColorBrush x:Key="CaptionTextHoverBorder" Color="#FF3D3D3D" />
|
<SolidColorBrush x:Key="CaptionTextHoverBorder" Color="#FF3D3D3D" />
|
||||||
<SolidColorBrush x:Key="CaptionButtonIconForeground" Color="#E5868686" />
|
<SolidColorBrush x:Key="CaptionButtonIconForeground" Color="#E5868686" />
|
||||||
<SolidColorBrush x:Key="CaptionButtonHoverBackground" Color="#44FFFFFF" />
|
<SolidColorBrush x:Key="CaptionButtonHoverBackground" Color="#44FFFFFF" />
|
||||||
@@ -19,7 +20,7 @@
|
|||||||
<Style x:Key="CaptionButtonBaseStyle" TargetType="Button">
|
<Style x:Key="CaptionButtonBaseStyle" TargetType="Button">
|
||||||
<Setter Property="Focusable" Value="False" />
|
<Setter Property="Focusable" Value="False" />
|
||||||
<Setter Property="Cursor" Value="Hand" />
|
<Setter Property="Cursor" Value="Hand" />
|
||||||
<Setter Property="Foreground" Value="{DynamicResource MainWindowForeground}" />
|
<Setter Property="Foreground" Value="{DynamicResource WindowTextForeground}" />
|
||||||
<Setter Property="VerticalAlignment" Value="Center" />
|
<Setter Property="VerticalAlignment" Value="Center" />
|
||||||
<Setter Property="HorizontalAlignment" Value="Center" />
|
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||||
<Setter Property="Background" Value="Transparent" />
|
<Setter Property="Background" Value="Transparent" />
|
||||||
|
Reference in New Issue
Block a user