diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-25 18:43:26 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-25 18:43:26 +0200 |
| commit | 5c8f192b6e3fde2cdd35dbe7cd6c5f3f5c8e9d80 (patch) | |
| tree | 93f96e79813babfb3fe5cd948abaeb380255e5d2 /theme/components | |
| parent | 3ce95cbbbf40999974f3ba655f099a2e49f5d6c6 (diff) | |
| download | sddm-theme-udt-master.tar.gz sddm-theme-udt-master.zip | |
Read the login avatar from the `avatar` key udt-accent writes, the same
~/.user-icon.jpg hyprlock draws, when the entered username matches
`avatarUser`. Any other user still gets their AccountsService icon.
Shrink the avatar from 256px to 180px so greeter and lock match.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'theme/components')
| -rw-r--r-- | theme/components/Panel.qml | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/theme/components/Panel.qml b/theme/components/Panel.qml index 071f651..b0aa026 100644 --- a/theme/components/Panel.qml +++ b/theme/components/Panel.qml @@ -74,6 +74,13 @@ Item { : "?" function refreshAvatar() { + // udt-accent's avatar is the one hyprlock draws, so it wins for the + // user who generated it; everyone else keeps their AccountsService icon. + var own = config.stringValue("avatar") + if (own !== "" && creds.username === config.stringValue("avatarUser")) { + avatarPath = "file://" + own + return + } for (var i = 0; i < faces.count; ++i) { var it = faces.itemAt(i) if (it && it.faceName === creds.username) { @@ -129,8 +136,8 @@ Item { } Item { - width: 256 - height: 256 + width: 180 + height: 180 anchors.horizontalCenter: parent.horizontalCenter Rectangle { @@ -143,7 +150,7 @@ Item { text: panel.initials color: panel.textColor font.family: "Noto Sans" - font.pixelSize: 92 + font.pixelSize: 65 } } |
