fix for caps lock

This commit is contained in:
Babib3l
2026-03-22 12:43:52 +01:00
parent 9aeb0c8c8c
commit 5809661664

View File

@@ -51,6 +51,11 @@ namespace Ryujinx.Ava.UI.Helpers
if (TryNormalizeObservedPrintableLabel(args.KeySymbol, out string label))
{
if (IsCapsLockOn() && !char.IsLetter(label[0]))
{
return;
}
if (_observedLayoutLabels.TryGetValue(physicalKey, out string existingLabel) && existingLabel == label)
{
return;
@@ -92,6 +97,18 @@ namespace Ryujinx.Ava.UI.Helpers
return true;
}
private static bool IsCapsLockOn()
{
try
{
return OperatingSystem.IsWindows() && Console.CapsLock;
}
catch
{
return false;
}
}
private static bool TryNormalizeObservedPrintableLabel(string keySymbol, out string label)
{
if (string.IsNullOrEmpty(keySymbol) || keySymbol.Length != 1 || char.IsControl(keySymbol[0]))