View Issue Details

IDProjectCategoryView StatusLast Update
0004421NoesisGUIUnitypublic2026-04-27 12:17
Reporterrobin.pan Assigned Tosfernandez  
PrioritynormalSeveritymajor 
Status assignedResolutionopen 
Product Version3.2.9 
Target Version3.2.14 
Summary0004421: NoesisXaml.Load takes more than 4 seconds
Description

We are experiencing Application Not Responding (ANR) issues on the Android XR platform. In our profiling session,the NoesisXaml.Load() method spans 4 seconds and the rest of the NoesisWorldUI.OnEnable() would contribute another 3 seconds (see screen shot and xaml attached).

Attached Files
V_WristUIContainer.xaml (171,695 bytes)   
<UserControl x:Class="WristUIContainer.V_WristUIContainer"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:sys="clr-namespace:System;assembly=mscorlib"
             xmlns:UIPanels="clr-namespace:UIPanels.XAML"
             xmlns:SharedScripts="clr-namespace:UIPanels.SharedScripts"
             xmlns:CustomControls="clr-namespace:WristPanels.CustomUserControls"
             xmlns:UISharedComponents="clr-namespace:WristPanels.CustomUserControls"
             xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
             xmlns:Effects="clr-namespace:System.Windows.Media.Effects;assembly=PresentationCore"
             xmlns:converters="clr-namespace:NonVr.Menu.XAML.Converter" 
             xmlns:noesis="clr-namespace:NoesisGUIExtensions;assembly=Noesis.GUI.Extensions"
             mc:Ignorable="d">
    <UserControl.Resources>
        <ResourceDictionary>
            <converters:CVTR_DogEarClipping x:Key="DogEarClip"/>
            <sys:Double x:Key="MainPanelLeftBarOffset">-111</sys:Double>
            <sys:Double x:Key="MainRowMaxWidthWithoutAdditionalLeftBar">1640</sys:Double>
            <GridLength x:Key="NavBarContainerHeight">174</GridLength>
            <GridLength x:Key="ToasterContainerHeight">102</GridLength>
            <sys:Double x:Key="SideSectionMinWidth">370</sys:Double>
            <GridLength x:Key="SideSectionMinWidth_GridLength">200</GridLength>
            <Thickness x:Key="MainPanelMargin">0,71</Thickness>
            <Style TargetType="TextBlock">
                <Setter Property="FontFamily" Value="{StaticResource FontDefaultRegular}"/>
            </Style>

            <Style x:Key="NavbarButtonStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource ButtonAudioStyle}">
                <Setter Property="Margin" Value="15,0,0,0"/>
                <Setter Property="Tag" Value="MenuCycleAudio"/>
                <Setter Property="Focusable" Value="False"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type Button}">
                            <Grid HorizontalAlignment="Center" VerticalAlignment="Center">
                                <Ellipse Name="NavButtonEllipse" Fill="Transparent" Visibility="{TemplateBinding Visibility}"/>
                                <Image x:Name="Highlight" Source="{StaticResource UI_Icon_Hexagon_Highlighter}"
                                   Visibility="{Binding (SharedScripts:AttachedProps.HighlightVisibility), RelativeSource={RelativeSource TemplatedParent},FallbackValue=Visible}"
                                   Width="72" Height="72" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                <Image Source="{Binding (SharedScripts:AttachedProps.PrimaryImage), RelativeSource={RelativeSource TemplatedParent}}"
                               Margin="{Binding (SharedScripts:AttachedProps.ImageMargin), RelativeSource={RelativeSource TemplatedParent}}"
                               Width="{Binding (SharedScripts:AttachedProps.ImageWidth), FallbackValue=32, RelativeSource={RelativeSource TemplatedParent}}"
                               Height="{Binding (SharedScripts:AttachedProps.ImageHeight), FallbackValue=32, RelativeSource={RelativeSource TemplatedParent}}"/>
                                
                                <Border x:Name="DisabledBorder" Width="48" Height="48" Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" CornerRadius="5" Visibility="Collapsed" VerticalAlignment="Bottom"/>
                            </Grid>

                            <!-- Triggers -->
                            <ControlTemplate.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter TargetName="NavButtonEllipse" Property="Fill">
                                        <Setter.Value>

                                            <RadialGradientBrush>
                                                <GradientStop Color="#19FFFFFF"/>
                                                <GradientStop Color="Transparent" Offset="1"/>
                                            </RadialGradientBrush>

                                        </Setter.Value>
                                    </Setter>
                                </Trigger>
                                <Trigger Property="IsPressed" Value="True">
                                    <Setter TargetName="NavButtonEllipse" Property="Fill">
                                        <Setter.Value>

                                            <RadialGradientBrush>
                                                <GradientStop Color="#33FFFFFF"/>
                                                <GradientStop Color="Transparent" Offset="1"/>
                                            </RadialGradientBrush>

                                        </Setter.Value>
                                    </Setter>
                                </Trigger>
                                <Trigger Property="IsEnabled" Value="False">
                                    <Setter TargetName="DisabledBorder" Property="Visibility" Value="Visible"/>
                                </Trigger>
                                <!--Change Opacity of button when disabled on Mobile Platforms-->
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled}" Value="False"/>
                                        <Condition Binding="{Binding IsMobile}" Value="True"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" Value="0.3"/>
                                </MultiDataTrigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>

            <Style x:Key="NavbarNotificationButtonStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource ButtonAudioStyle}">
                <Setter Property="Margin" Value="15,0,0,0"/>
                <Setter Property="Tag" Value="MenuCycleAudio"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type Button}">
                            <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Width="80" Height="80">
                                <Ellipse Name="NavButtonEllipse" Fill="Transparent" Visibility="{TemplateBinding Visibility}"/>
                                <Image x:Name="Highlight" Source="{StaticResource UI_Icon_Hexagon_Highlighter}"
                                   Visibility="{Binding (SharedScripts:AttachedProps.HighlightVisibility), RelativeSource={RelativeSource TemplatedParent},FallbackValue=hidden}"
                                   Width="72" Height="72" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                <Image Source="{Binding (SharedScripts:AttachedProps.PrimaryImage), RelativeSource={RelativeSource TemplatedParent}, FallbackValue={StaticResource UI_Icon_Notifications}}"
                                    Width="{Binding (SharedScripts:AttachedProps.ImageWidth), FallbackValue=48, RelativeSource={RelativeSource TemplatedParent}}"
                                    Height="{Binding (SharedScripts:AttachedProps.ImageHeight), FallbackValue=48, RelativeSource={RelativeSource TemplatedParent}}"/>
                                <Grid VerticalAlignment="Top"
                                      HorizontalAlignment="Right"
                                      Margin="15"
                                      Visibility="{Binding (SharedScripts:AttachedProps.NotificationVisibility), RelativeSource={RelativeSource TemplatedParent},FallbackValue=Visible}">
                                    <Ellipse Name="NotificationCount" Fill="{StaticResource UI_LinearGradient_Tag_Red}" Width="25" Height="25" />
                                    <TextBlock Text="{Binding (SharedScripts:AttachedProps.SecondaryText), RelativeSource={RelativeSource TemplatedParent}, FallbackValue=9}" 
                                        TextAlignment="Center"
                                        VerticalAlignment="Center"
                                        Foreground="{StaticResource WhiteFont}" 
                                        FontFamily="{StaticResource FontDefaultBold}"
                                        FontSize="{Binding FontSizeB14}"/>
                                </Grid>
                                <Border x:Name="DisabledBorder" Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" CornerRadius="5" Visibility="Collapsed"/>
                            </Grid>

                            <!-- Triggers -->
                            <ControlTemplate.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter TargetName="NavButtonEllipse" Property="Fill">
                                        <Setter.Value>

                                            <RadialGradientBrush>
                                                <GradientStop Color="#19FFFFFF"/>
                                                <GradientStop Color="Transparent" Offset="1"/>
                                            </RadialGradientBrush>

                                        </Setter.Value>
                                    </Setter>
                                </Trigger>
                                <Trigger Property="IsPressed" Value="True">
                                    <Setter TargetName="NavButtonEllipse" Property="Fill">
                                        <Setter.Value>

                                            <RadialGradientBrush>
                                                <GradientStop Color="#33FFFFFF"/>
                                                <GradientStop Color="Transparent" Offset="1"/>
                                            </RadialGradientBrush>

                                        </Setter.Value>
                                    </Setter>
                                </Trigger>
                                <Trigger Property="IsEnabled" Value="False">
                                    <Setter TargetName="DisabledBorder" Property="Visibility" Value="Visible"/>
                                </Trigger>
                                <!--Change Opacity of button when disabled on Mobile Platforms-->
                                <MultiDataTrigger>
                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled}" Value="False"/>
                                        <Condition Binding="{Binding IsMobile}" Value="True"/>
                                    </MultiDataTrigger.Conditions>
                                    <Setter Property="Opacity" Value="0.3"/>
                                </MultiDataTrigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>

            <!--#region Sidebar for Settings Tab Style (Can't be Globalized like other Sidebar styles because GoToNestedPanels will break) -->
            <Style x:Key="Sidebar_Settings" TargetType="{x:Type ContentControl}" BasedOn="{StaticResource Sidebar_ContentControl}">
                <Setter Property="TextBlock.FontFamily" Value="{StaticResource FontDefaultRegular}"/>
                <Setter Property="TextBlock.Foreground" Value="{StaticResource TextPrimaryBrush}"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type ContentControl}">
                            <!-- Sidebar -->
                            <Grid Name="Sidebar" HorizontalAlignment="Left" Width="{StaticResource MainPanelLeftBarWidth}">
                                <Rectangle RadiusX="12" RadiusY="12" Fill="{StaticResource UI_SecondaryColor}" />


                                <!--Sidebar buttons-->
                                <StackPanel Orientation="Vertical" HorizontalAlignment="Center" VerticalAlignment="Top">

                                    <UISharedComponents:C_SubNavBarButton
                                        Content="Gameplay" 
                                        ImageSrc="{StaticResource UI_Icon_Gamepad}" 
                                        ImageWidth="36"
                                        IsSelected="{Binding GameplayTabSelected, FallbackValue=True}"
                                        Height="68" 
                                        FontSize="{Binding FontSizeB16}"
                                        Margin="-24,6,0,6"
                                        HorizontalContentAlignment="Left">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledGameplayTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                    <Separator Background="{StaticResource UI_DividerHorizontal_Sidebar}" Margin="0" Visibility="{Binding IsGraphicsTabAvailable, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"/>

                                    <Rectangle Fill="{StaticResource UI_DividerHorizontal_Sidebar}" Width="150" Height="2" Margin="0"/>

                                    <!-- Make this visible in NonVr only -->
                                    <StackPanel Visibility="{Binding IsNonVr, Converter={StaticResource boolToVis}, FallbackValue=Visible}">
                                        <UISharedComponents:C_SubNavBarButton
                                            Content="Controls" 
                                            Visibility="{Binding IsPCNonVr, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"
                                            ImageSrc="{StaticResource UI_Icon_Keyboard}"
                                            ImageWidth="36"
                                            IsSelected="{Binding ControlsNonVRTabSelected, FallbackValue=True}"
                                            Height="68" 
                                            FontSize="{StaticResource FontSizeB16}"
                                            Margin="-24,6,0,6"
                                            HorizontalAlignment="Left"
                                            HorizontalContentAlignment="Left">
                                            <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Click">
                                                    <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                    <i:InvokeCommandAction Command="{Binding ToggledControlsNonVRTabCommand}"/>
                                                </i:EventTrigger>
                                            </i:Interaction.Triggers>
                                        </UISharedComponents:C_SubNavBarButton>

                                        <UISharedComponents:C_SubNavBarButton
                                            Content="Controls" 
                                            Visibility="{Binding IsUsingGamepad, Converter={StaticResource boolToVis},FallbackValue=Collapsed}"
                                            ImageSrc="{StaticResource UI_Icon_GameController}"
                                            ImageWidth="40"
                                            IsSelected="{Binding ControlsNonVRTabSelected, FallbackValue=True}"
                                            Height="68" 
                                            FontSize="{StaticResource FontSizeB16}"
                                            Margin="-24,6,0,6"
                                            HorizontalContentAlignment="Left">
                                            <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Click">
                                                    <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                    <i:InvokeCommandAction Command="{Binding ToggledControlsNonVRTabCommand}"/>
                                                </i:EventTrigger>
                                            </i:Interaction.Triggers>
                                        </UISharedComponents:C_SubNavBarButton>
                                        <Separator Background="{StaticResource UI_DividerHorizontal_Sidebar}" Margin="0" Visibility="{Binding IsNonVr, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"/>
                                    </StackPanel>

                                    <UISharedComponents:C_SubNavBarButton
                                        ImageSrc="{StaticResource UI_Icon_Image}" 
                                        Content="Graphics" 
                                        IsSelected="{Binding GraphicsTabSelected, FallbackValue=False}"
                                        SharedScripts:AttachedProps.ImageWidth="32" 
                                        FontFamily="{StaticResource FontDefaultRegular}" 
                                        FontSize="{Binding FontSizeB16}" 
                                        Margin="-24,6,0,6"
                                        ImageWidth="36"
                                        Height="68" 
                                        HorizontalContentAlignment="Left"
                                        Visibility="{Binding IsGraphicsTabAvailable, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledGraphicsTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                    <Rectangle Fill="{StaticResource UI_DividerHorizontal_Sidebar}" Width="150" Height="2" Margin="0"/>

                                    <UISharedComponents:C_SubNavBarButton
                                        ImageSrc="{StaticResource UI_Icon_MusicAndSound}" 
                                        IsSelected="{Binding AudioTabSelected, FallbackValue=False}"
                                        Content="Audio" 
                                        ImageWidth="36" 
                                        FontFamily="{StaticResource FontDefaultRegular}" 
                                        Margin="-24,6,0,6"
                                        FontSize="{Binding FontSizeB16}"
                                        Height="68" 
                                        HorizontalContentAlignment="Left">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledAudioTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                    <Rectangle Fill="{StaticResource UI_DividerHorizontal_Sidebar}" Width="150" Height="2" Margin="0"/>

                                    <UISharedComponents:C_SubNavBarButton
                                        ImageSrc="{StaticResource UI_Icon_Shield}"
                                        Content="Play Well&#x0a;tools" 
                                        IsSelected="{Binding PlayWellTabSelected, FallbackValue=False}"
                                        ImageWidth="36" 
                                        Margin="-24,6,0,6"
                                        FontSize="{Binding FontSizeB16}" 
                                        Height="68"
                                        HorizontalContentAlignment="Left">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledPlayWellTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                    <Rectangle Fill="{StaticResource UI_DividerHorizontal_Sidebar}" Width="150" Height="2" Margin="0"/>

                                    <UISharedComponents:C_SubNavBarButton
                                            ImageSrc="{StaticResource UI_Icon_Person_Circle}" 
                                            Content="Change &#x0a;avatar" 
                                            IsSelected="{Binding ChangeAvatarTabSelected, FallbackValue=False}"
                                            Visibility="{Binding IsLuckyAvatar, Converter={StaticResource InverseToVis}, FallbackValue=Collapsed}"
                                            ImageWidth="36" 
                                            Margin="-24,6,0,6"
                                            FontSize="{Binding FontSizeB16}" 
                                            Height="68" 
                                            HorizontalContentAlignment="Left">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledChangeAvatarTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                    <Rectangle Visibility="{Binding IsDeveloperTabAvailable, Converter={StaticResource boolToVis}}" Fill="{StaticResource UI_DividerHorizontal_Sidebar}" Width="150" Height="2" Margin="0"/>

                                    <UISharedComponents:C_SubNavBarButton
                                            Visibility="{Binding IsDeveloperTabAvailable, Converter={StaticResource boolToVis}}"
                                            ImageSrc="{StaticResource UI_Icon_SettingGear}" 
                                            Content="Developer" 
                                            IsSelected="{Binding DeveloperTabSelected, FallbackValue=False}"
                                            ImageWidth="36" 
                                            Margin="-24,6,0,6"
                                            FontSize="{Binding FontSizeB16}" 
                                            HorizontalAlignment="Left"
                                            Height="68" 
                                            HorizontalContentAlignment="Left">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledDeveloperTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                    <Rectangle Visibility="{Binding IsNotificationTabAvailable, Converter={StaticResource boolToVis}}" Fill="{StaticResource UI_DividerHorizontal_Sidebar}" Width="150" Height="2" Margin="0"/>

                                    <UISharedComponents:C_SubNavBarButton
         Visibility="{Binding IsNotificationTabAvailable, Converter={StaticResource boolToVis}}"
         ImageSrc="{StaticResource UI_Icon_Notification}" 
         Content="Notifications" 
         IsSelected="{Binding NotificationTabSelected, FallbackValue=False}"
         ImageWidth="36" 
         Margin="-24,6,0,6"
         FontSize="{Binding FontSizeB14}" 
         HorizontalAlignment="Left"
         Height="68" 
         HorizontalContentAlignment="Left">
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding SetCurrentNestedPanelToNotAvatarsPanelCommand}"/>
                                                <i:InvokeCommandAction Command="{Binding ToggledNotificationTabCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </UISharedComponents:C_SubNavBarButton>

                                </StackPanel>

                                <!--Game review and quit buttons-->
                                <StackPanel Orientation="Vertical" VerticalAlignment="Bottom">

                                    <Grid Margin="0,95,0,95">

                                        <Button Style="{StaticResource ButtonTextIconStyle}" 
                                                Command="{Binding ToggledGameReviewTabCommand}"
                                                CommandParameter="Panel_Settings_GameReview" 
                                                Padding="0,6"
                                                Width="176"
                                                Height="60"
                                                FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                                                SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Heart}" 
                                                FontFamily="{StaticResource FontDefaultRegular}"
                                                FontSize="{Binding FontSizeB16}"
                                                Content="Leave a &#x0a;review"
                                                SharedScripts:AttachedProps.ImageWidth="32"
                                                SharedScripts:AttachedProps.ImageOpacity="0.7"
                                                HorizontalContentAlignment="Left"
                                                SharedScripts:AttachedProps.ImageMargin="-40,0,12,0"   
                                                SharedScripts:AttachedProps.PrimaryBackground="{StaticResource UI_ReviewButtonBG}"                                                
                                                SharedScripts:AttachedProps.HighlightBackground="{StaticResource Lucky_ReviewHighlightColor}"                                                
                                                SharedScripts:AttachedProps.ClickStateBackground="{StaticResource UI_LinearGradient_GameCardSecondary}"                                                
                                                SharedScripts:AttachedProps.DisabledStateBackground="{StaticResource ButtonDisabledBrush}"                                                
                                                Visibility="{Binding IsReviewTabAvailable, Converter={StaticResource boolToVis}}"
                                                Foreground="#7FADC8FF" 
                                                HorizontalAlignment="Center" 
                                                VerticalAlignment="Center"
                                                 />
                                    </Grid>
                                </StackPanel>

                                <Grid x:Name="DisabledOverlay" Style="{StaticResource DisabledSidebarOverlayGrid}"/>
                            </Grid>
                            <ControlTemplate.Triggers>
                                <Trigger Property="IsEnabled" Value="False">
                                    <Setter TargetName="DisabledOverlay" Property="Visibility" Value="Visible"/>
                                </Trigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
            <!--#endregion-->

            <!--Quit Game Button-->
            <Style x:Key="QuitButton" BasedOn="{StaticResource ButtonAudioStyle}" TargetType="{x:Type Button}">
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="Button">
                            <Grid>
                                <Rectangle x:Name="Background" Width="176" Height="64" RadiusX="6" RadiusY="6">
                                    <Rectangle.Fill>
                                        <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
                                            <GradientStop Color="#411E37" Offset="0"/>
                                            <GradientStop Color="#0E0D21" Offset="1"/>
                                        </LinearGradientBrush>
                                    </Rectangle.Fill>
                                </Rectangle>
                                <StackPanel Orientation="Horizontal" Margin="14,0,0,0">
                                    <Rectangle Width="32" Height="32" Margin="0,0,12,0">
                                        <Rectangle.Fill>
                                            <ImageBrush ImageSource="{StaticResource UI_Icon_TurnOff}"/>
                                        </Rectangle.Fill>
                                    </Rectangle>
                                    <TextBlock x:Name="QuitText" Text="Quit game" FontSize="{Binding FontSizeB16}" Foreground="#4CFFFFFF" FontFamily="{StaticResource FontDefaultRegular}" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                </StackPanel>
                            </Grid>
                            <ControlTemplate.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter Property="Fill" TargetName="Background">
                                        <Setter.Value>
                                            <LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,1">
                                                <GradientStop Color="#582943" Offset="0"/>
                                                <GradientStop Color="#1D0D21" Offset="1"/>
                                            </LinearGradientBrush>
                                        </Setter.Value>
                                    </Setter>
                                </Trigger>
                                <Trigger Property="IsEnabled" Value="False">
                                    <Setter Property="Fill" TargetName="Background" Value="{StaticResource LinearGradient_Disabled_Grey}"/>
                                    <Setter TargetName="QuitText" Property="Foreground" Value="{StaticResource TextDarkBrush}"/>
                                </Trigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>

            <!--Style for Location button. Positioned here since it won't appear properly if placed in ButtonStyles RD-->
            <Style x:Key="LocationButtonStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource ButtonAudioStyle}">
                <Setter Property="Tag" Value="MenuCycleAudio"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type Button}">
                            <Border x:Name="MainBorder" HorizontalAlignment="Center" VerticalAlignment="Center" MinWidth="138" Height="64" Padding="10,0" CornerRadius="5" Background="{StaticResource Lucky_SecondaryDefaultColor}">
                                <Grid>
                                    <Grid>
                                        <Grid.RowDefinitions>
                                            <RowDefinition/>
                                            <RowDefinition Height="0*"/>
                                        </Grid.RowDefinitions>
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="Auto"/>
                                            <ColumnDefinition Width="*"/>
                                        </Grid.ColumnDefinitions>
                                        <Image  Source="{StaticResource UI_Icon_LocationMarker}" Width="24" Height="24" VerticalAlignment="Center" Margin="0,0,10,0"/>
                                        <TextBlock Grid.Column="1" x:Name="ButtonText" Text="{Binding (SharedScripts:AttachedProps.PrimaryText), RelativeSource={RelativeSource TemplatedParent}, FallbackValue=Location}"
                                               Foreground="{StaticResource TextWhiteWith80PercentOpacity}" FontSize="{Binding (SharedScripts:AttachedProps.TextFontSize), RelativeSource={RelativeSource TemplatedParent}, FallbackValue={StaticResource FontSizeB16}}" FontFamily="{StaticResource FontDefaultRegular}" VerticalAlignment="Center"/>
                                    </Grid>
                                    <Border x:Name="Highlight" Background="{StaticResource Button_BottomHighlight}" CornerRadius="6,6,1,1" Height="6" Margin="7,0" VerticalAlignment="Bottom" HorizontalAlignment="Stretch"
                                            Visibility="{Binding (SharedScripts:AttachedProps.HighlightVisibility), RelativeSource={RelativeSource TemplatedParent},FallbackValue=hidden}" d:Visibility="Visible"/>
                                </Grid>
                            </Border>

                            <!-- Triggers -->
                            <ControlTemplate.Triggers>
                                <Trigger Property="IsMouseOver" Value="True">
                                    <Setter TargetName="MainBorder" Property="Background" Value="{StaticResource Lucky_SecondaryHoverColor}"/>
                                    <Setter TargetName="ButtonText" Property="Foreground" Value="{StaticResource TextPrimaryBrush}"/>
                                </Trigger>
                                <Trigger Property="IsPressed" Value="True">
                                    <Setter TargetName="MainBorder" Property="Background" Value="{StaticResource Lucky_SecondaryClickColor}"/>
                                    <Setter TargetName="ButtonText" Property="Foreground" Value="{StaticResource TextPrimaryBrush}"/>
                                    <Setter TargetName="ButtonText" Property="FontFamily" Value="{StaticResource FontDefaultBold}"/>
                                </Trigger>
                                <Trigger SourceName="Highlight" Property="Visibility" Value="Visible">
                                    <Setter TargetName="MainBorder" Property="Background" Value="{StaticResource Lucky_SecondaryHighlightColor}"/>
                                    <Setter TargetName="ButtonText" Property="FontFamily" Value="{StaticResource FontDefaultBold}"/>
                                    <Setter TargetName="ButtonText" Property="Foreground" Value="{StaticResource TextPrimaryBrush}"/>
                                </Trigger>
                            </ControlTemplate.Triggers>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>

            <Style x:Key="SetTransparentButtonImageOnDisable" TargetType="{x:Type Button}" BasedOn="{StaticResource Button_Image}">
                <Style.Triggers>
                    <!--Change Opacity of button when disabled on Mobile Platforms-->
                    <MultiDataTrigger>
                        <MultiDataTrigger.Conditions>
                            <Condition Binding="{Binding DisableSideButtons}" Value="True"/>
                            <Condition Binding="{Binding IsMobile}" Value="True"/>
                        </MultiDataTrigger.Conditions>
                        <Setter Property="Opacity" Value="0.3"/>
                    </MultiDataTrigger>
                </Style.Triggers>
            </Style>
        </ResourceDictionary>
    </UserControl.Resources>
    <Grid x:Name="BaseContainer" Focusable="False" Style="{StaticResource FocusContainer}">
        <!--Detach UI Handle-->
        <Grid VerticalAlignment="Top" ClipToBounds="False" HorizontalAlignment="Center" RenderTransformOrigin="0.5,0.5" Panel.ZIndex="2" Margin="-780,21,0,0"
              DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
              Focusable="False"
              Visibility="{Binding IsNonVr, Converter={StaticResource InverseToVisConverter}, FallbackValue=Visible}"
              >
            <!--Default state-->
            <Image Source="{StaticResource UI_Icon_DetachHandle}" Focusable="False" Visibility="{Binding BreakoutRelayVisibility,FallbackValue=Visible}"  Width="274" VerticalAlignment="Bottom"/>
            <!--Pull up state-->
            <Grid Width="289" RenderTransformOrigin="0.5,0.5" Visibility="{Binding PullUpIconVisibility, FallbackValue=Collapsed}" Focusable="False">
                <!--Arrows left-->
                <Grid HorizontalAlignment="Left" Focusable="False">
                    <!--Arrow-->
                    <Rectangle Fill="#a1c1ff" Width="40" Height="40" HorizontalAlignment="Left" Margin="4,0,0,0" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Bottom" Focusable="False">
                        <Rectangle.RenderTransform>
                            <TransformGroup>
                                <RotateTransform Angle="180"/>
                            </TransformGroup>
                        </Rectangle.RenderTransform>
                        <Rectangle.OpacityMask>
                            <ImageBrush ImageSource="{StaticResource UI_Icon_Arrow_Down}"/>
                        </Rectangle.OpacityMask>
                    </Rectangle>
                    <!--Arrow-->
                    <Rectangle Fill="#a1c1ff" Width="40" Height="40" HorizontalAlignment="Left" Margin="4,0,0,20" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Bottom" Focusable="False">
                        <Rectangle.RenderTransform>
                            <TransformGroup>
                                <ScaleTransform/>
                                <SkewTransform/>
                                <RotateTransform Angle="180"/>
                                <TranslateTransform/>
                            </TransformGroup>
                        </Rectangle.RenderTransform>
                        <Rectangle.OpacityMask>
                            <ImageBrush ImageSource="{StaticResource UI_Icon_Arrow_Down}"/>
                        </Rectangle.OpacityMask>
                    </Rectangle>
                </Grid>
                <!--Arrows right-->
                <Grid HorizontalAlignment="Right" Focusable="False">
                    <!--Arrow-->
                    <Rectangle Fill="#a1c1ff" Width="40" Height="40" HorizontalAlignment="Left" Margin="4,0,0,0" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Bottom" Focusable="False">
                        <Rectangle.RenderTransform>
                            <TransformGroup>
                                <RotateTransform Angle="180"/>
                            </TransformGroup>
                        </Rectangle.RenderTransform>
                        <Rectangle.OpacityMask>
                            <ImageBrush ImageSource="{StaticResource UI_Icon_Arrow_Down}"/>
                        </Rectangle.OpacityMask>
                    </Rectangle>
                    <!--Arrow-->
                    <Rectangle Fill="#a1c1ff" Width="40" Height="40" HorizontalAlignment="Left" Margin="4,0,0,20" RenderTransformOrigin="0.5,0.5" VerticalAlignment="Bottom" Focusable="False">
                        <Rectangle.RenderTransform>
                            <TransformGroup>
                                <ScaleTransform/>
                                <SkewTransform/>
                                <RotateTransform Angle="180"/>
                                <TranslateTransform/>
                            </TransformGroup>
                        </Rectangle.RenderTransform>
                        <Rectangle.OpacityMask>
                            <ImageBrush ImageSource="{StaticResource UI_Icon_Arrow_Down}"/>
                        </Rectangle.OpacityMask>
                    </Rectangle>
                </Grid>
                <Image Source="{StaticResource UI_Icon_DetachHandle_Blue}" VerticalAlignment="Bottom" Focusable="False"/>
            </Grid>
            <!--Recouple state-->
            <Grid Width="287" Height="58" Visibility="{Binding RecoupleUIVisibility, FallbackValue= Collapsed}" Panel.ZIndex="3" Focusable="False">
                <!--Arrow-->
                <Rectangle Fill="#949494" Width="40" Height="40" HorizontalAlignment="Left" Margin="0,-2,0,0">
                    <Rectangle.OpacityMask>
                        <ImageBrush ImageSource="{StaticResource UI_Icon_Arrow_Down}"/>
                    </Rectangle.OpacityMask>
                </Rectangle>
                <!--Arrow-->
                <Rectangle Fill="#949494" Width="40" Height="40" HorizontalAlignment="Right" Margin="0,-2,0,0" Focusable="False">
                    <Rectangle.OpacityMask>
                        <ImageBrush ImageSource="{StaticResource UI_Icon_Arrow_Down}"/>
                    </Rectangle.OpacityMask>
                </Rectangle>
                <TextBlock Text="RECOUPLE" FontFamily="{StaticResource FontDefaultBold}" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="22" Foreground="#FF949494" Focusable="False"/>
                <!--Underline-->
                <Rectangle Fill="#FF404040" RadiusX="2.5" RadiusY="2.5" Height="7" VerticalAlignment="Bottom" Focusable="False"/>
                <Button Width="287" Height="58"
                        Background="{x:Null}"
                        Command="{Binding ReattachUICommand}"
                        Style="{StaticResource ButtonBaseStyle}"
                        Focusable="False"
                        IsEnabled="{Binding ReattachUICommandEnabled, FallbackValue = false}"/>
            </Grid>
        </Grid>

        <!--Watch Menu-->
        <Grid x:Name="MainPanelContainer" 
              IsHitTestVisible="{Binding IsWristUI_InputEnabled, FallbackValue=True}" RenderTransformOrigin="0.5,0.5" HorizontalAlignment="Center" 
              Width="{StaticResource WatchMaxWidth}" Margin="{StaticResource MainPanelMargin}"
              Focusable="False">
            <Grid.RowDefinitions>
                <RowDefinition Height="{StaticResource NavBarContainerHeight}"/>
                <RowDefinition Height="{StaticResource MainPanelHeight_GridLength}"/>
                <RowDefinition Height="{StaticResource ToasterContainerHeight}"/>
            </Grid.RowDefinitions>
            <Grid.LayoutTransform>
                <TransformGroup>
                    <ScaleTransform ScaleX="0.85" ScaleY="0.85"/>
                </TransformGroup>
            </Grid.LayoutTransform>

            <!-- Fixed Top Bar -->
            <Grid x:Name="NavBarContainer" HorizontalAlignment="Left" Margin="0,0,0,10" ClipToBounds="False" Background="Transparent" Panel.ZIndex="10" Focusable="False">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="390"/>
                    <ColumnDefinition Width="*" MinWidth="800"/>
                    <ColumnDefinition Width="Auto" MinWidth="400" />
                </Grid.ColumnDefinitions>
                <!-- Nav Bar -->
                <Grid Height="80" VerticalAlignment="Bottom">
                    <Image d:Visibility="Visible" Source="{StaticResource PS5_Legend_L1}" Visibility="{Binding IsPlaystationNonVR, Converter={StaticResource BoolToVis_Hidden}}" HorizontalAlignment="Right" Height="65" Margin="0,0,24,0" Focusable="False"/>
                </Grid>
                <StackPanel
                    Grid.Column="1" Orientation="Horizontal"
                    HorizontalAlignment="Left" VerticalAlignment="Bottom"
                    Focusable="False"
                    FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}">

                    <Button Style="{StaticResource NavbarButtonStyle}"
                        IsEnabled="{Binding NavButtonEnabled}"
                        SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Home}"
                        SharedScripts:AttachedProps.ImageWidth="48"
                        SharedScripts:AttachedProps.ImageHeight="48"
                        Margin="0,0,2,0"
                        SharedScripts:AttachedProps.HighlightVisibility="{Binding GamesPanelIsSelected, Converter={StaticResource boolToVis},FallbackValue=Visible}" 
                        Width="72" Height="72">
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Games"/>
                                <i:InvokeCommandAction Command="{Binding SelectGamesPanelCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>

                    <!--Stash button-->
                    <Grid>
                        <Button Style="{StaticResource NavbarButtonStyle}"
                            IsEnabled="{Binding NavButtonEnabled}"
                            SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Stash}"
                            SharedScripts:AttachedProps.ImageWidth="48"
                            SharedScripts:AttachedProps.ImageHeight="48"
                            Margin="2,0"
                            Width="72" Height="72"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding StashPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <!--<i:InvokeCommandAction Command="{Binding GoToNGUIPanelCommand}" CommandParameter="Panel_Stash"/>-->

                                    <!--TODO: Invoke call to the New Stash UI post integration & remove call to NGUIPanel!-->
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Stash"/>
                                    <i:InvokeCommandAction Command="{Binding SelectStashPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                    </Grid>


                    <!--Store button-->

                    <Grid Height="80" Width="80">
                        <Canvas Margin="-10,-60" HorizontalAlignment="Left" VerticalAlignment="Top">
                            <Image Source="{StaticResource UI_Icon_Reloaded_Store}" 
                                DataContext="{Binding ElementName=NavBarContainer, Path=DataContext}"
                                Visibility="{Binding IsStoreReloaded, Converter={StaticResource boolToVis}, FallbackValue=Visible}" 
                                Width="100"/>
                        </Canvas>
                        <Button Style="{StaticResource NavbarButtonStyle}"
                                IsEnabled="{Binding NavButtonEnabled}"
                                SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Store}"
                                SharedScripts:AttachedProps.ImageWidth="48"
                                SharedScripts:AttachedProps.ImageHeight="48"
                                SharedScripts:AttachedProps.ImageMargin="0,0,0,0"
                                Width="72" Height="72"
                                Margin="2,0"
                                SharedScripts:AttachedProps.HighlightVisibility="{Binding StorePanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Store"/>
                                    <i:InvokeCommandAction Command="{Binding SelectStorePanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                    </Grid>

                    <Button Style="{StaticResource NavbarButtonStyle}"
                            IsEnabled="{Binding NavButtonEnabled}"
                            SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Social}"
                            SharedScripts:AttachedProps.ImageWidth="48"
                            SharedScripts:AttachedProps.ImageHeight="48"
                            Width="72" Height="72"
                            Margin="2,0"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding SocialPanelIsSelected, Converter={StaticResource boolToVis}}">
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Social"/>
                                <i:InvokeCommandAction Command="{Binding SelectSocialPanelCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>

                    <Button Style="{StaticResource NavbarButtonStyle}"
                            IsEnabled="{Binding NavButtonEnabled}"
                            SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Leaderboard}"
                            SharedScripts:AttachedProps.ImageWidth="48"
                            SharedScripts:AttachedProps.ImageHeight="48"
                            Width="72" Height="72"
                            Margin="2,0"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LeaderboardsPanelIsSelected, Converter={StaticResource boolToVis}}">
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Leaderboards"/>
                                <i:InvokeCommandAction Command="{Binding SelectLeaderboardPanelCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>

                    <Button 
                            Style="{StaticResource NavbarButtonStyle}" 
                            IsEnabled="{Binding NavButtonEnabled}"
                            SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_Settings}"
                            SharedScripts:AttachedProps.ImageWidth="48"
                            SharedScripts:AttachedProps.ImageHeight="48"
                            Width="72" Height="72"
                            SharedScripts:AttachedProps.ImageMargin="0,0,0,0"
                            Margin="2,0"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding SettingsPanelIsSelected, Converter={StaticResource boolToVis}}">
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Settings"/>
                                <i:InvokeCommandAction Command="{Binding SelectSettingsPanelCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>

                    <Button
                        Style="{StaticResource NavbarButtonStyle}" 
                            IsEnabled="{Binding CanShowAvatarNavButton}"
                            SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_AvatarCustomizer}"
                            SharedScripts:AttachedProps.ImageWidth="48"
                            SharedScripts:AttachedProps.ImageHeight="48"
                            Width="72" Height="72"
                            Margin="2,0,0,0"
                            SharedScripts:AttachedProps.ImageMargin="0,0,0,0"
                            Visibility="{Binding IsLuckyAvatar, Converter={StaticResource boolToVis}, FallbackValue=Visible}"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding CustomizePanelIsSelected, Converter={StaticResource boolToVis}}">
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_CustomizeAvatar"/>
                                <i:InvokeCommandAction Command="{Binding SelectCustomizerPanelCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>

                    <Button Style="{StaticResource NavbarNotificationButtonStyle}" 
                            IsEnabled="{Binding NavButtonEnabled}"
                            Focusable="False"
                            SharedScripts:AttachedProps.PrimaryImage = "{StaticResource UI_Icon_Notifications}"
                            SharedScripts:AttachedProps.ImageWidth="48"
                            SharedScripts:AttachedProps.ImageHeight="48"
                            Width="72" Height="72"
                            Margin="2,0,12,0"
                            SharedScripts:AttachedProps.ImageMargin="0,0,0,0"
                            SharedScripts:AttachedProps.SecondaryText="{Binding NavNotificationCount, FallbackValue=-}"
                            SharedScripts:AttachedProps.NotificationVisibility="{Binding CanShowNotificationIndicator, Converter={StaticResource boolToVis}, FallbackValue=Visible}"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding NotificationsPanelIsSelected, Converter={StaticResource boolToVis}}" IsManipulationEnabled="True">
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Notifications"/>
                                <i:InvokeCommandAction Command="{Binding SelectNotificationPanelCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>

                    <!-- Right margin is added to create space for the R1 navigation label on PlayStation-->
                    <StackPanel Margin="0,0,25,0" Orientation="Horizontal" IsEnabled="{Binding NavButtonEnabled}" Visibility="{Binding LocationButtonVisible, Converter={StaticResource boolToVis}, FallbackValue=Visible}" Focusable="False">
                        <Button x:Name="Panel_Slots_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed" d:Visibility="Visible"
                            SharedScripts:AttachedProps.PrimaryText="Slots Floor"
                            SharedScripts:AttachedProps.TextFontSize="15"
                            Focusable="False"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Slots_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_Poker_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Poker"
                                Focusable="False"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Poker_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_MTT_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Poker"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Poker_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_Casino_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="{Binding CasinoFloorName, FallbackValue='CASINO ; ONE FLOOR'}"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}"
                                Focusable="False"
                            SharedScripts:AttachedProps.TextFontSize="{Binding FontSizeB14}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Casino_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_Roulette_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Roulette"
                                Focusable="False"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Roulette_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_Craps_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Craps"
                                Focusable="False"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Craps_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_Blackjack_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Blackjack"
                                Focusable="False"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Blackjack_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_Baccarat_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Baccarat"
                                Focusable="False"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Baccarat_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                        <Button x:Name="Panel_RocketRush_General_Nav" Style="{StaticResource LocationButtonStyle}" Visibility="Collapsed"
                            SharedScripts:AttachedProps.PrimaryText="Rocket Rush"
                                Focusable="False"
                            SharedScripts:AttachedProps.TextFontSize="{Binding FontSizeB14}"
                            SharedScripts:AttachedProps.HighlightVisibility="{Binding LocationPanelIsSelected, Converter={StaticResource boolToVis}}">
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_RocketRush_General"/>
                                    <i:InvokeCommandAction Command="{Binding SelectLocationPanelCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>
                    </StackPanel>
                    <Image  Source="{StaticResource PS5_Legend_R1}" Visibility="{Binding IsPlaystationNonVR, Converter={StaticResource boolToVis}}" Height="65" Focusable="False"/>
                </StackPanel>


                <!-- Chips/Creds -->
                <Grid Grid.Column="2" Focusable="False" HorizontalAlignment="Right">
                    <StackPanel DataContext="{Binding ElementName=Panel_Store, Path=DataContext}"
                            Visibility="{Binding PokerTutorialEnabled, Converter={StaticResource InverseToVis}, FallbackValue=Visible}"
                            IsEnabled="{Binding NavButtonEnabled}"
                            Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0,93,0,0" ClipToBounds="False" Height="56"
                                Focusable="False"
                                >
                        <StackPanel.Style>
                            <Style TargetType="{x:Type StackPanel}">
                                <Style.Triggers>
                                    <!--Change Opacity of button when disabled on Mobile Platforms-->
                                    <MultiDataTrigger>
                                        <MultiDataTrigger.Conditions>
                                            <Condition Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled}" Value="False"/>
                                            <Condition Binding="{Binding IsMobile}" Value="True"/>
                                        </MultiDataTrigger.Conditions>
                                        <Setter Property="Opacity" Value="0.3"/>
                                    </MultiDataTrigger>
                                </Style.Triggers>
                            </Style>
                        </StackPanel.Style>
                        <!--Add chips button-->
                        <Grid HorizontalAlignment="Right">
                            <Button x:Name="BuyChips"
                                    SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                    FocusVisualStyle="{x:Null}"
                                    IsEnabled="{Binding AllowIAP, FallbackValue=True}" Background="{x:Null}" Padding="15,10" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"
                                    >
                                <Button.Style>
                                    <Style TargetType="Button" BasedOn="{StaticResource ButtonBaseStyle}">
                                        <Setter Property="Focusable" Value="True"/>
                                        <Style.Triggers>
                                            <DataTrigger Binding="{Binding GamesPanelIsSelected}" Value="False">
                                                <Setter Property="Focusable" Value="False"/>
                                            </DataTrigger>
                                        </Style.Triggers>
                                    </Style>
                                </Button.Style>
                                <i:Interaction.Triggers>
                                    <i:EventTrigger EventName="Click">
                                        <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Store"/>
                                        <i:InvokeCommandAction Command="{Binding ToggleChipsAndCredsTabCommand}"/>
                                        <i:InvokeCommandAction Command="{Binding ChipsSubTabSelectedCommand}"/>
                                        <i:InvokeCommandAction Command="{Binding OnChipButtonPressedCommand}"/>
                                    </i:EventTrigger>
                                </i:Interaction.Triggers>
                                <Grid HorizontalAlignment="Right">
                                    <StackPanel Orientation="Horizontal">
                                        <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Width="35" Height="35" Margin="0,0,12,0">
                                            <!--Main fill gardient-->
                                            <Rectangle RadiusX="4" RadiusY="4" >
                                                <Rectangle.Stroke>
                                                    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                                        <GradientStop Color="Transparent" Offset="1"/>
                                                        <GradientStop Color="White" Offset="0"/>
                                                    </LinearGradientBrush>
                                                </Rectangle.Stroke>
                                                <Rectangle.Fill>
                                                    <RadialGradientBrush RadiusY="1.28" RadiusX="1.2" Center="0,0" GradientOrigin="0.258,0">
                                                        <GradientStop Color="#2AFFBF"/>
                                                        <GradientStop Color="#FF1720FF" Offset="1"/>
                                                    </RadialGradientBrush>
                                                </Rectangle.Fill>
                                            </Rectangle>
                                            <!--Bottom purple-->
                                            <Rectangle RadiusX="4" RadiusY="4">
                                                <Rectangle.Fill>
                                                    <RadialGradientBrush RadiusY="1" RadiusX="1" Center="0.5,1" GradientOrigin="0.5,1" Opacity="0.4">
                                                        <RadialGradientBrush.Transform>
                                                            <TransformGroup>
                                                                <ScaleTransform/>
                                                                <SkewTransform/>
                                                                <RotateTransform Angle="0"/>
                                                                <TranslateTransform/>
                                                            </TransformGroup>
                                                        </RadialGradientBrush.Transform>
                                                        <GradientStop Color="#9F08FD"/>
                                                        <GradientStop Color="#116C96" Offset="0.523"/>
                                                    </RadialGradientBrush>
                                                </Rectangle.Fill>
                                            </Rectangle>
                                            <!--Inner glow-->
                                            <Rectangle Stroke="#262AFEFF" StrokeThickness="3" ClipToBounds="True" RadiusX="4" RadiusY="4">
                                                <Rectangle.Effect>
                                                    <Effects:BlurEffect Radius="12" RenderingBias="Performance" KernelType="Gaussian" />
                                                </Rectangle.Effect>
                                            </Rectangle>
                                            <Grid HorizontalAlignment="Center">
                                                <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
                                                    <!--Icon-->
                                                    <Rectangle Width="17" Height="17" HorizontalAlignment="Center">
                                                        <Rectangle.Fill>
                                                            <ImageBrush ImageSource="{StaticResource UI_Icon_Plus}"/>
                                                        </Rectangle.Fill>
                                                    </Rectangle>
                                                </StackPanel>
                                            </Grid>
                                            <!--Top shine-->
                                            <Rectangle Width="26" Height="9" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,-4,0,0" >
                                                <Rectangle.Fill>
                                                    <RadialGradientBrush RadiusX="1.5" RadiusY="0.75" Opacity="0.8">
                                                        <GradientStop Color="White"/>
                                                        <GradientStop Offset="0.352"/>
                                                    </RadialGradientBrush>
                                                </Rectangle.Fill>
                                            </Rectangle>
                                        </Grid>
                                        <Image Source="{StaticResource UI_Icon_Chips_Main}" Width="36" Height="36" Margin="0,0,8,0" />
                                        <TextBlock Text="{Binding ChipsBankroll, FallbackValue='-', TargetNullValue='-'}" 
                                VerticalAlignment="Center" Foreground="White"
                                FontSize="{Binding FontSizeH20}"  
                                DataContext="{Binding ElementName=NavBarContainer, Path=DataContext}"/>
                                    </StackPanel>
                                </Grid>
                            </Button>
                            <Button x:Name="ChipsSaleButton"
                                    d:Visibility="Visible"
                                    Command="{Binding GoToSaleCommand}"
                                    HorizontalAlignment="Left" 
                                    Height="100" Width="150"
                                    Margin="0,-150,0,0" 
                                    DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                                    SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                    Background="Transparent">
                                <Image Source="{Binding ChipSaleImage, FallbackValue={StaticResource UI_Image_BlackFridaySaleToaster}}" />
                                <Button.Style>
                                    <Style TargetType="Button" BasedOn="{StaticResource Button_Image}">
                                        <Setter Property="Visibility" Value="Collapsed"/>
                                        <Style.Triggers>
                                            <DataTrigger Binding="{Binding IsMobile}" Value="False">
                                                <Setter Property="Visibility" Value="{Binding ChipSaleImageVisibility, FallbackValue=Visible}"/>
                                            </DataTrigger>
                                        </Style.Triggers>
                                    </Style>
                                </Button.Style>
                            </Button>
                        </Grid>

                        <!--Add creds button-->
                        <Grid>
                            <Button x:Name="BuyCreds"
                                    Style="{StaticResource ButtonBaseStyle}"
                                    SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                    FocusVisualStyle="{x:Null}"
                                    IsEnabled="{Binding AllowIAP, FallbackValue=True}"
                                    Background="{x:Null}"
                                    Padding="15,10"
                                    HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch"
                                    >
                                <i:Interaction.Triggers>
                                    <i:EventTrigger EventName="Click">
                                        <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Store"/>
                                        <i:InvokeCommandAction Command="{Binding ToggleChipsAndCredsTabCommand}"/>
                                        <i:InvokeCommandAction Command="{Binding CredsSubTabSelectedCommand}"/>
                                    </i:EventTrigger>
                                </i:Interaction.Triggers>
                                <Grid>
                                    <StackPanel Orientation="Horizontal">
                                        <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Width="35" Height="35" Margin="0,0,12,0">
                                            <!--Main fill gardient-->
                                            <Rectangle RadiusX="4" RadiusY="4" >
                                                <Rectangle.Stroke>
                                                    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                                                        <GradientStop Color="Transparent" Offset="1"/>
                                                        <GradientStop Color="White" Offset="0"/>
                                                    </LinearGradientBrush>
                                                </Rectangle.Stroke>
                                                <Rectangle.Fill>
                                                    <RadialGradientBrush RadiusY="1.28" RadiusX="1.2" Center="0,0" GradientOrigin="0.258,0">
                                                        <GradientStop Color="#2AFFBF"/>
                                                        <GradientStop Color="#FF1720FF" Offset="1"/>
                                                    </RadialGradientBrush>
                                                </Rectangle.Fill>
                                            </Rectangle>
                                            <!--Bottom purple-->
                                            <Rectangle RadiusX="4" RadiusY="4">
                                                <Rectangle.Fill>
                                                    <RadialGradientBrush RadiusY="1" RadiusX="1" Center="0.5,1" GradientOrigin="0.5,1" Opacity="0.4">
                                                        <RadialGradientBrush.Transform>
                                                            <TransformGroup>
                                                                <ScaleTransform/>
                                                                <SkewTransform/>
                                                                <RotateTransform Angle="0"/>
                                                                <TranslateTransform/>
                                                            </TransformGroup>
                                                        </RadialGradientBrush.Transform>
                                                        <GradientStop Color="#9F08FD"/>
                                                        <GradientStop Color="#116C96" Offset="0.523"/>
                                                    </RadialGradientBrush>
                                                </Rectangle.Fill>
                                            </Rectangle>
                                            <!--Inner glow-->
                                            <Rectangle Stroke="#262AFEFF" StrokeThickness="3" ClipToBounds="True" RadiusX="4" RadiusY="4">
                                                <Rectangle.Effect>
                                                    <Effects:BlurEffect Radius="12" RenderingBias="Performance" KernelType="Gaussian" />
                                                </Rectangle.Effect>
                                            </Rectangle>
                                            <Grid HorizontalAlignment="Center">
                                                <StackPanel Orientation="Horizontal" VerticalAlignment="Center">
                                                    <!--Icon-->
                                                    <Rectangle Width="17" Height="17" HorizontalAlignment="Center">
                                                        <Rectangle.Fill>
                                                            <ImageBrush ImageSource="{StaticResource UI_Icon_Plus}"/>
                                                        </Rectangle.Fill>
                                                    </Rectangle>
                                                </StackPanel>
                                            </Grid>
                                            <!--Top shine-->
                                            <Rectangle Width="26" Height="9" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,-4,0,0" >
                                                <Rectangle.Fill>
                                                    <RadialGradientBrush RadiusX="1.5" RadiusY="0.75" Opacity="0.8">
                                                        <GradientStop Color="White"/>
                                                        <GradientStop Offset="0.352"/>
                                                    </RadialGradientBrush>
                                                </Rectangle.Fill>
                                            </Rectangle>
                                        </Grid>
                                        <Image DataContext="{Binding ElementName=NavBarContainer, Path=DataContext}" Source="{Binding CredsIcon, FallbackValue={StaticResource UI_Icon_Cred}}" Width="36" Height="36" Margin="0,0,8,0" />
                                        <TextBlock Text="{Binding CredsBankroll, FallbackValue='-', TargetNullValue='-'}" 
                                    VerticalAlignment="Center" Foreground="{Binding CredsTextColor, Converter={StaticResource ColorConverter}, FallbackValue=White, TargetNullValue=White}" 
                                    FontSize="{Binding FontSizeH20}"  
                                    DataContext="{Binding ElementName=NavBarContainer, Path=DataContext}"/>

                                    </StackPanel>
                                </Grid>
                            </Button>
                            <Image DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                                   Source="{StaticResource UI_Image_HappyHourToaster}"
                                   HorizontalAlignment="Left"
                                   Width="150" Height="100"
                                   Margin="0,-150,0,0"
                                   d:Visibility="Visible"
                                   Focusable="False"
                                   >
                                <Image.Style>
                                    <Style TargetType="FrameworkElement">
                                        <Setter Property="Visibility" Value="Collapsed"/>
                                        <Style.Triggers>
                                            <MultiDataTrigger>
                                                <MultiDataTrigger.Conditions>
                                                    <Condition Binding="{Binding IsMobile}" Value="False"/>
                                                </MultiDataTrigger.Conditions>
                                                <Setter Property="Visibility" Value="{Binding HappyHourImageVisibility, FallbackValue=Visible}"/>
                                            </MultiDataTrigger>
                                        </Style.Triggers>
                                    </Style>
                                </Image.Style>
                            </Image>
                        </Grid>
                    </StackPanel>
                    <Border x:Name="DisabledBorder" Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" CornerRadius="5" Height="80" VerticalAlignment="Bottom"
                            d:Visibility="Collapsed" Visibility="{Binding NavButtonEnabled, Converter={StaticResource InverseToVis}}"
                            Focusable="False"
                            />
                </Grid>
            </Grid>

            <StackPanel x:Name="SaleBannersHolder"
                                    Orientation="Horizontal"
                                    VerticalAlignment="Top" HorizontalAlignment="Left"
                                    Margin="1610,90,0,0"
                                    Visibility="{Binding ElementName=Panel_Persistent, Path=DataContext.IsMobile, Converter={StaticResource BoolToVisConverter}}"
                                    >

                <Button HorizontalAlignment="Left" Width="96"
                                    Height="64"
                                    Margin="0,0,0,10"
                                    Command="{Binding ElementName=Panel_Persistent, Path=DataContext.GoToSaleCommand}"
                                    IsEnabled="{Binding ElementName=BuyChips, Path=IsEnabled}"
                                    Visibility="{Binding ElementName=Panel_Persistent, Path=DataContext.ChipSaleImageVisibility, FallbackValue=Visible}"
                                    >
                    <Button.Style>
                        <Style TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate>
                                        <ContentPresenter/>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                        </Style>
                    </Button.Style>
                    <Image DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                                       Source="{Binding ChipSaleImage, FallbackValue={StaticResource UI_Image_2XSaleToaster}}"
                                       />
                </Button>

                <Button HorizontalAlignment="Left" Width="96"
                                    Height="64"
                                    DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                                    IsEnabled="{Binding ElementName=BuyCreds, Path=IsEnabled}"
                                    Visibility="{Binding HappyHourImageVisibility, FallbackValue=Visible}"
                                    >
                    <i:Interaction.Triggers>
                        <i:EventTrigger EventName="Click">
                            <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Store"/>
                            <i:InvokeCommandAction Command="{Binding ToggleChipsAndCredsTabCommand}"/>
                            <i:InvokeCommandAction Command="{Binding CredsSubTabSelectedCommand}"/>
                        </i:EventTrigger>
                    </i:Interaction.Triggers>
                    <Button.Style>
                        <Style TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate>
                                        <ContentPresenter/>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                        </Style>
                    </Button.Style>
                    <Image DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                                       Source="{StaticResource UI_Image_HappyHourToaster}"
                                       />
                </Button>
            </StackPanel>
            <!--#region Center Row -->
            <Canvas Grid.Row="1">
                <Grid Grid.Row="1">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition SharedSizeGroup="A" MinWidth="{StaticResource SideSectionMinWidth}"/>
                        <ColumnDefinition Width="*" MinWidth="{StaticResource MainPanelWidth}"/>
                        <ColumnDefinition SharedSizeGroup="A" MinWidth="{StaticResource SideSectionMinWidth}"/>
                    </Grid.ColumnDefinitions>
                    <!--#region Left Side -->
                    <!--#endregion-->

                    <!--#region Center Section -->
                    <Grid Grid.Row="1" DataContext="{Binding DataContext, ElementName=Panel_Persistent}" HorizontalAlignment="Right" Focusable="False" IsEnabled="{Binding IsPermanentButtonEnabled ,FallbackValue=True}"> 
                        <StackPanel Orientation="Horizontal" Focusable="False">

                            <!--#endregion-->

                            <!--#endregion-->
                            <!--#region Go To Suite Column -->
                            <Grid Margin="0,0,24,0" Focusable="False">
                                <!--Go to suite button-->
                                <Grid DataContext="{Binding DataContext, ElementName=Panel_Persistent}" 
                                      Visibility="{Binding IsMobile, Converter={StaticResource InverseToVis}}"
                                      VerticalAlignment="Top" HorizontalAlignment="Right"
                                      Focusable="False"
                                      >
                                    <UISharedComponents:C_Button_GotToSuite x:Name="GoToSuiteButton"
                                                                            DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                                                                            Visibility="{Binding IsNotInOwnPlayerSuite, Converter={StaticResource boolToVis}, FallbackValue=Visible}"
                                                                            Command="{Binding OpenLeavePopupCommand}"
                                                                            FocusVisualStyle="{x:Null}"
                                                                            SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                                                                            IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                                                            SharedScripts:AttachedProps.FocusFallbackTarget="{Binding ElementName=CancelButton}"
                                                                            VerticalAlignment="Top" 
                                                                            HorizontalAlignment="Left"
                                                                            />
                                </Grid>
                                <!--Play-well tools shortcut button-->
                                <Grid DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                      Width="58" Height="58" VerticalAlignment="Bottom" HorizontalAlignment="Right" 
                                      Visibility="{Binding IsMobile, Converter={StaticResource InverseToVis},FallbackValue=Visible}"
                                      Focusable="False"
                                      >
                                    <Button Style="{StaticResource ButtonTextIconStyle}" Width="58" Height="58"
                                    x:Name="PlayWellTools"
                                    DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                    SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                    SharedScripts:AttachedProps.ImageHeight="48" 
                                    SharedScripts:AttachedProps.ImageWidth="48"
                                    SharedScripts:AttachedProps.ButtonCornerRadius="2"
                                    SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_PlayWell}"
                                    SharedScripts:AttachedProps.PrimaryBackground="{StaticResource Lucky_TealDefaultColor}"
                                    SharedScripts:AttachedProps.HighlightBackground="{StaticResource Lucky_TealHoverColor}"
                                    SharedScripts:AttachedProps.ClickStateBackground="{StaticResource Lucky_TealClickColor}"
                                    IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                    FontSize="32"
                                    VerticalAlignment="Bottom"
                                    HorizontalAlignment="Right"
                                    >
                                        <i:Interaction.Triggers>
                                            <i:EventTrigger EventName="Click">
                                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Settings"/>
                                                <i:InvokeCommandAction Command="{Binding PlayWellRedirectCommand}"/>
                                            </i:EventTrigger>
                                        </i:Interaction.Triggers>
                                    </Button>
                                    <Border DataContext="{Binding DataContext, ElementName=Panel_Persistent}" Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" 
                                            CornerRadius="5" Visibility="{Binding DisableSideButtons, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"
                                            Focusable="False"
                                            />
                                </Grid>
                            </Grid>
                            <!--#region PAGE SIDEBARS -->
                            <Grid>
                                <ContentControl Style="{StaticResource Sidebar_Stash}" x:Name="Sidebar_Stash" DataContext="{Binding DataContext, ElementName=Panel_Stash}"
                                                HorizontalAlignment="Left"
						HorizontalContentAlignment="Left"
                                                SharedScripts:AttachedProps.TakeFocus="Force"
                                                Visibility="{Binding Visibility, ElementName=Panel_Stash, FallbackValue=Visible}" IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}" 
                                                d:Visibility="Collapsed"/>
                                <ContentControl Style="{StaticResource Sidebar_Store}" x:Name="Sidebar_Store" DataContext="{Binding ElementName=Panel_Store,Path=DataContext}"
                                                SharedScripts:AttachedProps.TakeFocus="Force"
                                                Visibility="{Binding Visibility, ElementName=Panel_Store, FallbackValue=Visible}" IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}" 
                                                d:Visibility="Visible"/>
                                <ContentControl Style="{StaticResource Sidebar_Settings}" x:Name="Sidebar_Settings" DataContext="{Binding DataContext, ElementName=Panel_Settings}"
                                                SharedScripts:AttachedProps.TakeFocus="Force"
                                                Visibility="{Binding Visibility, ElementName=Panel_Settings, FallbackValue=Visible}" IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                                d:Visibility="Collapsed"/>
                                <ContentControl Style="{StaticResource Sidebar_Leaderboard}"
                                                x:Name="Sidebar_Leaderboard"
                                                SharedScripts:AttachedProps.TakeFocus="Force"
                                                HorizontalAlignment="Left"
                                                HorizontalContentAlignment="Left"
                                                DataContext="{Binding DataContext, ElementName=Panel_Leaderboards}"
                                                Visibility="{Binding Visibility, ElementName=Panel_Leaderboards, FallbackValue=Visible}"
                                                IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                                d:Visibility="Collapsed"/>
                            </Grid>
                        </StackPanel>
                    </Grid>

                    <!--#region Center Section -->
                    <Grid Grid.Column="1" Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="24,0">
                        <Grid>
                            <!--Main Panel Container -->
                            <Grid x:Name="PanelContainer" Margin="0">
                                <UIPanels:V_Panel_Home x:Name="Panel_Games" Visibility="Collapsed" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.RowSpan="2"/>
                                <UIPanels:V_Panel_HostPoker x:Name="Panel_HostPoker" Visibility="Collapsed" Grid.RowSpan="2"/>

                                <Grid x:Name="Panel_HostCasino" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_HostCasino HorizontalAlignment="Center"/>
                                </Grid>
                                <UIPanels:V_Panel_Leaderboards x:Name="Panel_Leaderboards" HorizontalAlignment="Left" VerticalAlignment="Top" Visibility="Collapsed" Grid.RowSpan="2"/>
                                <UIPanels:V_Panel_Social x:Name="Panel_Social" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Settings x:Name="Panel_Settings" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center" Grid.RowSpan="2"/>
                                <UIPanels:V_Panel_Notifications x:Name="Panel_Notifications" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Settings_ChangeAvatar x:Name="Panel_Settings_Avatar" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_CustomAvatar x:Name="Panel_CustomizeAvatar" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>

                                <UIPanels:V_Panel_Store x:Name="Panel_Store" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Stash x:Name="Panel_Stash" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Loyalty x:Name="Panel_Loyalty" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <Grid x:Name="Panel_GamesBrowser_MTT" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_Poker_Tournaments_List HorizontalAlignment="Center"/>
                                </Grid>
                                <Grid  x:Name="Panel_GamesBrowser_SitAndGo" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_Poker_SitAndGo_List HorizontalAlignment="Center"/>
                                </Grid>
                                <Grid x:Name="Panel_GamesBrowser_Cash" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_Poker_Cash_List HorizontalAlignment="Center"/>
                                </Grid>
                                <Grid x:Name="Panel_GamesBrowser_Casino" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_Casino_List/>
                                </Grid>
                                <Grid x:Name="Panel_GamesBrowser_Slots" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_Slots_Games_List/>
                                </Grid>
                                <Grid x:Name="Panel_GamesBrowser_SlotsTournaments" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center">
                                    <UIPanels:V_Panel_Slots_Tournaments_List/>
                                </Grid>
                                <UIPanels:V_Panel_PokerGameScreens x:Name="Panel_Poker_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Casino_Floor x:Name="Panel_Casino_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center" Grid.RowSpan="2"/>
                                <UIPanels:V_Panel_Slots_Floor_General x:Name="Panel_Slots_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Sportsbetting x:Name="Panel_Sportsbetting_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Craps_InGameScreens x:Name="Panel_Craps_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Roulette_InGameScreens x:Name="Panel_Roulette_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Blackjack_InGameScreens x:Name="Panel_Blackjack_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_Baccarat_InGameScreens x:Name="Panel_Baccarat_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_RocketRush_InGameScreens x:Name="Panel_RocketRush_General" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_PlayerProfile x:Name="Panel_PlayerProfile" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                                <UIPanels:V_Panel_PlayerProfile_OtherPlayer x:Name="Panel_OtherPlayerProfile" Visibility="Collapsed" VerticalAlignment="Top" HorizontalAlignment="Center"/>
                            </Grid>
                            <UIPanels:V_Panel_Popups/>
                            <!--Quit button-->
                            <Grid x:Name="Panel_QuitGame" Visibility="{Binding Visibility, ElementName=Panel_Settings, FallbackValue=Hidden}" Panel.ZIndex="6">
                                <Button Style="{StaticResource QuitButton}" Command="{Binding OpenQuitPopupCommand}"
                                            Visibility="{Binding IsQuitGameButtonVisible, Converter={StaticResource BoolToVisConverter}}"
                                            IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                            FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                    Background="{x:Null}" BorderBrush="{x:Null}" Foreground="{x:Null}" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="-210,0,0,12" />
                            </Grid>
                        </Grid>


                        <!--#region Persistent Components & Popups -->
                        <Grid x:Name="Panel_Persistent" HorizontalAlignment="Center" VerticalAlignment="Center" >
                            <Grid.Resources>
                                <Storyboard x:Key="LoyaltyLevelUpAnimation">
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="BlueFlareImage" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:01" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:01.5000000" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02.5000000" Value="0.5"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0"/>
                                    </DoubleAnimationUsingKeyFrames>
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PinkFlareImage" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:01" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02" Value="0.5"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02.5000000" Value="0.5"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0"/>
                                    </DoubleAnimationUsingKeyFrames>
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="LoyaltyPointsImage" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:01" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0"/>
                                    </DoubleAnimationUsingKeyFrames>
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="image" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:01.5000000" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0.7"/>
                                    </DoubleAnimationUsingKeyFrames>
                                </Storyboard>
                                <Storyboard x:Key="LoyaltyProgressAnimation">
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="BlueFlareImage" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0"/>
                                    </DoubleAnimationUsingKeyFrames>
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PinkFlareImage" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0"/>
                                    </DoubleAnimationUsingKeyFrames>
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="LoyaltyPointsImage" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:01" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0"/>
                                    </DoubleAnimationUsingKeyFrames>
                                    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="image" Storyboard.TargetProperty="(UIElement.Opacity)">
                                        <EasingDoubleKeyFrame KeyTime="00:00:01.5000000" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:02" Value="1"/>
                                        <EasingDoubleKeyFrame KeyTime="00:00:03" Value="0.7"/>
                                    </DoubleAnimationUsingKeyFrames>
                                </Storyboard>
                            </Grid.Resources>
                            <!--#region Quit Room Popup (Not to be confused with control to quit game) -->
                            <Grid Style="{StaticResource DisabledPanelOnWatchPopupOpen}" SharedScripts:AttachedProps.PrimaryBool="{Binding IsLeavePopupOpen}">
                                <UISharedComponents:C_Popup_Dialog
                                        Prompt="Are you sure you want to"
                                        PromptAction="return to Suite?"
                                        AcceptText="Yes"
                                        CancelText="No"
                                        CancelButtonVisibility="Visible"
                                        AcceptCommand="{Binding LeaveToPlayerSuiteCommand}"
                                        CancelCommand="{Binding CloseLeavePopupCommand}"                    
                                        Focusable="False"
                                        SharedScripts:AttachedProps.FocusFallbackTarget="{Binding ElementName=GoToSuiteButton}"
                                        IsOpen="{Binding IsLeavePopupOpen}"
                                        Visibility="{Binding IsLeavePopupOpen, Converter={StaticResource BoolToVisConverter}}"
                                    >
                                    <UISharedComponents:C_Popup_Dialog.Style>
                                        <Style TargetType="UISharedComponents:C_Popup_Dialog">
                                            <Setter Property="SharedScripts:AttachedProps.DisableFocusTree" Value="True"/>
                                            <Style.Triggers>
                                                <DataTrigger Binding="{Binding IsLeavePopupOpen}" Value="True">
                                                    <Setter Property="SharedScripts:AttachedProps.DisableFocusTree" Value="False"/>
                                                </DataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </UISharedComponents:C_Popup_Dialog.Style>
                                </UISharedComponents:C_Popup_Dialog>
                            </Grid>
                            <!--#endregion-->

                            <!--#region Quit Game Popup (Not to be confused with control to quit room) -->
                            <Grid DataContext="{Binding DataContext, ElementName=Panel_QuitGame}" 
                                  Style="{StaticResource DisabledPanelOnWatchPopupOpen}" SharedScripts:AttachedProps.PrimaryBool="{Binding IsQuitPopupOpen}" Focusable="False">
                                <UISharedComponents:C_Popup_Dialog
                                        Prompt="Are you sure you want to"
                                        PromptAction="quit Vegas Infinite?"
                                        AcceptText="Yes"
                                        CancelText="No"
                                        CancelButtonVisibility="Visible"
                                        AcceptCommand="{Binding QuitGameCommand}"
                                        CancelCommand="{Binding CloseQuitPopupCommand}"                    
                                        Focusable="False"
                                        SharedScripts:AttachedProps.DisableFocusTree="{Binding IsQuitPopupOpen, Converter={StaticResource InverseBoolean}}" 
                                        IsOpen="{Binding IsQuitPopupOpen}"/>
                            </Grid>
                            <!--#endregion-->

                            <!--#region NPS Popup -->
                            <Grid DataContext="{Binding DataContext, ElementName=Panel_NPS}" Style="{StaticResource DisabledPanelOnWatchPopupOpen}" 
                                  SharedScripts:AttachedProps.PrimaryBool="{Binding IsNPSOpen}" Focusable="False">
                                <UIPanels:V_Popup_NPS x:Name="Panel_NPS" Style="{StaticResource PopupBehaviour}" SharedScripts:AttachedProps.PrimaryBool="{Binding IsNPSOpen}" Focusable="False"/>
                            </Grid>
                            <!--#endregion-->
                            
                            <!--#region Pack Ad Popup -->
                            <Grid DataContext="{Binding DataContext, ElementName=Panel_PlayerPackPopUp}" Style="{StaticResource DisabledPanelOnWatchPopupOpen}" 
                                  SharedScripts:AttachedProps.PrimaryBool="{Binding IsPackPopupOpen}" Focusable="False">
                                <UIPanels:V_Popup_NewPlayerPack x:Name="Panel_PlayerPackPopUp" Style="{StaticResource PopupBehaviour}" SharedScripts:AttachedProps.PrimaryBool="{Binding IsPackPopupOpen}" Focusable="False"/>
                            </Grid>
                            <!--#endregion-->

                            <!-- #region Loyalty -->
                            <Grid Width="400" Height="400" Margin="0,200,-800,0">
                                <UISharedComponents:C_LoyaltyToolTip
                                    CurrentLoyaltyName="Diamond Tres"
                                    NextLoyaltyName="Diamon Deuce"
                                    CurrentLoyaltyPoints="0"
                                    NextLoyaltyPoints="100"
                                    PointsToNextTier="100"
                                    Visibility="{Binding IsLoyaltyTooltipVisible, FallbackValue=Hidden}"/>
                            </Grid>
                            <!-- #endregion -->
                        </Grid>
                        <!--#endregion-->
                        <Grid x:Name="VirtualKeyboardPanel"  
                                    HorizontalAlignment="Center" VerticalAlignment="Center"
                                    Margin="0,450,0,0"
                                    d:Visibility="Visible"
                                    Visibility="{Binding IsVirtualKeyboardOpen, Converter={StaticResource boolToVis}, FallbackValue=Hidden}">
                            <Border Width="370" Height="96" Padding="8" CornerRadius="6" Background="{StaticResource SecondaryButtonBrush}" VerticalAlignment="Top" Margin="0,-90,0,0">

                                <TextBox
                                         Text="{Binding VirtualKeyboardText, FallbackValue=Womp womp}"
                                         noesis:Text.Placeholder="Enter your email"
                                         FontSize="{Binding FontSizeH24, FallbackValue={StaticResource FontSizeH24}}"       
                                         VerticalAlignment="Center"
                                         CaretBrush="{Binding DoShowCaret}" 
                                         Background="#FF0C0E33"
                                         BorderBrush="#FF484C83"
                                         BorderThickness="3"
                                         Foreground="White" 
                                         HorizontalAlignment="Left"
                                         HorizontalContentAlignment="Left"
                                         TextAlignment="Left"
                                         Width="350"/>
                            </Border>
                            <Button Style="{StaticResource Button_Image}"
                            FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                            Command="{Binding CloseVirtualKeyboardCommand}"
                            Width="64" Height="64" Margin="0,-70,0,0"
                                    VerticalAlignment="Top"
                            Background="Transparent" HorizontalAlignment="Right">
                                <noesis:Element.Transform3D>
                                    <noesis:CompositeTransform3D RotationX="-55"/>
                                </noesis:Element.Transform3D>
                                <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Background="Transparent">
                                    <Image Source="{StaticResource UI_Icon_HexButton_Base}" Width="64" Height="64" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                    <Image Source="{StaticResource UI_Icon_Cross}" Width="20" Height="20" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                </Grid>
                            </Button>
                            <UISharedComponents:C_VirtualKeyboard x:Name="VirtualKeyboard"/>
                        </Grid>
                    </Grid>

                    <!--#region Right Side -->
                    <Grid Grid.Row="1" Grid.Column="2" HorizontalAlignment="Left" Focusable="False" DataContext="{Binding DataContext, ElementName=Panel_Persistent}" IsEnabled="{Binding IsPermanentButtonEnabled, FallbackValue=True}">
                        <!--Close watch UI button - Default -->
                        <Grid HorizontalAlignment="Left" VerticalAlignment="Top"
                                DataContext="{Binding DataContext, ElementName=Panel_Persistent}" 
                                Focusable="False"
                                Visibility="{Binding IsMobile, Converter={StaticResource InverseToVis}}">
                            <Button Style="{StaticResource Button_Image}"
                                    FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                                    Command="{Binding CloseWatchMenuCommand}"
                                    DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                    Width="64" Height="64" Margin="5"
                                    Background="Transparent">
                                <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Background="Transparent" Focusable="False">
                                    <Image Source="{StaticResource UI_Icon_HexButton_Base}" Width="64" Height="64" HorizontalAlignment="Center" VerticalAlignment="Center" Focusable="False"/>
                                    <Image Source="{StaticResource UI_Icon_Cross}" Width="20" Height="20" HorizontalAlignment="Center" VerticalAlignment="Center" Focusable="False"/>
                                </Grid>
                            </Button>
                            <Border DataContext="{Binding DataContext, ElementName=Panel_Persistent}" Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" CornerRadius="5" Visibility="{Binding DisableSideButtons, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"/>
                        </Grid>

                        <!--Close watch UI button - Mobile -->
                        <Grid HorizontalAlignment="Left" VerticalAlignment="Top"
                                DataContext="{Binding DataContext, ElementName=Panel_Persistent}" 
                                Visibility="{Binding IsMobile, Converter={StaticResource boolToVis}}">
                            <Button Style="{StaticResource SetTransparentButtonImageOnDisable}"
                            FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                            Command="{Binding CloseWatchMenuCommand}"
                            DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                            Width="100" Height="100" Margin="5"
                            Focusable="False"
                            Background="Transparent">
                                <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Background="Transparent">
                                    <Image Source="{StaticResource UI_Icon_HexButton_Base}" Width="100" Height="100" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                    <Image Source="{StaticResource UI_Icon_Cross}" Width="40" Height="40" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                </Grid>
                            </Button>
                            <Border DataContext="{Binding DataContext, ElementName=Panel_Persistent}" Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" CornerRadius="5" 
                                    Visibility="{Binding DisableSideButtons, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"/>
                        </Grid>

                        <StackPanel DataContext="{Binding DataContext, ElementName=Panel_Persistent}" VerticalAlignment="Bottom" HorizontalAlignment="Right" IsEnabled="{Binding IsPermanentButtonEnabled, FallbackValue=True}"> 
                            <!--Preference center button - For Mobile-->
                            <Grid DataContext="{Binding DataContext, ElementName=Panel_Persistent}" 
                                  Width="58" Height="58"
                                  VerticalAlignment="Bottom" HorizontalAlignment="Center"
                                  Margin="0,0,0,10"
                                  Visibility="{Binding IsMobile, Converter={StaticResource BoolToVisConverter},FallbackValue=Visible}"
                                  >
                                <Button DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                        Width="58" Height="58"
                                        SharedScripts:AttachedProps.ImageHeight="48" 
                                        SharedScripts:AttachedProps.ImageWidth="48"
                                        SharedScripts:AttachedProps.ButtonCornerRadius="2"
                                        FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                                        SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_PreferenceCenter}"
                                        SharedScripts:AttachedProps.PrimaryBackground="{StaticResource Lucky_TealDefaultColor}"
                                        SharedScripts:AttachedProps.HighlightBackground="{StaticResource Lucky_TealHoverColor}"
                                        SharedScripts:AttachedProps.ClickStateBackground="{StaticResource Lucky_TealClickColor}"
                                        IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                        FontSize="32"
                                        VerticalAlignment="Bottom"
                                        HorizontalAlignment="Left"
                                        >
                                    <Button.Style>
                                        <Style TargetType="{x:Type Button}" BasedOn="{StaticResource ButtonTextIconStyle}">
                                            <Style.Triggers>
                                                <!--Change Opacity of button when disabled on Mobile Platforms-->
                                                <MultiDataTrigger>
                                                    <MultiDataTrigger.Conditions>
                                                        <Condition Binding="{Binding DisableSideButtons}" Value="True"/>
                                                        <Condition Binding="{Binding IsMobile}" Value="True"/>
                                                    </MultiDataTrigger.Conditions>
                                                    <Setter Property="Opacity" Value="0.3"/>
                                                </MultiDataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Button.Style>
                                    <i:Interaction.Triggers>
                                        <i:EventTrigger EventName="Click">
                                            <i:InvokeCommandAction Command="{Binding OpenPreferenceCenterCommand}"/>
                                        </i:EventTrigger>
                                    </i:Interaction.Triggers>
                                </Button>
                                <Border DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                        Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" 
                                        CornerRadius="5"
                                        Visibility="{Binding DisableSideButtons, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"
                                        />
                            </Grid>

                            <!--Play-well tools shortcut button - For Mobile-->
                            <Grid DataContext="{Binding DataContext, ElementName=Panel_Persistent}" 
                                  Width="58" Height="58"
                                  VerticalAlignment="Bottom" HorizontalAlignment="Center"
                                  Margin="0,0,0,10"
                                  Visibility="{Binding IsMobile, Converter={StaticResource BoolToVisConverter},FallbackValue=Visible}"
                                  >
                                <Button DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                        Width="58" Height="58"
                                        SharedScripts:AttachedProps.ImageHeight="48" 
                                        SharedScripts:AttachedProps.ImageWidth="48"
                                        SharedScripts:AttachedProps.ButtonCornerRadius="2"
                                        FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                                        SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_PlayWell}"
                                        SharedScripts:AttachedProps.PrimaryBackground="{StaticResource Lucky_TealDefaultColor}"
                                        SharedScripts:AttachedProps.HighlightBackground="{StaticResource Lucky_TealHoverColor}"
                                        SharedScripts:AttachedProps.ClickStateBackground="{StaticResource Lucky_TealClickColor}"
                                        IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                        FontSize="32"
                                        VerticalAlignment="Bottom"
                                        HorizontalAlignment="Left"
                                        >
                                    <Button.Style>
                                        <Style TargetType="{x:Type Button}" BasedOn="{StaticResource ButtonTextIconStyle}">
                                            <Style.Triggers>
                                                <!--Change Opacity of button when disabled on Mobile Platforms-->
                                                <MultiDataTrigger>
                                                    <MultiDataTrigger.Conditions>
                                                        <Condition Binding="{Binding DisableSideButtons}" Value="True"/>
                                                        <Condition Binding="{Binding IsMobile}" Value="True"/>
                                                    </MultiDataTrigger.Conditions>
                                                    <Setter Property="Opacity" Value="0.3"/>
                                                </MultiDataTrigger>
                                            </Style.Triggers>
                                        </Style>
                                    </Button.Style>
                                    <i:Interaction.Triggers>
                                        <i:EventTrigger EventName="Click">
                                            <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Settings"/>
                                            <i:InvokeCommandAction Command="{Binding PlayWellRedirectCommand}"/>
                                        </i:EventTrigger>
                                    </i:Interaction.Triggers>
                                </Button>
                                <Border DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                        Background="{StaticResource LinearGradient_Disabled_Grey_Transparent}" 
                                        CornerRadius="5"
                                        Visibility="{Binding DisableSideButtons, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}"
                                        />
                            </Grid>

                            <!--Review Button-->
                            <Button DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                Style="{StaticResource Button_Image}"
                                IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                Width="58" Height="58" Margin="10,0,0,5"
                                Focusable="False"
                                Visibility="{Binding ShowReviewButton, Converter={StaticResource boolToVis}, FallbackValue='Visible'}"
                                Background="Transparent">
                                <Image Source="{StaticResource UI_Icon_Review}" Width="48" Height="48"/>
                                <i:Interaction.Triggers>
                                    <i:EventTrigger EventName="Click">
                                        <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Settings"/>
                                        <i:InvokeCommandAction Command="{Binding ReviewRedirectCommand}"/>
                                    </i:EventTrigger>
                                </i:Interaction.Triggers>
                            </Button>

                            <!--NPS Button-->
                            <Button DataContext="{Binding DataContext, ElementName=Panel_NPS}" Style="{StaticResource Button_Image}"      
                                IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                Command="{Binding SetNPSStateCommand}" CommandParameter="Open"
                                Visibility="{Binding CanGiveReview, Converter={StaticResource boolToVis}}"
                                Width="58" Height="58" Margin="10,0,0,-10"
                                Focusable="False"
                                Background="Transparent">
                                <Image Source="{StaticResource UI_Icon_NPS_Button}" Width="78" Height="78" HorizontalAlignment="Center" VerticalAlignment="Center"/>
                            </Button>

                            <Border CornerRadius="16,16,0,0" Margin="12,0,0,0" Padding="0,4,0,0" Width="72">
                                <StackPanel>
                                    <StackPanel Background="{StaticResource UI_PrimaryColor}">
                                        <StackPanel.Clip>
                                            <MultiBinding Converter="{StaticResource DogEarClip}" ConverterParameter="1234; 26">
                                                <Binding Path="ActualWidth" RelativeSource="{RelativeSource Mode=Self}"/>
                                                <Binding Path="ActualHeight" RelativeSource="{RelativeSource Mode=Self}"/>
                                            </MultiBinding>
                                        </StackPanel.Clip>


                                        <!-- Loyalty Button -->
                                        <Button DataContext="{Binding DataContext, ElementName=Panel_Loyalty}" Style="{StaticResource Button_Image}"      
                                        IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                        FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                        Width="64" Margin="0,16,0,0"
                                        Background="Transparent">
                                            <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Click">
                                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Loyalty"/>
                                                    <i:InvokeCommandAction Command="{Binding DataContext.LoyaltyTransitionCommand, ElementName=Panel_Persistent}"/>
                                                    <i:InvokeCommandAction Command="{Binding DisablePersistentLoyaltyTooltipCommand}"/>
                                                    <!-- Ensures the tooltip is disabled in VR after pressing this -->
                                                </i:EventTrigger>
                                                <i:EventTrigger EventName="MouseEnter">
                                                    <i:InvokeCommandAction Command="{Binding EnablePersistentLoyaltyTooltipCommand}"/>
                                                </i:EventTrigger>
                                                <i:EventTrigger EventName="MouseLeave">
                                                    <i:InvokeCommandAction Command="{Binding DisablePersistentLoyaltyTooltipCommand}"/>
                                                </i:EventTrigger>
                                            </i:Interaction.Triggers>
                                            <StackPanel>
                                                <Grid HorizontalAlignment="Left">
                                                    <Image x:Name="BlueFlareImage" Source="{StaticResource UI_Icon_LoyaltyRadialShine_Blue}" Opacity="0" Margin="0,-12,0,0" Height="84" Width="84"  HorizontalAlignment="Center" VerticalAlignment="Top"/>
                                                    <Image x:Name="PinkFlareImage" Source="{StaticResource UI_Icon_LoyaltyRadialShine_Pink}" Opacity="0" Margin="0,-12,0,0"  Height="84" Width="84"  HorizontalAlignment="Center" VerticalAlignment="Top"/>
                                                    <Image d:Visibility="Visible" x:Name="image" Source="{Binding PlayerLoyaltyTierImage, FallbackValue={StaticResource UI_Icon_LoyaltyCard_Zero}}" Stretch="Uniform" Height="56" Width="56"  HorizontalAlignment="Center" VerticalAlignment="Top"/>
                                                    <Image d:Visibility="Visible" x:Name="LoyaltyPointsImage" Source="{StaticResource UI_Icon_LoyaltyPoints}" Opacity="0" Height="48" Width="48" Margin="0,0,0,6"  HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                                </Grid>
                                                <ProgressBar x:Name="LoyaltyProgressBar" 
                                                     Value="{Binding PersistentLoyaltyProgressValue, FallbackValue=50, Mode=TwoWay}"
                                                     RenderTransformOrigin="0.5,0.5"
                                                     Margin="0,-12,0,6"
                                                     Width="36"
                                                     VerticalAlignment="Bottom"
                                                     HorizontalAlignment="Center"
                                                     Height="6">
                                                    <ProgressBar.RenderTransform>
                                                        <TransformGroup>
                                                            <TranslateTransform x:Name="progressTransform"/>
                                                            <RotateTransform Angle="180"/>
                                                        </TransformGroup>
                                                    </ProgressBar.RenderTransform>
                                                    <ProgressBar.Style>
                                                        <Style TargetType="{x:Type ProgressBar}">
                                                            <Setter Property="Template">
                                                                <Setter.Value>
                                                                    <ControlTemplate TargetType="{x:Type ProgressBar}">
                                                                        <Grid>
                                                                            <Border x:Name="MaskBorder" Background="{TemplateBinding Background}"/>
                                                                            <Grid x:Name="TemplateRoot">
                                                                                <Grid.OpacityMask>
                                                                                    <VisualBrush Visual="{Binding ElementName=MaskBorder}"/>
                                                                                </Grid.OpacityMask>
                                                                                <Border x:Name="PART_Track" Background="#FF1F2034"/>
                                                                                <Grid>
                                                                                    <Border x:Name="PART_Indicator" Height="6" 
                                                                                HorizontalAlignment="Right" 
                                                                                Background="{StaticResource LinearGradient_ProgressBar}"
                                                                                CornerRadius="{Binding RoundCornerRadius, FallbackValue=0}">
                                                                                        <Border x:Name="PART_Indicator_Overlay" Height="6" 
                                                                                    HorizontalAlignment="Right"
                                                                                    Background="{StaticResource TransparentStripes}"
                                                                                    Width="{Binding ActualWidth, ElementName=PART_Indicator}"
                                                                                    CornerRadius="{Binding RoundCornerRadius, FallbackValue=0}"/>
                                                                                    </Border>
                                                                                </Grid>
                                                                            </Grid>
                                                                        </Grid>
                                                                    </ControlTemplate>
                                                                </Setter.Value>
                                                            </Setter>
                                                        </Style>
                                                    </ProgressBar.Style>
                                                </ProgressBar>
                                            </StackPanel>
                                        </Button>


                                        <!-- Profile Button -->
                                        <Button DataContext="{Binding DataContext, ElementName=Panel_Persistent}" Style="{StaticResource Button_Image}" Margin="0,10,0,0"
                                            Background="Transparent"
                                            FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                            IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                            Width="58" Height="58">
                                            <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Click">
                                                    <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_PlayerProfile"/>
                                                    <i:InvokeCommandAction Command="{Binding DataContext.ProfileTransitionCommand, ElementName=Panel_Persistent}"/>
                                                    <i:InvokeCommandAction Command="{Binding ResetNavBarHighlightCommand}"/>
                                                </i:EventTrigger>
                                            </i:Interaction.Triggers>
                                            <Grid Margin="-30,0,0,0" DataContext="{Binding DataContext, ElementName=Panel_Persistent}">
                                                <StackPanel Orientation="Horizontal">
                                                    <Path x:Name="PlayerProfileImage" Stretch="Fill" 
                                                 Stroke="{StaticResource UI_PrimaryColor}" 
                                                 StrokeThickness="1" 
                                                 Width="55"
                                                 Height="55"
                                                 HorizontalAlignment="Center">
                                                        <Path.Style>
                                                            <Style TargetType="{x:Type Path}">
                                                                <Setter Property="Data" Value="{Binding Converter={StaticResource HexPathConverter}, Source={StaticResource ProfileImageSize}}"/>
                                                                <Setter Property="RenderTransformOrigin" Value="0.5,0.5"/>
                                                                <Setter Property="RenderTransform">
                                                                    <Setter.Value>
                                                                        <TransformGroup>
                                                                            <TranslateTransform X="15" Y="0"/>
                                                                        </TransformGroup>
                                                                    </Setter.Value>
                                                                </Setter>
                                                            </Style>

                                                        </Path.Style>
                                                        <Path.Fill>
                                                            <ImageBrush Stretch="UniformToFill" ImageSource="{Binding ProfileImage, FallbackValue={StaticResource UI_Placeholder_Player}}"/>
                                                        </Path.Fill>
                                                    </Path>
                                                </StackPanel>
                                            </Grid>
                                        </Button>

                                        <!-- Mute Button -->
                                <ToggleButton x:Name="MuteMicButton"
                                     FocusVisualStyle="{StaticResource PS5FocusVisualStyle}"
                                     IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                     DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                     IsChecked="{Binding IsOutboundVoipMuted}" Command="{Binding ToggleOutboundVoipCommand}"
                                     HorizontalAlignment="Center" VerticalAlignment="Center"
                                     Width="50" Height="50" Margin="10" RenderTransformOrigin="0.5,0.5">
                                            <ToggleButton.Style>
                                                <Style TargetType="{x:Type ToggleButton}" BasedOn="{StaticResource ToggleButtonAudioStyle}">
                                                    <Setter Property="Template">
                                                        <Setter.Value>
                                                            <ControlTemplate TargetType="{x:Type ToggleButton}">
                                                                <Grid HorizontalAlignment="Center" VerticalAlignment="Center">
                                                                    <Image HorizontalAlignment="Center" VerticalAlignment="Center"
                                                                    x:Name="MicIcon" Source="{StaticResource UI_Icon_Mic_On}">
                                                                        <Image.LayoutTransform>
                                                                            <TransformGroup>
                                                                                <TranslateTransform/>
                                                                                <ScaleTransform/>
                                                                                <RotateTransform/>
                                                                            </TransformGroup>
                                                                        </Image.LayoutTransform>
                                                                    </Image>
                                                                </Grid>
                                                                <ControlTemplate.Triggers>
                                                                    <Trigger Property="IsMouseOver" Value="True">
                                                                        <Setter Property="RenderTransform">
                                                                            <Setter.Value>
                                                                                <ScaleTransform ScaleX="1.05" ScaleY="1.05"/>
                                                                            </Setter.Value>
                                                                        </Setter>
                                                                    </Trigger>
                                                                    <Trigger Property="IsPressed" Value="True">
                                                                        <Setter Property="RenderTransform">
                                                                            <Setter.Value>
                                                                                <ScaleTransform ScaleX="0.95" ScaleY="0.95"/>
                                                                            </Setter.Value>
                                                                        </Setter>
                                                                    </Trigger>

                                                                    <Trigger Property="IsChecked" Value="True">
                                                                        <Setter TargetName="MicIcon" Property="Source" Value="{StaticResource UI_Icon_Mic_Off}"/>
                                                                    </Trigger>
                                                                    <Trigger Property="IsChecked" Value="False">
                                                                        <Setter TargetName="MicIcon" Property="Source" Value="{StaticResource UI_Icon_Mic_On}"/>
                                                                    </Trigger>
                                                                </ControlTemplate.Triggers>
                                                            </ControlTemplate>
                                                        </Setter.Value>
                                                    </Setter>
                                                </Style>
                                            </ToggleButton.Style>
                                        </ToggleButton>
                                    </StackPanel>
                                </StackPanel>
                            </Border>
                        </StackPanel>
                    </Grid>

                    <!--Go to suite button - For Mobile -->
                    <Grid Grid.Column="2" DataContext="{Binding DataContext, ElementName=Panel_Persistent}" Margin="0,130,0,0"
                                      Visibility="{Binding IsMobile, Converter={StaticResource boolToVis}}"
                                      VerticalAlignment="Top" HorizontalAlignment="Left">
                        <UISharedComponents:C_Button_GotToSuite DataContext="{Binding DataContext, ElementName=Panel_Persistent}"
                                                Visibility="{Binding IsNotInOwnPlayerSuite, Converter={StaticResource boolToVis}, FallbackValue=Visible}"
                                                Command="{Binding OpenLeavePopupCommand}"
                                                IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
                                                Focusable="False"
                                                VerticalAlignment="Top" 
                                                HorizontalAlignment="Left"/>
                    </Grid>

                    <StackPanel VerticalAlignment="Bottom" HorizontalAlignment="Left">

                        <!--Live Stream-->
                        <Button DataContext="{Binding DataContext, ElementName=Panel_Persistent}" Style="{StaticResource Button_Image}"   
                            Command="{Binding OpenLiveStreamCommand}"
                            Visibility="{Binding IsLiveStream, Converter={StaticResource boolToVis}, FallbackValue=Visible}" 
                            Background="Transparent"
                            Grid.Column="2"
                            FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                            Width="170" Height="83"
                            HorizontalAlignment="Left"
                            Margin="0,170,0,0">
                            <Image Source="{StaticResource UI_Image_TwitchCompanion}" Width="170" Height="83"/>
                        </Button>
                        <!--#endregion-->

                    </StackPanel>
                </Grid>
            </Canvas>
            <!--#endregion-->

            <Grid Grid.Row="2" Grid.Column="1" Width="{StaticResource MainPanelWidth}" Focusable="False">

                <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
                    <Button Style="{StaticResource ButtonTextIconStyle}" DataContext="{Binding ElementName=Panel_Settings, Path=DataContext}"
                            Margin="4,0"
                            Visibility="{Binding IsDeveloperTabAvailable, Converter={StaticResource boolToVis}, FallbackValue=Visible}"
                            Height="58"
                            SharedScripts:AttachedProps.ImageHeight="38" 
                            SharedScripts:AttachedProps.ImageWidth="38"
                            SharedScripts:AttachedProps.ButtonCornerRadius="10"
                            SharedScripts:AttachedProps.ImageMargin="6,0"
                            SharedScripts:AttachedProps.TextMargin="0,0,0,0"
                            SharedScripts:AttachedProps.PrimaryAlignment="Left"
                            SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
                            SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Icon_SettingGear}"
                            SharedScripts:AttachedProps.PrimaryBackground="{StaticResource Lucky_DarkModeDefaultColor}"
                            SharedScripts:AttachedProps.HighlightBackground="{StaticResource Lucky_DarkModeHoverColor}"
                            SharedScripts:AttachedProps.ClickStateBackground="{StaticResource Lucky_DarkModeClickColor}"
                            FontSize="20"
                            Foreground="{StaticResource Lucky_SFGradientColor}"
                            Content="Developer"
                            SharedScripts:AttachedProps.TextForeground="White"
                            SharedScripts:AttachedProps.TextVisibility="Visible"
                            MinWidth="160"
                            MaxWidth="360"
                            >
                        <i:Interaction.Triggers>
                            <i:EventTrigger EventName="Click">
                                <i:InvokeCommandAction Command="{Binding GoToPanelCommand}" CommandParameter="Panel_Settings"/>
                                <i:InvokeCommandAction Command="{Binding ToggledDeveloperTabCommand}"/>
                            </i:EventTrigger>
                        </i:Interaction.Triggers>
                    </Button>
                    <!--#region Pancake Points -->
                    <Grid x:Name="Panel_LiveEvents" Focusable="False">
                        <Button Style="{StaticResource ButtonTextIconStyle}" DataContext="{Binding ElementName=Panel_LiveEvents, Path=DataContext}"
Visibility="{Binding IsPancakeActive, Converter={StaticResource boolToVis}, FallbackValue=Visible}"
                            x:Name="LiveEventsButton"
                        SharedScripts:FocusHighlightBehavior.FocusVisualStyle="{StaticResource PS5FocusVisualStyle_WristUIBigButton}"
Height="58"
SharedScripts:AttachedProps.ImageHeight="64"
SharedScripts:AttachedProps.ImageWidth="128"
SharedScripts:AttachedProps.ButtonCornerRadius="10"
SharedScripts:AttachedProps.ImageMargin="-12,-2,14,-6"
SharedScripts:AttachedProps.TextMargin="0,0,16,0"
SharedScripts:AttachedProps.PrimaryAlignment="Left"
SharedScripts:AttachedProps.PrimaryImage="{StaticResource UI_Image_GoodVSEvil_Logo}"
SharedScripts:AttachedProps.PrimaryBackground="{StaticResource Lucky_DarkModeDefaultColor}"
SharedScripts:AttachedProps.HighlightBackground="{StaticResource Lucky_DarkModeHoverColor}"
SharedScripts:AttachedProps.ClickStateBackground="{StaticResource Lucky_DarkModeClickColor}"
IsEnabled="{Binding IsAnyWatchPopupOpen, Converter={StaticResource InverseBoolean}}"
FontSize="26"
Foreground="{StaticResource Lucky_SFGradientColor}"
VerticalAlignment="Center"
HorizontalAlignment="Right"
Content="{Binding PancakePoints, FallbackValue=0}"
MinWidth="160"
MaxWidth="360"
>
                            <i:Interaction.Triggers>
                                <i:EventTrigger EventName="Click">
                                    <i:InvokeCommandAction Command="{Binding OpenPancakeInfoCommand}"/>
                                </i:EventTrigger>
                            </i:Interaction.Triggers>
                        </Button>

                    </Grid>
                    <!--#endregion-->
                </StackPanel>

                <!--#region Toaster Notification -->
                <ContentControl x:Name="ToasterNotification"
                        DataContext="{Binding ElementName=Panel_Persistent, Path=DataContext}"
                        Visibility="{Binding DisplayToast, Converter={StaticResource boolToVis}, FallbackValue=Collapsed, TargetNullValue=Visible}"
                        d:Visibility="Visible" RenderTransformOrigin="0.5,0.5"
                        Focusable="False"
                        HorizontalAlignment="Center" VerticalAlignment="Bottom" Height="70" MaxWidth="1239" Margin="0,32,0,0">
                    <noesis:Element.Transform3D>
                        <noesis:CompositeTransform3D TranslateZ="{StaticResource MinorPopupDepth}"/>
                    </noesis:Element.Transform3D>

                    <ContentControl.Style>
                        <Style TargetType="ContentControl">
                            <Style.Setters>
                                <Setter Property="Template">
                                    <Setter.Value>
                                        <ControlTemplate TargetType="{x:Type ContentControl}">
                                            <Grid>
                                                <Border
                                                        x:Name="ToasterNotificationBackgroundBorder"
                                                        CornerRadius="4"
                                                        Background="{Binding ToasterNotificationBackground, FallbackValue='#202159'}"
                                                        BorderBrush="{Binding ToasterNotificationBorderBrush, FallbackValue='#33376A'}"
                                                        BorderThickness="2"/>
                                                <StackPanel Margin="24,0,28,0" Orientation="Horizontal">
                                                    <Image
                                                            x:Name="ToasterNotificationImage"
                                                            Source="{Binding ToasterNotificationImageSource, FallbackValue={StaticResource UI_Icon_Warning}}"
                                                            Height="{Binding ToasterNotificationImageHeight, FallbackValue='32', TargetNullValue='32'}"
                                                            Margin="0,0,24,0" VerticalAlignment="Center"/>
                                                    <TextBlock x:Name="ToasterNotificationTextBlock" MaxWidth="800"
                                                            Text="{Binding CurrentToast.Message, FallbackValue='Toaster notification text', TargetNullValue='Toaster notification text'}"
                                                            Foreground="{Binding ToasterNotificationForeground, FallbackValue={StaticResource TextPrimaryBrush}, TargetNullValue={StaticResource TextPrimaryBrush}}"
                                                            FontSize="{Binding ToasterNotificationFontSize, FallbackValue='18', TargetNullValue='18'}" 
                                                            TextWrapping="WrapWithOverflow"
                                                            FontFamily="{Binding ToasterNotificationFontFamily, FallbackValue={StaticResource FontDefaultRegular}, TargetNullValue={StaticResource FontDefaultRegular}}"
                                                            VerticalAlignment="Center"/>
                                                    <UISharedComponents:C_PrimaryButton
                                                        Command="{Binding PrimaryToastActionCommand}"
                                                        Visibility="{Binding IsActionableToastData, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}" 
                                                        ButtonWidth="100"
                                                        ButtonHeight="57"
                                                        ContentAlignment="Center"
                                                        Margin="12,0"
                                                        FontFamily="{StaticResource FontDefaultBold}"
                                                        FontSize="{Binding FontSizeH18}"
                                                        ImageVisibility="Collapsed"
                                                        ButtonText="Retry"
                                                        VerticalAlignment="Center"/>
                                                    <UISharedComponents:C_SecondaryButton 
                                                        Command="{Binding SecondaryToastActionCommand}"
                                                        ButtonText="Report"
                                                        HorizontalAlignment="Center"
                                                        FontFamily="{StaticResource FontDefaultRegular}"
                                                        FontSize="{Binding FontSizeH18}"
                                                        Visibility="{Binding IsActionableToastData, Converter={StaticResource boolToVis}, FallbackValue=Collapsed}" 
                                                        Width="100"
                                                        Height="57"/>
                                                </StackPanel>
                                            </Grid>
                                            <ControlTemplate.Triggers>
                                                <!-- ToastType -->
                                                <DataTrigger Binding="{Binding CurrentToast.ToastTypeString}" Value="Info">
                                                    <Setter TargetName="ToasterNotificationBackgroundBorder" Property="Background" Value="#202159"></Setter>
                                                    <Setter TargetName="ToasterNotificationBackgroundBorder" Property="BorderBrush" Value="#33376A"></Setter>
                                                </DataTrigger>
                                                <DataTrigger Binding="{Binding CurrentToast.ToastTypeString}" Value="Success">
                                                    <Setter TargetName="ToasterNotificationBackgroundBorder" Property="Background" Value="#134957"></Setter>
                                                    <Setter TargetName="ToasterNotificationBackgroundBorder" Property="BorderBrush" Value="#2A7373"></Setter>
                                                    <Setter TargetName="ToasterNotificationImage" Property="Image.Source" Value="{StaticResource UI_Icon_checkbox_white_large}"></Setter>
                                                </DataTrigger>
                                                <DataTrigger Binding="{Binding CurrentToast.ToastTypeString}" Value="Error">
                                                    <Setter TargetName="ToasterNotificationBackgroundBorder" Property="Background" Value="#3D0E4E"></Setter>
                                                    <Setter TargetName="ToasterNotificationBackgroundBorder" Property="BorderBrush" Value="#5B1957"></Setter>
                                                    <Setter TargetName="ToasterNotificationImage" Property="Image.Source" Value="{StaticResource UI_Icon_Warning}"></Setter>
                                                </DataTrigger>
                                                <!-- Remove image automatically if image source binding is not set to anything and the ToastType is 'Info' -->
                                                <MultiDataTrigger>
                                                    <MultiDataTrigger.Conditions>
                                                        <Condition Binding="{Binding ToasterNotificationImageSource}" Value="{x:Null}"></Condition>
                                                        <Condition Binding="{Binding CurrentToast.ToastTypeString}" Value="Info"></Condition>
                                                    </MultiDataTrigger.Conditions>
                                                    <Setter TargetName="ToasterNotificationImage" Property="Visibility" Value="Collapsed"></Setter>
                                                </MultiDataTrigger>
                                                <!--Move Toast Up if Mobile-->
                                                <DataTrigger Binding="{Binding IsMobile}" Value="True">
                                                    <Setter Property="RenderTransform">
                                                        <Setter.Value>
                                                            <TranslateTransform Y="-120"/>
                                                        </Setter.Value>
                                                    </Setter>
                                                </DataTrigger>
                                            </ControlTemplate.Triggers>
                                        </ControlTemplate>
                                    </Setter.Value>
                                </Setter>
                            </Style.Setters>
                        </Style>
                    </ContentControl.Style>
                </ContentControl>
                <!--#endregion-->
            </Grid>
        </Grid>
    </Grid>
</UserControl>
V_WristUIContainer.xaml (171,695 bytes)   
V_WristUIContainer.xaml.cs (553 bytes)   
#if UNITY_5_3_OR_NEWER
#define NOESIS
   using Noesis;
#else
using System;
using System.Windows.Controls;
#endif

namespace WristUIContainer
{
    /// <summary>
    /// Interaction logic for V_WristUIContainer.xaml
    /// </summary>
    public partial class V_WristUIContainer : UserControl
    {
        public V_WristUIContainer()
        {
            InitializeComponent();
        }
#if NOESIS
        private void InitializeComponent()
        {
            NoesisUnity.LoadComponent(this);
        }
#endif
    }
}
V_WristUIContainer.xaml.cs (553 bytes)   
image (1) (1).png (173,830 bytes)   
image (1) (1).png (173,830 bytes)   
PlatformAndroid

Activities

sfernandez

sfernandez

2025-10-14 19:28

manager   ~0011173

Last edited: 2025-10-14 19:29

Hi Robin,

I remember having a conversation about a couple of years back with Dersh Zed [email protected] about something similar and here is one of his late comments:
"One of our devs found something to do with reflection in Unity with regards to GC and also a call Meta's SDK was making causing anything using reflection to be significantly more expensive. I had a hunch regarding this being the main reason for all of the loading issues we've seen and validated that during the last part of our break. With some changes the loading time (including that secondary 10 second spike) come down to being much more reasonable."

Could you check with Dersh if what you're seeing could be related to that?

Could you also provide a profile capture with "Deep Profiling" enabled? Just to verify if it's happening in the same spot: when the first xaml gets loaded and all related types are registered into Noesis (using C# reflection).

Thanks for your help.

robin.pan

robin.pan

2025-10-14 23:03

reporter   ~0011178

Hey sorry just to clarify it doesn't happen to our existing platforms and we removed the Meta SDK in the AndroidXR platform. However, will check with Dersh regardless and provide a deep profiling log later.

Issue History

Date Modified Username Field Change
2025-10-14 17:45 robin.pan New Issue
2025-10-14 17:45 robin.pan File Added: V_WristUIContainer.xaml
2025-10-14 17:45 robin.pan File Added: V_WristUIContainer.xaml.cs
2025-10-14 17:45 robin.pan File Added: image (1) (1).png
2025-10-14 19:28 sfernandez Assigned To => sfernandez
2025-10-14 19:28 sfernandez Status new => feedback
2025-10-14 19:28 sfernandez Note Added: 0011173
2025-10-14 19:28 sfernandez Note Edited: 0011173
2025-10-14 19:29 sfernandez Note Edited: 0011173
2025-10-14 23:03 robin.pan Note Added: 0011178
2025-10-14 23:03 robin.pan Status feedback => assigned
2025-10-15 11:18 jsantos Target Version => 3.2.10
2025-10-20 18:25 jsantos Target Version 3.2.10 => 3.2.11
2026-01-20 19:32 jsantos Target Version 3.2.11 => 3.2.12
2026-03-04 00:39 jsantos Target Version 3.2.12 => 3.2.13
2026-04-27 12:17 jsantos Target Version 3.2.13 => 3.2.14