From c901b9b56dcc7c460bdd5b1e58de766febfb18dc Mon Sep 17 00:00:00 2001 From: rope Date: Wed, 17 Jun 2026 14:48:31 +0100 Subject: [PATCH] =?UTF-8?q?quickshell:=20media=20card=20=E2=80=94=20title/?= =?UTF-8?q?artist=20right=20of=20art,=20controls+volume=20below?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 --- settings/quickshell.nix | 59 ++++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/settings/quickshell.nix b/settings/quickshell.nix index 46133f4..c81d3a6 100644 --- a/settings/quickshell.nix +++ b/settings/quickshell.nix @@ -2424,16 +2424,15 @@ in anchors.margins: 8 spacing: 8 - // Album art + transport controls share - // the top row, so the art can be large. - Item { + // Album art with title + artist to its + // right; controls and volume below. + Row { width: parent.width - height: 128 + spacing: 12 Rectangle { width: 128; height: 128 radius: Theme.radiusSmall - anchors.left: parent.left anchors.verticalCenter: parent.verticalCenter color: Theme.base02 clip: true @@ -2452,9 +2451,34 @@ in } } - Row { - anchors.right: parent.right + Column { + width: parent.width - 128 - 12 anchors.verticalCenter: parent.verticalCenter + spacing: 2 + SText { + width: parent.width + text: mediaCard.modelData.trackTitle + color: Theme.base05 + font.pixelSize: 13 + font.weight: Font.Medium + elide: Text.ElideRight + } + SText { + width: parent.width + text: mediaCard.modelData.trackArtist + color: Theme.base04 + font.pixelSize: 11 + elide: Text.ElideRight + } + } + } + + // Transport controls, centered below. + Item { + width: parent.width + height: 36 + Row { + anchors.centerIn: parent spacing: 4 Repeater { model: [ @@ -2484,27 +2508,6 @@ in } } - // Title, then artist, stacked below. - Column { - width: parent.width - spacing: 2 - SText { - width: parent.width - text: mediaCard.modelData.trackTitle - color: Theme.base05 - font.pixelSize: 13 - font.weight: Font.Medium - elide: Text.ElideRight - } - SText { - width: parent.width - text: mediaCard.modelData.trackArtist - color: Theme.base04 - font.pixelSize: 11 - elide: Text.ElideRight - } - } - // Per-source volume — same per-app path // as the volume widget. Shown when the // player's Pipewire stream is matched.