<Style x:Key="ScreenShotsWindowStyle" TargetType="ContentControl">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="ContentControl">
                <Grid Background="{DynamicResource OverlayMenu}"
                      KeyboardNavigation.DirectionalNavigation="Once"
                      KeyboardNavigation.TabNavigation="Once"
                      KeyboardNavigation.ControlTabNavigation="Once"
                      FocusManager.FocusedElement="{Binding ElementName=ThumbList}"
                      UseLayoutRounding="True"
                      SnapsToDevicePixels="True">

                    <Grid.RenderTransform>
                        <TranslateTransform Y="0"/>
                    </Grid.RenderTransform>

                    <Grid.Triggers>
                        <EventTrigger RoutedEvent="FrameworkElement.Loaded">
                            <BeginStoryboard>
                                <Storyboard>
                                    <DoubleAnimation Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:0.2"/>
                                    <DoubleAnimation Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.Y)" From="-20" To="0" Duration="0:0:0.2"/>
                                </Storyboard>
                            </BeginStoryboard>
                        </EventTrigger>
                    </Grid.Triggers>

                    <Grid x:Name="ViewerHost" HorizontalAlignment="Center" VerticalAlignment="Top">


                        <ContentControl x:Name="Viewer"
                                        HorizontalAlignment="Center"
                                        VerticalAlignment="Top"
                                        Margin="0"
                                        Content="{Binding ElementName=ThumbList, Path=SelectedItem}"
                                        Focusable="False">

                            <ContentControl.ContentTemplate>
                                <DataTemplate>
                                    <Grid UseLayoutRounding="True" SnapsToDevicePixels="True">
                                        <StackPanel x:Name="Titre" Margin="0,-100,0,0"
                                                    Orientation="Vertical"
                                                    HorizontalAlignment="Center"
                                                    VerticalAlignment="Center">

                                            <StackPanel.Style>
                                                <Style TargetType="StackPanel">
                                                    <Setter Property="Visibility" Value="Collapsed"/>
                                                    <Style.Triggers>
                                                        <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem}" Value="{x:Null}">
                                                            <Setter Property="Visibility" Value="Visible"/>
                                                        </DataTrigger>
                                                    </Style.Triggers>
                                                </Style>
                                            </StackPanel.Style>

                                            <TextBlock Text="SCREENSHOT VIZUALIZER"
                                                       Style="{DynamicResource TextBlockBaseStyle}"
                                                       HorizontalAlignment="Center"
                                                       VerticalAlignment="Center"
                                                       FontSize="46"/>

                                            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
                                                <TextBlock Style="{DynamicResource TextBlockBaseStyle}"
                                                           FontSize="28"
                                                           Text="{Binding ElementName=ThumbList, Path=Items.Count}"/>

                                                <TextBlock Style="{DynamicResource TextBlockBaseStyle}"
                                                           FontSize="28"
                                                           Text=" "/>

                                                <TextBlock Style="{DynamicResource TextBlockBaseStyle}"
                                                           FontSize="28"
                                                           Text="{DynamicResource LOCIteminlibrary}"/>
                                            </StackPanel>

                                        </StackPanel>



                                        <!-- Image -->
                                        <Image x:Name="Shot"
                                               Stretch="Uniform"
                                               SnapsToDevicePixels="True"
                                               RenderOptions.BitmapScalingMode="HighQuality"
                                               HorizontalAlignment="Center"
                                               VerticalAlignment="Center"
                                               MaxWidth="1920"
                                               Height="1080"
                                               Source="{Binding FileName}"/>

                                        <!-- Vidéo -->
                                        <MediaElement x:Name="Player"
                                                      Volume="{Settings Fullscreen.BackgroundVolume}"
                                                      Visibility="Collapsed"
                                                      Stretch="Uniform"
                                                      HorizontalAlignment="Center"
                                                      VerticalAlignment="Top"
                                                      Height="1080"
                                                      LoadedBehavior="Play"
                                                      UnloadedBehavior="Stop"
                                                      ScrubbingEnabled="False"
                                                      MediaElementBehaviors.Repeat="True"
                                                      Source="{x:Null}"/>
                                    </Grid>

                                    <DataTemplate.Triggers>
                                        <DataTrigger Binding="{Binding IsVideo}" Value="True">
                                            <Setter TargetName="Shot" Property="Visibility" Value="Collapsed"/>
                                            <Setter TargetName="Player" Property="Visibility" Value="Visible"/>
                                            <Setter TargetName="Player" Property="Source" Value="{Binding FileName}"/>
                                        </DataTrigger>

                                        <DataTrigger Binding="{Binding IsVideo}" Value="False">
                                            <Setter TargetName="Player" Property="Visibility" Value="Collapsed"/>
                                            <Setter TargetName="Player" Property="Source" Value="{x:Null}"/>
                                        </DataTrigger>

                                        <!-- Sécurité -->
                                        <DataTrigger Binding="{Binding}" Value="{x:Null}">
                                            <Setter TargetName="Player" Property="Source" Value="{x:Null}"/>
                                        </DataTrigger>

                                    </DataTemplate.Triggers>
                                </DataTemplate>
                            </ContentControl.ContentTemplate>
                        </ContentControl>

                        <Border x:Name="ViewerFrame"
                                HorizontalAlignment="Center"
                                VerticalAlignment="Top"
                                Padding="14"
                                CornerRadius="2,2,0,0"
                                BorderThickness="12,12,12,228"
                                BorderBrush="#FFFFFF"
                                Background="#20000000"
                                IsHitTestVisible="False"
                                SnapsToDevicePixels="True"
                                Width="{Binding ElementName=Viewer, Path=ActualWidth}"
                                Height="{Binding ElementName=Viewer, Path=ActualHeight}">
                            <Border.Style>
                                <Style TargetType="Border">
                                    <Setter Property="Opacity" Value="0"/>
                                    <Style.Triggers>
                                        <DataTrigger Binding="{Binding ElementName=ThumbBarHost, Path=Opacity}" Value="1">
                                            <DataTrigger.EnterActions>
                                                <StopStoryboard BeginStoryboardName="ViewerFrameFadeOut"/>
                                                <BeginStoryboard x:Name="ViewerFrameFadeIn" HandoffBehavior="SnapshotAndReplace">
                                                    <Storyboard>
                                                        <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                         To="1" Duration="0:0:0.1"/>
                                                    </Storyboard>
                                                </BeginStoryboard>
                                            </DataTrigger.EnterActions>
                                            <DataTrigger.ExitActions>
                                                <StopStoryboard BeginStoryboardName="ViewerFrameFadeIn"/>
                                                <BeginStoryboard x:Name="ViewerFrameFadeOut" HandoffBehavior="SnapshotAndReplace">
                                                    <Storyboard>
                                                        <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                         To="0" Duration="0:0:0.4"/>
                                                    </Storyboard>
                                                </BeginStoryboard>
                                            </DataTrigger.ExitActions>
                                        </DataTrigger>
                                        <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem}" Value="{x:Null}">
                                            <Setter Property="Visibility" Value="Collapsed"/>
                                        </DataTrigger>
                                        <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem.IsVideo}" Value="True">
                                            <Setter Property="Visibility" Value="Collapsed"/>
                                        </DataTrigger>

                                    </Style.Triggers>
                                </Style>
                            </Border.Style>
                        </Border>

                    </Grid>

                    <!-- Vignettage -->
                    <Rectangle IsHitTestVisible="False" Opacity="0.6">
                        <Rectangle.Fill>
                            <SolidColorBrush Color="#000000"/>
                        </Rectangle.Fill>
                        <Rectangle.OpacityMask>
                            <RadialGradientBrush Center="0.5,0.55" GradientOrigin="0.5,0.55" RadiusX="0.95" RadiusY="0.82">
                                <GradientStop Color="#00FFFFFF" Offset="0.52"/>
                                <GradientStop Color="#80FFFFFF" Offset="0.78"/>
                                <GradientStop Color="#FFFFFFFF" Offset="1.00"/>
                            </RadialGradientBrush>
                        </Rectangle.OpacityMask>
                    </Rectangle>


                    <ContentControl x:Name="Sounds_MusicControl" Visibility="Collapsed"/>

                    <!-- Barre de miniatures -->
                    <Grid x:Name="ThumbBarHost"
                          FocusVisualStyle="{x:Null}"
                          Panel.ZIndex="2"
                          Height="220"
                          VerticalAlignment="Bottom"
                          KeyboardNavigation.DirectionalNavigation="Cycle">
                        <Border Margin="0,0,0,30"
                                FocusVisualStyle="{x:Null}"
                                Background="{DynamicResource OverlayMenu}"
                                BorderBrush="{DynamicResource MenuBorderBrush}"
                                BorderThickness="0,1,0,0"
                                Opacity="1"
                                IsHitTestVisible="False"/>
                        <ListBox x:Name="ThumbList"
                                 ItemsSource="{PluginSettings Plugin=ScreenshotsVisualizer, Path=ListScreenshots}"
                                 SelectionMode="Single"
                                 Background="Transparent"
                                 BorderThickness="0"
                                 Margin="5,0,5,50"
                                 FocusVisualStyle="{x:Null}"
                                 AlternationCount="10000"
                                 pbeh:FocusBahaviors.FocusBinding="True"
                                 pbeh:FocusBahaviors.OnVisibilityFocus="True"
                                 KeyboardNavigation.DirectionalNavigation="Contained"
                                 KeyboardNavigation.TabNavigation="Cycle"
                                 KeyboardNavigation.ControlTabNavigation="Cycle"
                                 ScrollViewer.IsDeferredScrollingEnabled="True"
                                 ScrollViewer.HorizontalScrollBarVisibility="Auto"
                                 ScrollViewer.VerticalScrollBarVisibility="Disabled"
                                 ScrollViewer.CanContentScroll="True"
                                 VirtualizingPanel.IsVirtualizing="True"
                                 VirtualizingPanel.VirtualizationMode="Recycling"
                                 VirtualizingPanel.ScrollUnit="Item"
                                 VirtualizingPanel.CacheLengthUnit="Item"
                                 VirtualizingPanel.CacheLength="4">
                            <ListBox.ItemsPanel>
                                <ItemsPanelTemplate>
                                    <VirtualizingStackPanel Orientation="Horizontal" IsVirtualizing="True" VirtualizationMode="Recycling"/>
                                </ItemsPanelTemplate>
                            </ListBox.ItemsPanel>

                            <ListBox.ItemTemplate>
                                <DataTemplate>
                                    <Grid Margin="0,2" FocusVisualStyle="{x:Null}">
                                        <Border x:Name="IndexBadge" FocusVisualStyle="{x:Null}"
                                                HorizontalAlignment="Left" VerticalAlignment="Top"
                                                Margin="6" Padding="6,2"
                                                Background="#AA000000" CornerRadius="10"
                                                Visibility="Collapsed" Panel.ZIndex="3">
                                            <TextBlock Foreground="White" FontSize="16" Style="{StaticResource TextBlockDetailStyle}">
                                                <TextBlock.Text>
                                                    <MultiBinding StringFormat="{}{0}/{1}">
                                                        <Binding RelativeSource="{RelativeSource AncestorType=ListBoxItem}" Path="(ItemsControl.AlternationIndex)"/>
                                                        <Binding ElementName="ThumbList" Path="Items.Count"/>
                                                    </MultiBinding>
                                                </TextBlock.Text>
                                            </TextBlock>
                                        </Border>

                                        <Border Background="#AA000000" CornerRadius="8" Padding="6,2" HorizontalAlignment="Right" VerticalAlignment="Top" Margin="6" Panel.ZIndex="5" FocusVisualStyle="{x:Null}">
                                            <Border.Style>
                                                <Style TargetType="Border">
                                                    <Setter Property="Visibility" Value="Collapsed"/>
                                                    <Style.Triggers>
                                                        <MultiDataTrigger>
                                                            <MultiDataTrigger.Conditions>
                                                                <Condition Binding="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem}, Path=IsSelected}" Value="True"/>
                                                                <Condition Binding="{Binding IsVideo}" Value="True"/>
                                                            </MultiDataTrigger.Conditions>
                                                            <Setter Property="Visibility" Value="Visible"/>
                                                        </MultiDataTrigger>
                                                    </Style.Triggers>
                                                </Style>
                                            </Border.Style>
                                            <TextBlock Foreground="White" FontSize="16" Style="{StaticResource TextBlockDetailStyle}"
                                                       Text="{Binding DurationString}"/>
                                        </Border>

                                        <Image x:Name="ThumbImage" FocusVisualStyle="{x:Null}"
                                               Stretch="UniformToFill"
                                               SnapsToDevicePixels="True"
                                               RenderOptions.BitmapScalingMode="Linear"
                                               Height="130"
                                               Panel.ZIndex="0">
                                            <Image.Style>
                                                <Style TargetType="Image">
                                                    <Setter Property="Source" Value="{Binding ImageThumbnail}"/>
                                                    <Style.Triggers>
                                                        <DataTrigger Binding="{Binding IsVideo}" Value="True">
                                                            <Setter Property="Source" Value="{Binding Thumbnail}"/>
                                                        </DataTrigger>
                                                    </Style.Triggers>
                                                </Style>
                                            </Image.Style>
                                        </Image>



                                        <Rectangle x:Name="VideoDim" FocusVisualStyle="{x:Null}"
                                                   Fill="#50000000"
                                                   Visibility="Collapsed"
                                                   IsHitTestVisible="False"
                                                   Panel.ZIndex="1"/>

                                        <Image Source="{ThemeFile 'Images/VideoLogo.png'}"
                                               RenderOptions.BitmapScalingMode="Fant"
                                               FocusVisualStyle="{x:Null}"
                                               Width="76" Height="76"
                                               Visibility="Collapsed"
                                               IsHitTestVisible="False"
                                               Panel.ZIndex="2"
                                               x:Name="PlayBadge"/>

                                        <Border Background="#AA000000" FocusVisualStyle="{x:Null}"
                                                VerticalAlignment="Bottom"
                                                Height="24"
                                                Panel.ZIndex="1"
                                                Visibility="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem},
                                                Path=IsSelected, Converter={StaticResource BooleanToVisibilityConverter}}">
                                            <StackPanel Orientation="Horizontal" Margin="6,0">
                                                <TextBlock Text="{Binding FileNameOnly}" Foreground="White" FontSize="14"
                                                           TextTrimming="CharacterEllipsis" MaxWidth="140"/>
                                                <TextBlock Text=" • " Foreground="White" FontSize="14" Margin="6,0,0,0"/>
                                                <TextBlock Text="{Binding FileSizeString}" Foreground="White" FontSize="14"/>
                                            </StackPanel>
                                        </Border>
                                    </Grid>

                                    <!-- Triggers -->
                                    <DataTemplate.Triggers>
                                        <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=ListBoxItem}, Path=IsSelected}" Value="True">
                                            <Setter TargetName="IndexBadge" Property="Visibility" Value="Visible"/>
                                        </DataTrigger>

                                        <DataTrigger Binding="{Binding IsVideo}" Value="True">
                                            <Setter TargetName="VideoDim" Property="Visibility" Value="Visible"/>
                                            <Setter TargetName="PlayBadge" Property="Visibility" Value="Visible"/>
                                        </DataTrigger>

                                    </DataTemplate.Triggers>
                                </DataTemplate>
                            </ListBox.ItemTemplate>


                            <ListBox.ItemContainerStyle>
                                <Style TargetType="ListBoxItem">
                                    <Setter Property="Width" Value="232"/>
                                    <Setter Property="Height" Value="120"/>
                                    <Setter Property="Margin" Value="5,0,5,0"/>
                                    <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
                                    <Setter Property="VerticalContentAlignment" Value="Stretch"/>
                                    <Setter Property="Template">
                                        <Setter.Value>
                                            <ControlTemplate TargetType="ListBoxItem">
                                                <Border x:Name="Card" CornerRadius="2" BorderThickness="2" BorderBrush="Transparent" RenderTransformOrigin="0.5,0.5">
                                                    <!-- >>> Le ScaleTransform est dans le template et nommé -->
                                                    <Border.RenderTransform>
                                                        <ScaleTransform ScaleX="1" ScaleY="1"/>
                                                    </Border.RenderTransform>

                                                    <ContentPresenter/>
                                                </Border>
                                                <ControlTemplate.Triggers>
                                                    <Trigger Property="IsSelected" Value="True">
                                                        <Setter TargetName="Card" Property="BorderBrush" Value="{DynamicResource FocusGameBorderBrush}"/>
                                                        <Setter TargetName="Card" Property="RenderTransform">
                                                            <Setter.Value>
                                                                <ScaleTransform ScaleX="1.05" ScaleY="1.05"/>
                                                            </Setter.Value>
                                                        </Setter>
                                                    </Trigger>
                                                    <Trigger Property="IsMouseOver" Value="True">
                                                        <Setter TargetName="Card" Property="BorderBrush" Value="{DynamicResource FocusGameBorderBrush}"/>
                                                        <Setter TargetName="Card" Property="RenderTransform">
                                                            <Setter.Value>
                                                                <ScaleTransform ScaleX="1.05" ScaleY="1.05"/>
                                                            </Setter.Value>
                                                        </Setter>
                                                    </Trigger>
                                                </ControlTemplate.Triggers>
                                            </ControlTemplate>
                                        </Setter.Value>
                                    </Setter>
                                </Style>
                            </ListBox.ItemContainerStyle>
                        </ListBox>

                        <!-- Barre de Button -->

                        <Border Background="{DynamicResource MainBackgourndBrush}" CornerRadius="0" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Height="50" Margin="0,0,0,0"/>
                        <StackPanel Orientation="Horizontal" VerticalAlignment="Bottom" HorizontalAlignment="Right">

                            <!-- D-Pad Gauche : Précédent -->
                            <StackPanel Orientation="Horizontal" Margin="0,0,10,10" VerticalAlignment="Center">
                                <Image Source="{ThemeFile 'Images/Buttons/DpadLeft.png'}" Height="35" VerticalAlignment="Center" Margin="0,0,10,0" Focusable="False"/>
                                <TextBlock Text="{DynamicResource LOCPreviousLabel}" Style="{DynamicResource TextBlockBaseStyle}" FontSize="25" VerticalAlignment="Center"/>
                            </StackPanel>

                            <!-- D-Pad Droite : Suivant -->
                            <StackPanel Orientation="Horizontal" Margin="10,0,10,10" VerticalAlignment="Center">
                                <Image Source="{ThemeFile 'Images/Buttons/DpadRight.png'}" Height="35" VerticalAlignment="Center" Margin="0,0,10,0" Focusable="False" />
                                <TextBlock Text="{DynamicResource LOCNextLabel}" Style="{DynamicResource TextBlockBaseStyle}" FontSize="25" VerticalAlignment="Center"/>
                            </StackPanel>

                            <ButtonEx x:Name="BackButton" Margin="0,0,10,10" VerticalAlignment="Center" HorizontalAlignment="Right" Style="{StaticResource IconBButton}" Content="{DynamicResource LOCBackLabel}" />
                        </StackPanel>

                        <Grid.Style>
                            <Style TargetType="Grid">
                                <Style.Triggers>

                                    <EventTrigger RoutedEvent="Selector.SelectionChanged">
                                        <BeginStoryboard x:Name="FadeOnSelection" HandoffBehavior="SnapshotAndReplace">
                                            <Storyboard>
                                                <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                 To="1"
                                                                 Duration="0:0:0"/>
                                                <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                 To="0.15"
                                                                 BeginTime="0:0:3"
                                                                 Duration="0:0:0.6"/>
                                                <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                 To="0"
                                                                 BeginTime="0:0:10"
                                                                 Duration="0:0:0.6"/>
                                            </Storyboard>
                                        </BeginStoryboard>
                                    </EventTrigger>
                                    <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem.IsVideo}" Value="False">
                                        <DataTrigger.EnterActions>
                                            <StopStoryboard BeginStoryboardName="FadeOnSelection"/>
                                            <BeginStoryboard>
                                                <Storyboard>
                                                    <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                     To="1"
                                                                     Duration="0:0:0"/>
                                                </Storyboard>
                                            </BeginStoryboard>
                                        </DataTrigger.EnterActions>
                                    </DataTrigger>

                                    <!-- Sécurité -->
                                    <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem}" Value="{x:Null}">
                                        <DataTrigger.EnterActions>
                                            <StopStoryboard BeginStoryboardName="FadeOnSelection"/>
                                            <BeginStoryboard>
                                                <Storyboard>
                                                    <DoubleAnimation Storyboard.TargetProperty="Opacity"
                                                                     To="1"
                                                                     Duration="0:0:0"/>
                                                </Storyboard>
                                            </BeginStoryboard>
                                        </DataTrigger.EnterActions>
                                    </DataTrigger>

                                </Style.Triggers>
                            </Style>
                        </Grid.Style>

                    </Grid>

                </Grid>
                <ControlTemplate.Triggers>
                    <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem}" Value="{x:Null}">
                        <Setter TargetName="ViewerFrame" Property="Visibility" Value="Collapsed"/>
                    </DataTrigger>
                    <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem.IsVideo}" Value="True">
                        <Setter TargetName="Sounds_MusicControl" Property="Tag" Value="True"/>
                    </DataTrigger>

                    <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem.IsVideo}" Value="False">
                        <Setter TargetName="Sounds_MusicControl" Property="Tag" Value="False"/>
                    </DataTrigger>

                    <Trigger Property="IsVisible" Value="False">
                        <Setter TargetName="Sounds_MusicControl" Property="Tag" Value="False"/>
                    </Trigger>
                    <DataTrigger Binding="{Binding ElementName=ThumbList, Path=SelectedItem}" Value="{x:Null}">
                        <Setter TargetName="Sounds_MusicControl" Property="Tag" Value="False"/>
                    </DataTrigger>

                </ControlTemplate.Triggers>
            </ControlTemplate>
        </Setter.Value>
    </Setter>

    <Style.Triggers>
        <DataTrigger Binding="{PluginSettings Plugin=ThemeOptions, Path=AspectRatio}" Value="dsp1610">
            <Setter Property="Margin" Value="0,-60,0,-60"/>
        </DataTrigger>
        <DataTrigger Binding="{PluginSettings Plugin=ThemeOptions, Path=AspectRatio}" Value="dsp219">
            <Setter Property="Margin" Value="-320,0,-320,0"/>
        </DataTrigger>
    </Style.Triggers>
</Style>