From c30f18a2ee251e29425194412cc1158a8ed65ede Mon Sep 17 00:00:00 2001 From: Damocles Date: Mon, 13 Apr 2026 21:38:54 +0200 Subject: [PATCH] fix volume panel expansion: move trigger to sink name row, mute on bar click, longer hover timeout --- modules/Volume.qml | 52 +++++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 14 deletions(-) diff --git a/modules/Volume.qml b/modules/Volume.qml index c75abe5..eae863f 100644 --- a/modules/Volume.qml +++ b/modules/Volume.qml @@ -69,7 +69,7 @@ M.BarSection { Timer { id: _collapseTimer - interval: 500 + interval: 1500 onTriggered: root._expanded = false } @@ -81,7 +81,8 @@ M.BarSection { MouseArea { anchors.fill: parent cursorShape: Qt.PointingHandCursor - onClicked: root._expanded = !root._expanded + onClicked: if (root.sink?.audio) + root.sink.audio.muted = !root.sink.audio.muted } } M.BarLabel { @@ -92,7 +93,8 @@ M.BarSection { MouseArea { anchors.fill: parent cursorShape: Qt.PointingHandCursor - onClicked: root._expanded = !root._expanded + onClicked: if (root.sink?.audio) + root.sink.audio.muted = !root.sink.audio.muted } } @@ -197,18 +199,40 @@ M.BarSection { } } - // Sink name - Text { + // Sink name — click to expand/collapse device list + Item { width: parent.width - height: 18 - horizontalAlignment: Text.AlignHCenter - text: root.sink?.description ?? root.sink?.name ?? "" - color: M.Theme.base04 - font.pixelSize: M.Theme.fontSize - 2 - font.family: M.Theme.fontFamily - elide: Text.ElideRight - leftPadding: 12 - rightPadding: 12 + height: 22 + + Text { + anchors.left: parent.left + anchors.right: chevron.left + anchors.leftMargin: 12 + anchors.rightMargin: 4 + anchors.verticalCenter: parent.verticalCenter + text: root.sink?.description ?? root.sink?.name ?? "" + color: M.Theme.base04 + font.pixelSize: M.Theme.fontSize - 2 + font.family: M.Theme.fontFamily + elide: Text.ElideRight + } + + Text { + id: chevron + anchors.right: parent.right + anchors.rightMargin: 12 + anchors.verticalCenter: parent.verticalCenter + text: root._expanded ? "\uF077" : "\uF078" + color: M.Theme.base04 + font.pixelSize: M.Theme.fontSize - 3 + font.family: M.Theme.iconFontFamily + } + + MouseArea { + anchors.fill: parent + cursorShape: Qt.PointingHandCursor + onClicked: root._expanded = !root._expanded + } } // Expanded: output device list