From 22db61bebaba4fdc58110f8bcc07313d330ac658 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 16 Oct 2026 10:11:24 +0200 Subject: style(user): a larger avatar and dropdowns in the theme The avatar had room to spare at 96px; 160 fills the page better. The two ComboBoxes rendered in the default style's light colours on a dark page; a palette takes the theme into the control and its popup, and the background matches the text fields. Co-Authored-By: Claude Opus 5.5 --- desktop/modules/user/UserPage.qml | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'desktop/modules/user') diff --git a/desktop/modules/user/UserPage.qml b/desktop/modules/user/UserPage.qml index f559538..feaf85f 100644 --- a/desktop/modules/user/UserPage.qml +++ b/desktop/modules/user/UserPage.qml @@ -144,9 +144,9 @@ Column { ClippingRectangle { anchors.horizontalCenter: parent.horizontalCenter - width: 96 - height: 96 - radius: 48 + width: 160 + height: 160 + radius: 80 color: Theme.surfaceAlt Image { @@ -154,14 +154,14 @@ Column { anchors.fill: parent source: form.draft.avatar ? "file://" + form.draft.avatar.split("/").map(encodeURIComponent).join("/") : "" fillMode: Image.PreserveAspectCrop - sourceSize: Qt.size(192, 192) + sourceSize: Qt.size(320, 320) cache: false } Text { anchors.centerIn: parent visible: pic.status !== Image.Ready text: "\uf007" - font { family: Theme.iconFamily; pixelSize: 40 } + font { family: Theme.iconFamily; pixelSize: 64 } color: Theme.subtext } MouseArea { @@ -233,6 +233,23 @@ Column { // arrives, which is after the draft. currentIndex: count >= 0 ? indexOfValue(form.draft[field.modelData.key] ?? "") : -1 onActivated: form.set(field.modelData.key, currentValue) + + // The default style paints a light control; the palette + // carries the theme into the popup and its rows too, and the + // background matches the text fields above. + implicitHeight: 34 + font { family: Theme.fontFamily; pixelSize: Theme.fontSize - 2 } + palette { + button: Theme.surface + buttonText: Theme.text + window: Theme.base + windowText: Theme.text + base: Theme.surface + text: Theme.text + highlight: Theme.accent + highlightedText: Theme.base + } + background: Rectangle { radius: 8; color: Theme.surface } } Text { -- cgit v1.2.3