import Quickshell import Quickshell.Services.Mpris import Quickshell.Widgets import QtQuick import Qt5Compat.GraphicalEffects import QtQuick.Layouts import qs import qs.settings import qs.widgets WrapperRectangle { id: root margin: Settings.config.barmargins layer { enabled: true effect: DropShadow { color: "#111111" radius: 4 verticalOffset: 2 horizontalOffset: 2 samples: 18 } } color: Colors.base02 implicitWidth: songLayout.implicitWidth + 20 implicitHeight: Settings.config.barHeight - margin * 2 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; } child: Item { 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 } } } }