diff --git a/src/fenrirscreenreader/fenrirVersion.py b/src/fenrirscreenreader/fenrirVersion.py index 211c52e3..7a22e146 100644 --- a/src/fenrirscreenreader/fenrirVersion.py +++ b/src/fenrirscreenreader/fenrirVersion.py @@ -4,6 +4,6 @@ # Fenrir TTY screen reader # By Chrys, Storm Dragon, and contributors. -version = "2025.07.21" +version = "2025.07.23" codeName = "testing" code_name = "testing" diff --git a/src/fenrirscreenreader/inputDriver/evdevDriver.py b/src/fenrirscreenreader/inputDriver/evdevDriver.py index 69f6af64..e9c2f44f 100644 --- a/src/fenrirscreenreader/inputDriver/evdevDriver.py +++ b/src/fenrirscreenreader/inputDriver/evdevDriver.py @@ -561,6 +561,15 @@ class driver(inputDriver): # 0 = Numlock # 1 = Capslock # 2 = Rollen + + # Use the first device with LED capability as authoritative source + # to avoid inconsistent readings from multiple devices during initialization + for fd, dev in self.iDevices.items(): + # Check if device has LED capability (capability 17) + if 17 in dev.capabilities(): + return led in dev.leds() + + # Fallback to old behavior if no device has LED capability for fd, dev in self.iDevices.items(): if led in dev.leds(): return True