volume mixer: adjust layout

This commit is contained in:
end-4
2025-07-13 01:54:30 +07:00
parent a5831cf365
commit 66d1d3e9c3
@@ -11,24 +11,42 @@ import Quickshell.Services.Pipewire
Item { Item {
id: root id: root
required property PwNode node; required property PwNode node
PwObjectTracker { objects: [ node ] } PwObjectTracker {
objects: [node]
}
implicitHeight: rowLayout.implicitHeight implicitHeight: rowLayout.implicitHeight
RowLayout { RowLayout {
id: rowLayout id: rowLayout
anchors.fill: parent anchors.fill: parent
spacing: 10 spacing: 6
Image {
property real size: slider.height * 0.9
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
visible: source != ""
sourceSize.width: size
sourceSize.height: size
source: {
let icon;
icon = AppSearch.guessIcon(root.node.properties["application.icon-name"]);
if (AppSearch.iconExists(icon))
return Quickshell.iconPath(icon, "image-missing");
icon = AppSearch.guessIcon(root.node.properties["node.name"]);
return Quickshell.iconPath(icon, "image-missing");
}
}
ColumnLayout { ColumnLayout {
Layout.fillWidth: true Layout.fillWidth: true
spacing: 0 spacing: -4
RowLayout {
StyledText { StyledText {
Layout.fillWidth: true Layout.fillWidth: true
font.pixelSize: Appearance.font.pixelSize.normal font.pixelSize: Appearance.font.pixelSize.small
color: Appearance.colors.colSubtext
elide: Text.ElideRight elide: Text.ElideRight
text: { text: {
// application.name -> description -> name // application.name -> description -> name
@@ -37,23 +55,7 @@ Item {
return media != undefined ? `${app} ${media}` : app; return media != undefined ? `${app} ${media}` : app;
} }
} }
}
RowLayout {
Image {
property real size: slider.trackHeight * 1.3
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
visible: source != ""
sourceSize.width: size
sourceSize.height: size
source: {
let icon;
icon = AppSearch.guessIcon(root.node.properties["application.icon-name"]);
if (AppSearch.iconExists(icon)) return Quickshell.iconPath(icon, "image-missing");
icon = AppSearch.guessIcon(root.node.properties["node.name"]);
return Quickshell.iconPath(icon, "image-missing");
}
}
StyledSlider { StyledSlider {
id: slider id: slider
value: root.node.audio.volume value: root.node.audio.volume
@@ -61,5 +63,4 @@ Item {
} }
} }
} }
}
} }