diff --git a/Ryujinx.Ava/App.axaml b/Ryujinx.Ava/App.axaml
index 0db016297..eb9ffd865 100644
--- a/Ryujinx.Ava/App.axaml
+++ b/Ryujinx.Ava/App.axaml
@@ -1,9 +1,9 @@
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:sty="using:FluentAvalonia.Styling">
-
+
\ No newline at end of file
diff --git a/Ryujinx.Ava/App.axaml.cs b/Ryujinx.Ava/App.axaml.cs
index a76de8b32..6ecf0198e 100644
--- a/Ryujinx.Ava/App.axaml.cs
+++ b/Ryujinx.Ava/App.axaml.cs
@@ -2,7 +2,6 @@ using Avalonia;
using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Avalonia.Styling;
-using Avalonia.Threading;
using FluentAvalonia.Styling;
using Ryujinx.Ava.Ui.Windows;
using Ryujinx.Common;
@@ -13,7 +12,7 @@ using System.IO;
namespace Ryujinx.Ava
{
- public class App : Avalonia.Application
+ public class App : Application
{
public override void Initialize()
{
@@ -46,7 +45,7 @@ namespace Ryujinx.Ava
private void ShowRestartDialog()
{
- // TODO. Implement Restart Dialog when SettingsWindow is implemented.
+ // TODO: Implement Restart Dialog when SettingsWindow is implemented.
}
private void ThemeChanged_Event(object sender, ReactiveEventArgs e)
diff --git a/Ryujinx.Ava/AppHost.cs b/Ryujinx.Ava/AppHost.cs
index 09163bd60..1a6ba0244 100644
--- a/Ryujinx.Ava/AppHost.cs
+++ b/Ryujinx.Ava/AppHost.cs
@@ -57,7 +57,7 @@ namespace Ryujinx.Ava
private static readonly Cursor InvisibleCursor = new Cursor(StandardCursorType.None);
private readonly AccountManager _accountManager;
- private UserChannelPersistence _userChannelPersistence;
+ private readonly UserChannelPersistence _userChannelPersistence;
private readonly InputManager _inputManager;
@@ -82,7 +82,6 @@ namespace Ryujinx.Ava
private bool _dialogShown;
private WindowsMultimediaTimerResolution _windowsMultimediaTimerResolution;
- private KeyboardStateSnapshot _lastKeyboardSnapshot;
private readonly CancellationTokenSource _gpuCancellationTokenSource;
@@ -126,7 +125,6 @@ namespace Ryujinx.Ava
_glLogLevel = ConfigurationState.Instance.Logger.GraphicsDebugLevel;
_inputManager.SetMouseDriver(new AvaloniaMouseDriver(renderer));
_keyboardInterface = (IKeyboard)_inputManager.KeyboardDriver.GetGamepad("0");
- _lastKeyboardSnapshot = _keyboardInterface.GetKeyboardStateSnapshot();
NpadManager = _inputManager.CreateNpadManager();
TouchScreenManager = _inputManager.CreateTouchScreenManager();
@@ -722,9 +720,7 @@ namespace Ryujinx.Ava
}
}
- var memoryConfiguration = ConfigurationState.Instance.System.ExpandRam.Value
- ? HLE.MemoryConfiguration.MemoryConfiguration6GB
- : HLE.MemoryConfiguration.MemoryConfiguration4GB;
+ var memoryConfiguration = ConfigurationState.Instance.System.ExpandRam.Value ? HLE.MemoryConfiguration.MemoryConfiguration6GB : HLE.MemoryConfiguration.MemoryConfiguration4GB;
IntegrityCheckLevel fsIntegrityCheckLevel = ConfigurationState.Instance.System.EnableFsIntegrityChecks ? IntegrityCheckLevel.ErrorOnInvalid : IntegrityCheckLevel.None;
@@ -898,7 +894,7 @@ namespace Ryujinx.Ava
}
}
- private void HandleScreenState(KeyboardStateSnapshot keyboard, KeyboardStateSnapshot lastKeyboard)
+ private void HandleScreenState()
{
if (ConfigurationState.Instance.Hid.EnableMouse)
{
@@ -935,19 +931,12 @@ namespace Ryujinx.Ava
{
Dispatcher.UIThread.Post(() =>
{
- KeyboardStateSnapshot keyboard = _keyboardInterface.GetKeyboardStateSnapshot();
+ HandleScreenState();
- HandleScreenState(keyboard, _lastKeyboardSnapshot);
-
- if (keyboard.IsPressed(Key.Delete))
+ if (_keyboardInterface.GetKeyboardStateSnapshot().IsPressed(Key.Delete) && _parent.WindowState != WindowState.FullScreen)
{
- if (_parent.WindowState != WindowState.FullScreen)
- {
- Ptc.Continue();
- }
+ Ptc.Continue();
}
-
- _lastKeyboardSnapshot = keyboard;
});
}
diff --git a/Ryujinx.Ava/Assets/Styles/BaseDark.xaml b/Ryujinx.Ava/Assets/Styles/BaseDark.xaml
index b80cb11fa..e32c3d087 100644
--- a/Ryujinx.Ava/Assets/Styles/BaseDark.xaml
+++ b/Ryujinx.Ava/Assets/Styles/BaseDark.xaml
@@ -1,9 +1,7 @@
-
+
-
+
@@ -27,8 +25,12 @@
Name="btnRem"
HorizontalAlignment="Right"
Content="Add" />
-
+
Test Check
diff --git a/Ryujinx.Ava/Assets/Styles/BaseLight.xaml b/Ryujinx.Ava/Assets/Styles/BaseLight.xaml
index c27398952..1d1e4fae5 100644
--- a/Ryujinx.Ava/Assets/Styles/BaseLight.xaml
+++ b/Ryujinx.Ava/Assets/Styles/BaseLight.xaml
@@ -1,9 +1,7 @@
-
+
-
+
@@ -27,8 +25,12 @@
Name="btnRem"
HorizontalAlignment="Right"
Content="Add" />
-
+
Test Check
diff --git a/Ryujinx.Ava/Assets/Styles/Styles.xaml b/Ryujinx.Ava/Assets/Styles/Styles.xaml
index 422e6fa43..5ab0a8611 100644
--- a/Ryujinx.Ava/Assets/Styles/Styles.xaml
+++ b/Ryujinx.Ava/Assets/Styles/Styles.xaml
@@ -1,10 +1,10 @@
+ xmlns:sys="clr-namespace:System;assembly=netstandard"
+ xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia">
-
+
@@ -22,15 +22,19 @@
-
+
Test Check
@@ -62,13 +66,10 @@
-
-
-
@@ -225,12 +226,12 @@
-
+
-
+
@@ -241,7 +242,6 @@
40 0 40 0
0 5 0 5
- 0 4 0 0
5 0 5 0
#00000000
#FF00C3E3
diff --git a/Ryujinx.Ava/Ui/Applet/ErrorAppletWindow.axaml b/Ryujinx.Ava/Ui/Applet/ErrorAppletWindow.axaml
index 6d365abf4..9816dbec7 100644
--- a/Ryujinx.Ava/Ui/Applet/ErrorAppletWindow.axaml
+++ b/Ryujinx.Ava/Ui/Applet/ErrorAppletWindow.axaml
@@ -1,17 +1,21 @@
-
-
+
+
@@ -21,11 +25,28 @@
-
-
-
+
+
+
\ No newline at end of file
diff --git a/Ryujinx.Ava/Ui/Applet/SwkbdAppletDialog.axaml b/Ryujinx.Ava/Ui/Applet/SwkbdAppletDialog.axaml
index b027a230e..329c74230 100644
--- a/Ryujinx.Ava/Ui/Applet/SwkbdAppletDialog.axaml
+++ b/Ryujinx.Ava/Ui/Applet/SwkbdAppletDialog.axaml
@@ -1,12 +1,16 @@
-
-
+
+
@@ -18,15 +22,43 @@
-
-
-
-
-
+
+
+
+
+
\ No newline at end of file
diff --git a/Ryujinx.Ava/Ui/Controls/GameGridView.axaml b/Ryujinx.Ava/Ui/Controls/GameGridView.axaml
index 13b75f119..431bcf00f 100644
--- a/Ryujinx.Ava/Ui/Controls/GameGridView.axaml
+++ b/Ryujinx.Ava/Ui/Controls/GameGridView.axaml
@@ -1,188 +1,219 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ VerticalAlignment="Stretch"
+ 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}"
+ ClipToBounds="True"
+ CornerRadius="5">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Ryujinx.Ava/Ui/Controls/GameListView.axaml b/Ryujinx.Ava/Ui/Controls/GameListView.axaml
index 7ab79c231..6fe0b1620 100644
--- a/Ryujinx.Ava/Ui/Controls/GameListView.axaml
+++ b/Ryujinx.Ava/Ui/Controls/GameListView.axaml
@@ -1,13 +1,16 @@
-
+
@@ -88,18 +91,23 @@
-
+
-
+
@@ -112,16 +120,16 @@
-
-
+
+
-
-
+
+
-
-
+
+
@@ -130,54 +138,96 @@
-
-
+
+
-
-
-
-
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+ 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}}" />
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Ryujinx.Ava/Ui/Controls/InputDialog.axaml b/Ryujinx.Ava/Ui/Controls/InputDialog.axaml
index 6f3203013..e665a8128 100644
--- a/Ryujinx.Ava/Ui/Controls/InputDialog.axaml
+++ b/Ryujinx.Ava/Ui/Controls/InputDialog.axaml
@@ -1,18 +1,31 @@
-
-
+
+
-
-
+
+
\ No newline at end of file
diff --git a/Ryujinx.Ava/Ui/Controls/UpdateWaitWindow.axaml b/Ryujinx.Ava/Ui/Controls/UpdateWaitWindow.axaml
index 24aded246..247849adf 100644
--- a/Ryujinx.Ava/Ui/Controls/UpdateWaitWindow.axaml
+++ b/Ryujinx.Ava/Ui/Controls/UpdateWaitWindow.axaml
@@ -1,14 +1,18 @@
-
-
+
+
@@ -17,12 +21,22 @@
-
-
-
-
+
+
+
+
\ No newline at end of file
diff --git a/Ryujinx.Ava/Ui/Windows/AboutWindow.axaml b/Ryujinx.Ava/Ui/Windows/AboutWindow.axaml
index 20185fd2a..aeaac5daa 100644
--- a/Ryujinx.Ava/Ui/Windows/AboutWindow.axaml
+++ b/Ryujinx.Ava/Ui/Windows/AboutWindow.axaml
@@ -1,28 +1,41 @@
-
-
+
+
-
-
+
+
-
+
@@ -40,93 +53,168 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
-
+
+
-
+
-
+
-
+
@@ -136,27 +224,58 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
diff --git a/Ryujinx.Ava/Ui/Windows/MainWindow.axaml b/Ryujinx.Ava/Ui/Windows/MainWindow.axaml
index 642f241c6..532be2195 100644
--- a/Ryujinx.Ava/Ui/Windows/MainWindow.axaml
+++ b/Ryujinx.Ava/Ui/Windows/MainWindow.axaml
@@ -1,25 +1,25 @@