diff --git a/RELEASE.md b/RELEASE.md index 7a875de..f163b94 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -20,3 +20,4 @@ - All SteamDeckTools settings are stored in `.ini` file in root folder - Detect SAS (Secure Attention Sequence) in a way that does not prevent screen sleep - Recreate X360 device on fatal failure (might happen after resume) +- DEBUG allows to keep X360 controller always connected diff --git a/SteamController/Devices/Xbox360Controller.cs b/SteamController/Devices/Xbox360Controller.cs index 252702f..8f66a56 100644 --- a/SteamController/Devices/Xbox360Controller.cs +++ b/SteamController/Devices/Xbox360Controller.cs @@ -91,7 +91,7 @@ namespace SteamController.Devices } submitReport = false; - Connected = false; + Connected = SettingsDebug.Default.KeepX360AlwaysConnected; } private void SetConnected(bool wantsConnected) @@ -133,6 +133,8 @@ namespace SteamController.Devices internal void Beep() { + if (SettingsDebug.Default.KeepX360AlwaysConnected) + return; if (device is null) return; diff --git a/SteamController/SettingsDebug.cs b/SteamController/SettingsDebug.cs index bfc380e..aa22a7b 100644 --- a/SteamController/SettingsDebug.cs +++ b/SteamController/SettingsDebug.cs @@ -13,6 +13,13 @@ namespace SteamController { } + [Description("Keep X360 controller connected always - it is strongly advised to disable this option. Might be required by some games that do not like disonnecting controller. Will disable beep notifications.")] + public bool KeepX360AlwaysConnected + { + get { return Get("KeepX360AlwaysConnected", false); } + set { Set("KeepX360AlwaysConnected", value); } + } + [Description("Use Lizard Buttons instead of emulated. This option is only for testing purposes.")] public bool LizardButtons { get; set; } = false;