pragma ComponentBehavior: Bound import Quickshell.Services.Mpris import QtQuick import QtQuick.Layouts import QtQuick.Effects import Quickshell import Quickshell.Widgets import qs import qs.widgets import qs.settings BarComponent { id: root implicitWidth: songLayout.implicitWidth + 16 property MprisPlayer spotify: { for (const player of Mpris.players.values) { if (player.identity === "Spotify") return player; } return null; } visible: spotify !== null active: clickHandler.containsMouse RowLayout { id: songLayout anchors.centerIn: root StyledIcon { iconName: "music-note" } StyledText { Layout.maximumWidth: 400 Layout.maximumHeight: Config.cfg.bar.barHeight / 1.6 text: root.spotify?.trackTitle + " - " + root.spotify?.trackArtists elide: Text.ElideRight } } MouseArea { id: clickHandler anchors.fill: root hoverEnabled: true onClicked: root.spotify.togglePlaying() acceptedButtons: Qt.LeftButton cursorShape: Qt.PointingHandCursor } }