From 607d6056c1f55f3e9e2e24d39d00569330c90b82 Mon Sep 17 00:00:00 2001 From: vaguesyntax Date: Sun, 14 Dec 2025 14:07:01 +0300 Subject: [PATCH] fix(digital clock): layout and handle properties better --- .../ii/background/widgets/clock/ClockText.qml | 2 - .../background/widgets/clock/ClockWidget.qml | 2 + .../background/widgets/clock/DigitalClock.qml | 80 +++++++++---------- 3 files changed, 38 insertions(+), 46 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockText.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockText.qml index 39267b83d..6175c98a5 100644 --- a/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockText.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockText.qml @@ -5,7 +5,6 @@ import QtQuick.Layouts StyledText { Layout.fillWidth: true - horizontalAlignment: root.textHorizontalAlignment font { family: Appearance.font.family.expressive pixelSize: 20 @@ -13,7 +12,6 @@ StyledText { variableAxes: ({}) styleName: "" } - color: root.colText style: Text.Raised styleColor: Appearance.colors.colShadow animateChange: Config.options.background.widgets.clock.digital.animateChange diff --git a/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml index 4b41634a4..964755269 100644 --- a/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/ClockWidget.qml @@ -65,6 +65,7 @@ AbstractBackgroundWidget { fade: false sourceComponent: DigitalClock { colText: root.colText + textHorizontalAlignment: root.textHorizontalAlignment } } StatusRow { @@ -153,6 +154,7 @@ AbstractBackgroundWidget { ClockText { id: statusTextWidget color: statusTextRow.textColor + horizontalAlignment: root.textHorizontalAlignment anchors.verticalCenter: statusTextRow.verticalCenter font { pixelSize: Appearance.font.pixelSize.large diff --git a/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/DigitalClock.qml b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/DigitalClock.qml index 9e2613ee5..9709789d8 100644 --- a/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/DigitalClock.qml +++ b/dots/.config/quickshell/ii/modules/ii/background/widgets/clock/DigitalClock.qml @@ -12,68 +12,60 @@ import Quickshell.Io ColumnLayout { id: clockColumn - spacing: 6 + spacing: 4 property bool isVertical: Config.options.background.widgets.clock.digital.vertical property color colText: Appearance.colors.colOnSecondaryContainer + property string textHorizontalAlignment: Text.AlignHCenter - Item { - Layout.fillWidth: true - implicitHeight: timeTextTop.font.pixelSize + (clockColumn.isVertical ? timeTextBottom.font.pixelSize + 10 : 0) - implicitWidth: Math.max(timeTextTop.paintedWidth, timeTextBottom.paintedWidth) - - ClockText { - id: timeTextTop - text: clockColumn.isVertical ? DateTime.time.substring(0, 2) : DateTime.time - color: clockColumn.colText - anchors { - top: parent.top - horizontalCenter: parent.horizontalCenter - } - font { - pixelSize: Config.options.background.widgets.clock.digital.font.size - weight: Config.options.background.widgets.clock.digital.font.weight - family: Config.options.background.widgets.clock.digital.font.family - variableAxes: ({ - "wdth": Config.options.background.widgets.clock.digital.font.width, - "ROND": Config.options.background.widgets.clock.digital.font.roundness - }) - } + ClockText { + id: timeTextTop + text: clockColumn.isVertical ? DateTime.time.substring(0, 2) : DateTime.time + color: root.colText + horizontalAlignment: Text.AlignHCenter + font { + pixelSize: Config.options.background.widgets.clock.digital.font.size + weight: Config.options.background.widgets.clock.digital.font.weight + family: Config.options.background.widgets.clock.digital.font.family + variableAxes: ({ + "wdth": Config.options.background.widgets.clock.digital.font.width, + "ROND": Config.options.background.widgets.clock.digital.font.roundness + }) } - ClockText { - id: timeTextBottom - text: clockColumn.isVertical ? DateTime.time.substring(3, 5) : "" - visible: clockColumn.isVertical - color: clockColumn.colText + } - anchors { - bottom: parent.bottom - horizontalCenter: parent.horizontalCenter - } - font { - pixelSize: Config.options.background.widgets.clock.digital.font.size - weight: Config.options.background.widgets.clock.digital.font.weight - family: Config.options.background.widgets.clock.digital.font.family - variableAxes: ({ - "wdth": Config.options.background.widgets.clock.digital.font.width, - "ROND": Config.options.background.widgets.clock.digital.font.roundness - }) - } + ClockText { + id: timeTextBottom + text: DateTime.time.substring(3, 5) + visible: clockColumn.isVertical + color: root.colText + Layout.topMargin: -40 + horizontalAlignment: Text.AlignHCenter + font { + pixelSize: Config.options.background.widgets.clock.digital.font.size + weight: Config.options.background.widgets.clock.digital.font.weight + family: Config.options.background.widgets.clock.digital.font.family + variableAxes: ({ + "wdth": Config.options.background.widgets.clock.digital.font.width, + "ROND": Config.options.background.widgets.clock.digital.font.roundness + }) } } ClockText { visible: Config.options.background.widgets.clock.digital.showDate - Layout.topMargin: clockColumn.isVertical ? -10 : 0 + Layout.topMargin: -20 text: DateTime.longDate - color: clockColumn.colText + color: root.colText + horizontalAlignment: root.textHorizontalAlignment } ClockText { visible: Config.options.background.widgets.clock.quote.enable && Config.options.background.widgets.clock.quote.text.length > 0 font.pixelSize: Appearance.font.pixelSize.normal text: Config.options.background.widgets.clock.quote.text animateChange: false - color: clockColumn.colText + color: root.colText + horizontalAlignment: root.textHorizontalAlignment } }