Просмотр исходного кода

UI: Localize LED color & hide it until it's functional
Also moved IgnoreApplet to the System config section object.

Evan Husted 1 год назад
Родитель
Сommit
c140e9b23c

+ 26 - 1
src/Ryujinx/Assets/locales.json

@@ -7622,6 +7622,31 @@
         "zh_TW": "陀螺儀無感帶:"
       }
     },
+    {
+      "ID": "ControllerSettingsLedColor",
+      "Translations": {
+        "ar_SA": "",
+        "de_DE": "",
+        "el_GR": "",
+        "en_US": "Custom LED",
+        "es_ES": "",
+        "fr_FR": "",
+        "he_IL": "",
+        "it_IT": "",
+        "ja_JP": "",
+        "ko_KR": "",
+        "no_NO": "",
+        "pl_PL": "",
+        "pt_BR": "",
+        "ru_RU": "",
+        "sv_SE": "",
+        "th_TH": "",
+        "tr_TR": "",
+        "uk_UA": "",
+        "zh_CN": "",
+        "zh_TW": ""
+      }
+    },
     {
       "ID": "ControllerSettingsSave",
       "Translations": {
@@ -22973,4 +22998,4 @@
       }
     }
   ]
-}
+}

+ 1 - 1
src/Ryujinx/Headless/Options.cs

@@ -149,7 +149,7 @@ namespace Ryujinx.Headless
                 IgnoreMissingServices = configurationState.System.IgnoreMissingServices;
             
             if (NeedsOverride(nameof(IgnoreControllerApplet)))
-                IgnoreControllerApplet = configurationState.IgnoreApplet;
+                IgnoreControllerApplet = configurationState.System.IgnoreApplet;
             
             return;
             

+ 1 - 2
src/Ryujinx/UI/Applet/AvaHostUIHandler.cs

@@ -6,7 +6,6 @@ using Ryujinx.Ava.Common.Locale;
 using Ryujinx.Ava.UI.Controls;
 using Ryujinx.Ava.UI.Helpers;
 using Ryujinx.Ava.UI.ViewModels;
-using Ryujinx.Ava.UI.ViewModels.Input;
 using Ryujinx.Ava.UI.Windows;
 using Ryujinx.Ava.Utilities.Configuration;
 using Ryujinx.Common;
@@ -42,7 +41,7 @@ namespace Ryujinx.Ava.UI.Applet
 
             bool okPressed = false;
 
-            if (ConfigurationState.Instance.IgnoreApplet)
+            if (ConfigurationState.Instance.System.IgnoreApplet)
                 return false;
 
             Dispatcher.UIThread.InvokeAsync(async () =>

+ 3 - 2
src/Ryujinx/UI/ViewModels/Input/InputViewModel.cs

@@ -68,8 +68,9 @@ namespace Ryujinx.Ava.UI.ViewModels.Input
         public bool IsKeyboard => !IsController;
         public bool IsRight { get; set; }
         public bool IsLeft { get; set; }
-        
-        public bool HasLed => SelectedGamepad.Features.HasFlag(GamepadFeaturesFlag.Led);
+
+        public bool HasLed => false; //temporary
+            //SelectedGamepad.Features.HasFlag(GamepadFeaturesFlag.Led);
 
         public bool IsModified { get; set; }
         public event Action NotifyChangesEvent;

+ 5 - 5
src/Ryujinx/UI/ViewModels/SettingsViewModel.cs

@@ -488,7 +488,6 @@ namespace Ryujinx.Ava.UI.ViewModels
             EnableDiscordIntegration = config.EnableDiscordIntegration;
             CheckUpdatesOnStart = config.CheckUpdatesOnStart;
             ShowConfirmExit = config.ShowConfirmExit;
-            IgnoreApplet = config.IgnoreApplet;
             RememberWindowState = config.RememberWindowState;
             ShowTitleBar = config.ShowTitleBar;
             HideCursor = (int)config.HideCursor.Value;
@@ -532,6 +531,7 @@ namespace Ryujinx.Ava.UI.ViewModels
             EnableFsIntegrityChecks = config.System.EnableFsIntegrityChecks;
             DramSize = config.System.DramSize;
             IgnoreMissingServices = config.System.IgnoreMissingServices;
+            IgnoreApplet = config.System.IgnoreApplet;
 
             // CPU
             EnablePptc = config.System.EnablePtc;
@@ -591,7 +591,6 @@ namespace Ryujinx.Ava.UI.ViewModels
             config.EnableDiscordIntegration.Value = EnableDiscordIntegration;
             config.CheckUpdatesOnStart.Value = CheckUpdatesOnStart;
             config.ShowConfirmExit.Value = ShowConfirmExit;
-            config.IgnoreApplet.Value = IgnoreApplet;
             config.RememberWindowState.Value = RememberWindowState;
             config.ShowTitleBar.Value = ShowTitleBar;
             config.HideCursor.Value = (HideCursorMode)HideCursor;
@@ -632,12 +631,10 @@ namespace Ryujinx.Ava.UI.ViewModels
             }
 
             config.System.SystemTimeOffset.Value = Convert.ToInt64((CurrentDate.ToUnixTimeSeconds() + CurrentTime.TotalSeconds) - DateTimeOffset.Now.ToUnixTimeSeconds());
-            config.Graphics.VSyncMode.Value = VSyncMode;
-            config.Graphics.EnableCustomVSyncInterval.Value = EnableCustomVSyncInterval;
-            config.Graphics.CustomVSyncInterval.Value = CustomVSyncInterval;
             config.System.EnableFsIntegrityChecks.Value = EnableFsIntegrityChecks;
             config.System.DramSize.Value = DramSize;
             config.System.IgnoreMissingServices.Value = IgnoreMissingServices;
+            config.System.IgnoreApplet.Value = IgnoreApplet;
 
             // CPU
             config.System.EnablePtc.Value = EnablePptc;
@@ -646,6 +643,9 @@ namespace Ryujinx.Ava.UI.ViewModels
             config.System.UseHypervisor.Value = UseHypervisor;
 
             // Graphics
+            config.Graphics.VSyncMode.Value = VSyncMode;
+            config.Graphics.EnableCustomVSyncInterval.Value = EnableCustomVSyncInterval;
+            config.Graphics.CustomVSyncInterval.Value = CustomVSyncInterval;
             config.Graphics.GraphicsBackend.Value = (GraphicsBackend)GraphicsBackendIndex;
             config.Graphics.PreferredGpu.Value = _gpuIds.ElementAtOrDefault(PreferredGpuIndex);
             config.Graphics.EnableShaderCache.Value = EnableShaderCache;

+ 1 - 1
src/Ryujinx/UI/Views/Input/ControllerInputView.axaml

@@ -503,7 +503,7 @@
                                 MinWidth="0"
                                 Grid.Column="0"
                                 IsChecked="{Binding Config.EnableLedChanging, Mode=TwoWay}">
-                                <TextBlock Text="Custom LED color" />
+                                <TextBlock Text="{ext:Locale ControllerSettingsLedColor}" />
                             </CheckBox>
                             <ui:ColorPickerButton 
                                 Grid.Column="1"

+ 1 - 1
src/Ryujinx/Utilities/Configuration/ConfigurationState.Migration.cs

@@ -45,7 +45,6 @@ namespace Ryujinx.Ava.Utilities.Configuration
             EnableDiscordIntegration.Value = cff.EnableDiscordIntegration;
             CheckUpdatesOnStart.Value = cff.CheckUpdatesOnStart;
             ShowConfirmExit.Value = cff.ShowConfirmExit;
-            IgnoreApplet.Value = cff.IgnoreApplet;
             RememberWindowState.Value = cff.RememberWindowState;
             ShowTitleBar.Value = cff.ShowTitleBar;
             EnableHardwareAcceleration.Value = cff.EnableHardwareAcceleration;
@@ -97,6 +96,7 @@ namespace Ryujinx.Ava.Utilities.Configuration
             System.MemoryManagerMode.Value = cff.MemoryManagerMode;
             System.DramSize.Value = cff.DramSize;
             System.IgnoreMissingServices.Value = cff.IgnoreMissingServices;
+            System.IgnoreApplet.Value = cff.IgnoreApplet;
             System.UseHypervisor.Value = cff.UseHypervisor;
             
             UI.GuiColumns.FavColumn.Value = cff.GuiColumns.FavColumn;

+ 7 - 7
src/Ryujinx/Utilities/Configuration/ConfigurationState.Model.cs

@@ -366,6 +366,11 @@ namespace Ryujinx.Ava.Utilities.Configuration
             /// Enable or disable ignoring missing services
             /// </summary>
             public ReactiveObject<bool> IgnoreMissingServices { get; private set; }
+            
+            /// <summary>
+            ///  Ignore Controller Applet
+            /// </summary>
+            public ReactiveObject<bool> IgnoreApplet { get; private set; }
 
             /// <summary>
             /// Uses Hypervisor over JIT if available
@@ -404,6 +409,8 @@ namespace Ryujinx.Ava.Utilities.Configuration
                 DramSize.LogChangesToValue(nameof(DramSize));
                 IgnoreMissingServices = new ReactiveObject<bool>();
                 IgnoreMissingServices.LogChangesToValue(nameof(IgnoreMissingServices));
+                IgnoreApplet = new ReactiveObject<bool>();
+                IgnoreApplet.LogChangesToValue(nameof(IgnoreApplet));
                 AudioVolume = new ReactiveObject<float>();
                 AudioVolume.LogChangesToValue(nameof(AudioVolume));
                 UseHypervisor = new ReactiveObject<bool>();
@@ -745,11 +752,6 @@ namespace Ryujinx.Ava.Utilities.Configuration
         /// </summary>
         public ReactiveObject<bool> ShowConfirmExit { get; private set; }
 
-        /// <summary>
-        /// Ignore Applet
-        /// </summary>
-        public ReactiveObject<bool> IgnoreApplet { get; private set; }
-
         /// <summary>
         /// Enables or disables save window size, position and state on close.
         /// </summary>
@@ -782,8 +784,6 @@ namespace Ryujinx.Ava.Utilities.Configuration
             EnableDiscordIntegration = new ReactiveObject<bool>();
             CheckUpdatesOnStart = new ReactiveObject<bool>();
             ShowConfirmExit = new ReactiveObject<bool>();
-            IgnoreApplet = new ReactiveObject<bool>();
-            IgnoreApplet.LogChangesToValue(nameof(IgnoreApplet));
             RememberWindowState = new ReactiveObject<bool>();
             ShowTitleBar = new ReactiveObject<bool>();
             EnableHardwareAcceleration = new ReactiveObject<bool>();

+ 2 - 2
src/Ryujinx/Utilities/Configuration/ConfigurationState.cs

@@ -56,7 +56,6 @@ namespace Ryujinx.Ava.Utilities.Configuration
                 EnableDiscordIntegration = EnableDiscordIntegration,
                 CheckUpdatesOnStart = CheckUpdatesOnStart,
                 ShowConfirmExit = ShowConfirmExit,
-                IgnoreApplet = IgnoreApplet,
                 RememberWindowState = RememberWindowState,
                 ShowTitleBar = ShowTitleBar,
                 EnableHardwareAcceleration = EnableHardwareAcceleration,
@@ -78,6 +77,7 @@ namespace Ryujinx.Ava.Utilities.Configuration
                 MemoryManagerMode = System.MemoryManagerMode,
                 DramSize = System.DramSize,
                 IgnoreMissingServices = System.IgnoreMissingServices,
+                IgnoreApplet = System.IgnoreApplet,
                 UseHypervisor = System.UseHypervisor,
                 GuiColumns = new GuiColumns
                 {
@@ -176,7 +176,6 @@ namespace Ryujinx.Ava.Utilities.Configuration
             EnableDiscordIntegration.Value = true;
             CheckUpdatesOnStart.Value = true;
             ShowConfirmExit.Value = true;
-            IgnoreApplet.Value = false;
             RememberWindowState.Value = true;
             ShowTitleBar.Value = !OperatingSystem.IsWindows();
             EnableHardwareAcceleration.Value = true;
@@ -200,6 +199,7 @@ namespace Ryujinx.Ava.Utilities.Configuration
             System.MemoryManagerMode.Value = MemoryManagerMode.HostMappedUnsafe;
             System.DramSize.Value = MemoryConfiguration.MemoryConfiguration4GiB;
             System.IgnoreMissingServices.Value = false;
+            System.IgnoreApplet.Value = false;
             System.UseHypervisor.Value = true;
             Multiplayer.LanInterfaceId.Value = "0";
             Multiplayer.Mode.Value = MultiplayerMode.Disabled;