<UserControl x:Class="Ryujinx.Ava.UI.Controls.ApplicationListView" xmlns="https://github.com/avaloniaui" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:controls="clr-namespace:Ryujinx.Ava.UI.Controls" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:helpers="clr-namespace:Ryujinx.Ava.UI.Helpers" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia" d:DesignHeight="450" d:DesignWidth="800" Focusable="True" mc:Ignorable="d"> <UserControl.Resources> <helpers:BitmapArrayValueConverter x:Key="ByteImage" /> <controls:ApplicationContextMenu x:Key="ApplicationContextMenu" /> </UserControl.Resources> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*" /> </Grid.RowDefinitions> <ListBox Name="GameListBox" Grid.Row="0" Padding="8" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ContextFlyout="{StaticResource ApplicationContextMenu}" DoubleTapped="GameList_DoubleTapped" Items="{Binding AppsObservableList}" SelectionChanged="GameList_SelectionChanged"> <ListBox.ItemsPanel> <ItemsPanelTemplate> <StackPanel HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Orientation="Vertical" Spacing="2" /> </ItemsPanelTemplate> </ListBox.ItemsPanel> <ListBox.Styles> <Style Selector="ListBoxItem:selected /template/ Border#SelectionIndicator"> <Setter Property="MinHeight" Value="{Binding $parent[UserControl].DataContext.ListItemSelectorSize}" /> </Style> </ListBox.Styles> <ListBox.ItemTemplate> <DataTemplate> <Grid> <Border Margin="0" Padding="10" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" ClipToBounds="True" CornerRadius="5"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="10" /> <ColumnDefinition Width="*" /> <ColumnDefinition Width="150" /> <ColumnDefinition Width="100" /> </Grid.ColumnDefinitions> <Image Grid.RowSpan="3" Grid.Column="0" Margin="0" Classes.huge="{Binding $parent[UserControl].DataContext.IsGridHuge}" Classes.large="{Binding $parent[UserControl].DataContext.IsGridLarge}" Classes.normal="{Binding $parent[UserControl].DataContext.IsGridMedium}" Classes.small="{Binding $parent[UserControl].DataContext.IsGridSmall}" Source="{Binding Icon, Converter={StaticResource ByteImage}}" /> <Border Grid.Column="2" Margin="0,0,5,0" BorderBrush="{DynamicResource ThemeControlBorderColor}" BorderThickness="0,0,1,0"> <StackPanel HorizontalAlignment="Left" VerticalAlignment="Top" Orientation="Vertical" Spacing="5"> <TextBlock HorizontalAlignment="Stretch" FontWeight="Bold" Text="{Binding TitleName}" TextAlignment="Left" TextWrapping="Wrap" /> <TextBlock HorizontalAlignment="Stretch" Text="{Binding Developer}" TextAlignment="Left" TextWrapping="Wrap" /> <TextBlock HorizontalAlignment="Stretch" Text="{Binding Version}" TextAlignment="Left" TextWrapping="Wrap" /> </StackPanel> </Border> <StackPanel Grid.Column="3" Margin="10,0,0,0" HorizontalAlignment="Left" VerticalAlignment="Top" Orientation="Vertical" Spacing="5"> <TextBlock HorizontalAlignment="Stretch" Text="{Binding TitleId}" TextAlignment="Left" TextWrapping="Wrap" /> <TextBlock HorizontalAlignment="Stretch" Text="{Binding FileExtension}" TextAlignment="Left" TextWrapping="Wrap" /> </StackPanel> <StackPanel Grid.Column="4" HorizontalAlignment="Right" VerticalAlignment="Top" Orientation="Vertical" Spacing="5"> <TextBlock HorizontalAlignment="Stretch" Text="{Binding TimePlayed}" TextAlignment="Right" TextWrapping="Wrap" /> <TextBlock HorizontalAlignment="Stretch" Text="{Binding LastPlayed, Converter={helpers:NullableDateTimeConverter}}" TextAlignment="Right" TextWrapping="Wrap" /> <TextBlock HorizontalAlignment="Stretch" Text="{Binding FileSize}" TextAlignment="Right" TextWrapping="Wrap" /> </StackPanel> <ui:SymbolIcon Grid.Row="0" Grid.Column="0" Margin="-5,-5,0,0" HorizontalAlignment="Left" VerticalAlignment="Top" FontSize="16" Foreground="{DynamicResource SystemAccentColor}" IsVisible="{Binding Favorite}" Symbol="StarFilled" /> </Grid> </Border> </Grid> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </Grid> </UserControl>