aboutsummaryrefslogtreecommitdiffstats
path: root/theme/components/Backdrop.qml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-17 14:37:07 +0200
committerDanilo M. <danix@danix.xyz>2026-09-17 14:37:07 +0200
commit27ef16187a672acb96e8d930e0ab4bf893ad8f6a (patch)
tree9ce5a7b3c697bf267db0569101b22dca2283ffe9 /theme/components/Backdrop.qml
parent8ead58fb5baa8d781159cf443c0f7ffd68cb6775 (diff)
downloadsddm-theme-udt-27ef16187a672acb96e8d930e0ab4bf893ad8f6a.tar.gz
sddm-theme-udt-27ef16187a672acb96e8d930e0ab4bf893ad8f6a.zip
fix: quote dateFormat and gate hidden credential field focus
Quote the comma-bearing dateFormat default; QSettings reads an unquoted comma as a QStringList and SDDM's stringValue() then returns the empty string, leaving the value inert. Note the caveat in the README Panel section. Set activeFocusOnTab per credential stage so Tab cannot reach the offscreen, transparent field and silently append to the submitted value. forceActiveFocus() ignores activeFocusOnTab, so focusStage() still lands focus in each stage. Apply the remaining review fixes: compare the PowerBar fallback as a string, animate the back chevron width, give both opacity behaviours an OutCubic easing, gate the clock timer on panel visibility, clamp panelWidth to 1, and reword stale "card" prose to "panel".
Diffstat (limited to 'theme/components/Backdrop.qml')
-rw-r--r--theme/components/Backdrop.qml8
1 files changed, 4 insertions, 4 deletions
diff --git a/theme/components/Backdrop.qml b/theme/components/Backdrop.qml
index c13b766..de39bc2 100644
--- a/theme/components/Backdrop.qml
+++ b/theme/components/Backdrop.qml
@@ -1,9 +1,9 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (C) 2026 Danilo M. <danix@danix.xyz>
//
-// A frosted panel. It snapshots the wallpaper image the card sits on, blurs it
-// and masks it to the card's rounded rect, then tints it for text contrast.
-// When there is no source, only the tint draws, so the card still reads.
+// A frosted panel. It snapshots the wallpaper image the panel sits on, blurs it
+// and masks it to the panel's rounded rect, then tints it for text contrast.
+// When there is no source, only the tint draws, so the panel still reads.
import QtQuick
import QtQuick.Effects
@@ -25,7 +25,7 @@ Item {
if (backdrop.sourceItem === null)
return Qt.rect(0, 0, 0, 0)
// Guard reads: mapToItem() hides its reads in C++, so the binding
- // would not otherwise re-run when the card or image moves (e.g.
+ // would not otherwise re-run when the panel or image moves (e.g.
// the failed-login shake). Reading the coordinates registers them.
var _guard = backdrop.x + backdrop.y + backdrop.parent.x + backdrop.parent.y
+ backdrop.sourceItem.x + backdrop.sourceItem.y