diff --git a/dotfiles/.config/quickshell/modules/osd/VolumeOsd.qml b/dotfiles/.config/quickshell/modules/osd/VolumeOsd.qml index 52f6e68..e80aea1 100644 --- a/dotfiles/.config/quickshell/modules/osd/VolumeOsd.qml +++ b/dotfiles/.config/quickshell/modules/osd/VolumeOsd.qml @@ -11,16 +11,13 @@ PanelWindow { color: "transparent" exclusiveZone: 0 - // Top-right, just under the bar — same fixed distance from the bar and - // screen edge (Appearance.spacing) that every popup opened from the bar - // itself uses, so this lines up with them instead of floating - // bottom-center. - anchors { top: true; right: true } - margins.top: Appearance.spacing - margins.right: Appearance.spacing + // Bottom-center: anchoring only the bottom edge lets the layer shell + // center it horizontally. + anchors { bottom: true } + margins.bottom: Appearance.spacing * 4 - implicitWidth: 272 - implicitHeight: 54 + implicitWidth: 300 + implicitHeight: 60 WlrLayershell.layer: WlrLayer.Overlay WlrLayershell.namespace: "quickshell:osd" @@ -49,13 +46,13 @@ PanelWindow { RowLayout { anchors.fill: parent - anchors.margins: 14 - spacing: 12 + anchors.margins: 15 + spacing: 13 Text { font.family: Appearance.iconFontFamilyRounded font.variableAxes: Appearance.iconFontAxes - font.pixelSize: 18 + font.pixelSize: 21 color: Colors.foreground text: { const audio = osd.sink ? osd.sink.audio : null @@ -67,7 +64,7 @@ PanelWindow { Item { id: slider Layout.fillWidth: true - implicitHeight: 16 + implicitHeight: 18 readonly property real value: osd.sink && osd.sink.audio ? osd.sink.audio.volume : 0 readonly property bool enabled: !!osd.sink @@ -76,7 +73,7 @@ PanelWindow { id: track anchors.verticalCenter: parent.verticalCenter width: parent.width - height: 4 + height: 5 radius: 0 color: Colors.muted opacity: 0.35 @@ -85,15 +82,15 @@ PanelWindow { anchors.verticalCenter: parent.verticalCenter anchors.left: parent.left width: track.width * Math.max(0, Math.min(1, slider.value)) - height: 4 + height: 5 radius: 0 color: Colors.primary opacity: slider.enabled ? 1 : 0.4 } Rectangle { - width: 12 - height: 12 - radius: 6 + width: 14 + height: 14 + radius: 7 color: Colors.primary opacity: slider.enabled ? 1 : 0.4 anchors.verticalCenter: parent.verticalCenter @@ -113,10 +110,10 @@ PanelWindow { } Text { - Layout.preferredWidth: 32 + Layout.preferredWidth: 38 horizontalAlignment: Text.AlignRight font.family: Appearance.fontFamily - font.pixelSize: Appearance.fontSizeSmall + font.pixelSize: 13 color: Colors.muted text: Math.round(slider.value * 100) + "%" }