From 4265290a0f8685e1b352eb33d445f9d969f7ed55 Mon Sep 17 00:00:00 2001 From: Matej Cotman Date: Sat, 6 Sep 2025 23:46:08 +0300 Subject: [PATCH 1/2] fix(fingerprint): better fingerprint integration by removing the check for empty password --- Modules/LockScreen/LockContext.qml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Modules/LockScreen/LockContext.qml b/Modules/LockScreen/LockContext.qml index 985bcd4..53bf26f 100644 --- a/Modules/LockScreen/LockContext.qml +++ b/Modules/LockScreen/LockContext.qml @@ -28,12 +28,6 @@ Scope { return } - if (currentText === "") { - errorMessage = "Password required" - showFailure = true - return - } - root.unlockInProgress = true errorMessage = "" showFailure = false From b9ae7729875528dea4325998dd059cf980587f95 Mon Sep 17 00:00:00 2001 From: Matej Cotman Date: Wed, 10 Sep 2025 19:48:39 +0300 Subject: [PATCH 2/2] feat(Modules/LockScreen): divert PAM messages to user (eg: to notify the user about fingerprint reader) --- Modules/LockScreen/LockContext.qml | 3 +++ Modules/LockScreen/LockScreen.qml | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Modules/LockScreen/LockContext.qml b/Modules/LockScreen/LockContext.qml index 53bf26f..98f09d3 100644 --- a/Modules/LockScreen/LockContext.qml +++ b/Modules/LockScreen/LockContext.qml @@ -12,6 +12,7 @@ Scope { property bool unlockInProgress: false property bool showFailure: false property string errorMessage: "" + property string infoMessage: "" property bool pamAvailable: typeof PamContext !== "undefined" onCurrentTextChanged: { @@ -47,6 +48,8 @@ Scope { if (messageIsError) { errorMessage = message + } else { + infoMessage = message } if (responseRequired) { diff --git a/Modules/LockScreen/LockScreen.qml b/Modules/LockScreen/LockScreen.qml index 2c1c956..9828bc3 100644 --- a/Modules/LockScreen/LockScreen.qml +++ b/Modules/LockScreen/LockScreen.qml @@ -515,6 +515,7 @@ Loader { width: 0 height: 0 visible: false + enabled: !lockContext.unlockInProgress font.family: Settings.data.ui.fontFixed font.pointSize: Style.fontSizeL * scaling color: Color.mOnSurface @@ -544,7 +545,7 @@ Loader { color: Color.mOnSurface font.family: Settings.data.ui.fontFixed font.pointSize: Style.fontSizeL * scaling - visible: passwordInput.activeFocus + visible: passwordInput.activeFocus && !lockContext.unlockInProgress SequentialAnimation { id: typingEffect @@ -588,7 +589,7 @@ Loader { NText { text: { if (lockContext.unlockInProgress) - return "Authenticating..." + return lockContext.infoMessage || "Authenticating..." if (lockContext.showFailure && lockContext.errorMessage) return lockContext.errorMessage if (lockContext.showFailure)