mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-05-11 01:47:43 +02:00
36 lines
1.4 KiB
C#
36 lines
1.4 KiB
C#
using Avalonia.Controls;
|
|
using Avalonia.Input;
|
|
using Avalonia.Interactivity;
|
|
using Ryujinx.Ava.UI.Helpers;
|
|
using Ryujinx.Ava.UI.ViewModels;
|
|
using Ryujinx.UI.App.Common;
|
|
using System;
|
|
|
|
namespace Ryujinx.Ava.UI.Controls
|
|
{
|
|
public partial class ApplicationGridView : UserControl
|
|
{
|
|
public static readonly RoutedEvent<ApplicationOpenedEventArgs> ApplicationOpenedEvent =
|
|
RoutedEvent.Register<ApplicationGridView, ApplicationOpenedEventArgs>(nameof(ApplicationOpened), RoutingStrategies.Bubble);
|
|
|
|
public event EventHandler<ApplicationOpenedEventArgs> ApplicationOpened
|
|
{
|
|
add => AddHandler(ApplicationOpenedEvent, value);
|
|
remove => RemoveHandler(ApplicationOpenedEvent, value);
|
|
}
|
|
|
|
public ApplicationGridView() => InitializeComponent();
|
|
|
|
public void GameList_DoubleTapped(object sender, TappedEventArgs args)
|
|
{
|
|
if (sender is ListBox { SelectedItem: ApplicationData selected })
|
|
RaiseEvent(new ApplicationOpenedEventArgs(selected, ApplicationOpenedEvent));
|
|
}
|
|
|
|
public void GameList_SelectionChanged(object sender, SelectionChangedEventArgs args)
|
|
{
|
|
if (DataContext is MainWindowViewModel viewModel && sender is ListBox { SelectedItem: ApplicationData selected })
|
|
viewModel.GridSelectedApplication = selected;
|
|
}
|
|
}
|
|
}
|