From 69004c072c5a010347a8f32b5ed095e6cb7a9dba Mon Sep 17 00:00:00 2001 From: loner <2788892716@qq.com> Date: Fri, 28 Nov 2025 15:27:55 +0800 Subject: [PATCH] fix: Caps Off OSD color inconsistency with Num Off OSD --- Modules/OSD/OSD.qml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/Modules/OSD/OSD.qml b/Modules/OSD/OSD.qml index 7e8827eb..c04f5539 100644 --- a/Modules/OSD/OSD.qml +++ b/Modules/OSD/OSD.qml @@ -121,7 +121,14 @@ Variants { } // For lock keys, use a different color to indicate the lock state if (currentOSDType === OSD.Type.LockKey) { - return LockKeysService.capsLockOn || LockKeysService.numLockOn || LockKeysService.scrollLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + // Check the specific lock key that was changed + if (lastLockKeyChanged.startsWith("CAPS")) { + return LockKeysService.capsLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + } else if (lastLockKeyChanged.startsWith("NUM")) { + return LockKeysService.numLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + } else if (lastLockKeyChanged.startsWith("SCROLL")) { + return LockKeysService.scrollLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + } } return Color.mPrimary; } @@ -132,7 +139,14 @@ Variants { return Color.mError; if (currentOSDType === OSD.Type.LockKey) { - return LockKeysService.capsLockOn || LockKeysService.numLockOn || LockKeysService.scrollLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + // Check the specific lock key that was changed + if (lastLockKeyChanged.startsWith("CAPS")) { + return LockKeysService.capsLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + } else if (lastLockKeyChanged.startsWith("NUM")) { + return LockKeysService.numLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + } else if (lastLockKeyChanged.startsWith("SCROLL")) { + return LockKeysService.scrollLockOn ? Color.mPrimary : Color.mOnSurfaceVariant; + } } return Color.mOnSurface;