import Quickshell import Quickshell.Services.Mpris import QtQuick import Qt5Compat.GraphicalEffects import QtQuick.Layouts import qs import qs.settings import qs.widgets Rectangle { layer { enabled: true effect: DropShadow { color: Colors.base01 radius: 4 verticalOffset: 2 horizontalOffset: 2 samples: 18 } } id: root color: Colors.base02 implicitWidth: songLayout.implicitWidth + 14 implicitHeight: Settings.config.barHeight / 1.5 radius: Settings.config.rounding property var spotify: root.getSpotify() visible: getSpotify() == null ? false : true function getSpotify() { for (var i = 0; i < Mpris.players.values.length; i++) { if (Mpris.players.values[i].identity == "Spotify" || Mpris.players.values[i] == "spotify") { return Mpris.players.values[i]; } else { return null; } } return null; } RowLayout { id: songLayout anchors.centerIn: parent CText { id: playingSong Layout.maximumWidth: 400 text: root.spotify == null ? "" : root.spotify.trackTitle + " - " + root.spotify.trackArtist elide: Text.ElideRight } } }