UI: Add keybinds to useful things

This commit is contained in:
Evan Husted 2024-10-19 16:39:21 -05:00
parent 59b3ff7802
commit 741eba2798
13 changed files with 88 additions and 70 deletions

View file

@ -110,6 +110,8 @@ namespace Ryujinx.Ava.UI.ViewModels
public ApplicationData ListSelectedApplication;
public ApplicationData GridSelectedApplication;
public MainWindow Window { get; init; }
internal AppHost AppHost { get; set; }
public MainWindowViewModel()
@ -1424,7 +1426,7 @@ namespace Ryujinx.Ava.UI.ViewModels
public async Task ExitCurrentState()
{
if (WindowState == WindowState.FullScreen)
if (WindowState == MainWindow.FullScreenWindowState)
{
ToggleFullscreen();
}
@ -1710,6 +1712,28 @@ namespace Ryujinx.Ava.UI.ViewModels
});
}
public async Task OpenAmiiboWindow()
{
if (!IsAmiiboRequested)
return;
if (AppHost.Device.System.SearchingForAmiibo(out int deviceId))
{
string titleId = AppHost.Device.Processes.ActiveApplication.ProgramIdText.ToUpper();
AmiiboWindow window = new(ShowAll, LastScannedAmiiboId, titleId);
await window.ShowDialog(Window);
if (window.IsScanned)
{
ShowAll = window.ViewModel.ShowAllAmiibo;
LastScannedAmiiboId = window.ScannedAmiibo.GetId();
AppHost.Device.System.ScanAmiibo(deviceId, LastScannedAmiiboId, window.ViewModel.UseRandomUuid);
}
}
}
public void ToggleFullscreen()
{
if (Environment.TickCount64 - LastFullscreenToggle < HotKeyPressDelayMs)
@ -1719,7 +1743,7 @@ namespace Ryujinx.Ava.UI.ViewModels
LastFullscreenToggle = Environment.TickCount64;
if (WindowState == WindowState.FullScreen)
if (WindowState is not WindowState.Normal)
{
WindowState = WindowState.Normal;
@ -1730,7 +1754,7 @@ namespace Ryujinx.Ava.UI.ViewModels
}
else
{
WindowState = WindowState.FullScreen;
WindowState = MainWindow.FullScreenWindowState;
if (IsGameRunning)
{
@ -1738,7 +1762,7 @@ namespace Ryujinx.Ava.UI.ViewModels
}
}
IsFullScreen = WindowState == WindowState.FullScreen;
IsFullScreen = WindowState == MainWindow.FullScreenWindowState;
}
public static void SaveConfig()