diff --git a/applet/contents/ui/ListItemBase.qml b/applet/contents/ui/ListItemBase.qml --- a/applet/contents/ui/ListItemBase.qml +++ b/applet/contents/ui/ListItemBase.qml @@ -53,15 +53,18 @@ height: column.height RowLayout { - id: rowLayout + id: controlsRow + spacing: units.smallSpacing anchors.left: parent.left anchors.right: parent.right PlasmaCore.IconItem { id: clientIcon Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter - Layout.preferredHeight: column.height * 0.75 - Layout.preferredWidth: Layout.preferredHeight + Layout.minimumHeight: column.height * 0.75 + Layout.minimumWidth: Layout.minimumHeight + Layout.maximumHeight: Layout.minimumHeight + Layout.maximumWidth: Layout.minimumWidth source: "unknown" visible: type === "sink-input" || type === "source-input" @@ -105,13 +108,17 @@ ColumnLayout { id: column - spacing: 0 + Layout.minimumHeight: contextMenuButton.implicitHeight * 2 + units.smallSpacing + Layout.maximumHeight: Layout.minimumHeight RowLayout { - Layout.minimumHeight: contextMenuButton.height + spacing: 0 + Layout.minimumHeight: contextMenuButton.implicitHeight PlasmaComponents3.RadioButton { id: defaultButton + Layout.maximumWidth: controlsRow.width - (clientIcon.visible ? clientIcon.width + units.smallSpacing : 0) + - (contextMenuButton.visible ? contextMenuButton.implicitWidth + units.smallSpacing : 0) Layout.leftMargin: LayoutMirroring.enabled ? 0 : Math.round((muteButton.width - defaultButton.indicator.width) / 2) Layout.rightMargin: LayoutMirroring.enabled ? Math.round((muteButton.width - defaultButton.indicator.width) / 2) : 0 spacing: units.smallSpacing + Math.round((muteButton.width - defaultButton.indicator.width) / 2) @@ -122,6 +129,7 @@ Label { id: soloLabel + Layout.maximumWidth: defaultButton.Layout.maximumWidth text: defaultButton.text visible: !defaultButton.visible elide: Text.ElideRight