From 80d0cc7d6fd57ee888649a31d162f96fed9bd082 Mon Sep 17 00:00:00 2001 From: Thog Date: Sun, 3 May 2020 15:00:29 +0200 Subject: system: Make index 0 of keyboards in configuration 'all keyboards' --- Ryujinx.Common/Configuration/ConfigurationFileFormat.cs | 2 +- Ryujinx.Common/Configuration/ConfigurationState.cs | 14 ++++++++++++++ Ryujinx.Common/Configuration/Hid/KeyboardConfig.cs | 3 +++ 3 files changed, 18 insertions(+), 1 deletion(-) (limited to 'Ryujinx.Common/Configuration') diff --git a/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs b/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs index 09252b77..db542ad7 100644 --- a/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs +++ b/Ryujinx.Common/Configuration/ConfigurationFileFormat.cs @@ -13,7 +13,7 @@ namespace Ryujinx.Configuration /// /// The current version of the file format /// - public const int CurrentVersion = 6; + public const int CurrentVersion = 7; public int Version { get; set; } diff --git a/Ryujinx.Common/Configuration/ConfigurationState.cs b/Ryujinx.Common/Configuration/ConfigurationState.cs index a994e6d5..d0a00cb5 100644 --- a/Ryujinx.Common/Configuration/ConfigurationState.cs +++ b/Ryujinx.Common/Configuration/ConfigurationState.cs @@ -556,6 +556,20 @@ namespace Ryujinx.Configuration configurationFileUpdated = true; } + // Only needed for version 6 configurations. + if (configurationFileFormat.Version == 6) + { + Common.Logging.Logger.PrintWarning(LogClass.Application, $"Outdated configuration version {configurationFileFormat.Version}, migrating to version 7."); + + for (int i = 0; i < configurationFileFormat.KeyboardConfig.Count; i++) + { + if (configurationFileFormat.KeyboardConfig[i].Index != KeyboardConfig.AllKeyboardsIndex) + { + configurationFileFormat.KeyboardConfig[i].Index++; + } + } + } + List inputConfig = new List(); foreach (ControllerConfig controllerConfig in configurationFileFormat.ControllerConfig) { diff --git a/Ryujinx.Common/Configuration/Hid/KeyboardConfig.cs b/Ryujinx.Common/Configuration/Hid/KeyboardConfig.cs index 664fdff0..7dfbcb87 100644 --- a/Ryujinx.Common/Configuration/Hid/KeyboardConfig.cs +++ b/Ryujinx.Common/Configuration/Hid/KeyboardConfig.cs @@ -2,6 +2,9 @@ namespace Ryujinx.Common.Configuration.Hid { public class KeyboardConfig : InputConfig { + // DO NOT MODIFY + public const uint AllKeyboardsIndex = 0; + /// /// Left JoyCon Keyboard Bindings /// -- cgit v1.2.3