summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-09-23 23:18:12 +1000
committer2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-09-23 23:18:12 +1000
commitd79b5b7f716dbb7908b29fe80a883261d834d576 (patch)
treed3dfef7e44c1fb883811727d17aa143de1c5356b
parentdashboard/media: improve ui (diff)
downloadcaelestia-shell-d79b5b7f716dbb7908b29fe80a883261d834d576.tar.gz
caelestia-shell-d79b5b7f716dbb7908b29fe80a883261d834d576.tar.bz2
caelestia-shell-d79b5b7f716dbb7908b29fe80a883261d834d576.zip
players: persist active player across reloads
-rw-r--r--services/Players.qml12
1 files changed, 10 insertions, 2 deletions
diff --git a/services/Players.qml b/services/Players.qml
index 27249af..22aab3f 100644
--- a/services/Players.qml
+++ b/services/Players.qml
@@ -10,14 +10,22 @@ Singleton {
id: root
readonly property list<MprisPlayer> list: Mpris.players.values
- readonly property MprisPlayer active: manualActive ?? list.find(p => getIdentity(p) === Config.services.defaultPlayer) ?? list[0] ?? null
- property MprisPlayer manualActive
+ readonly property MprisPlayer active: props.manualActive ?? list.find(p => getIdentity(p) === Config.services.defaultPlayer) ?? list[0] ?? null
+ property alias manualActive: props.manualActive
function getIdentity(player: MprisPlayer): string {
const alias = Config.services.playerAliases.find(a => a.from === player.identity);
return alias?.to ?? player.identity;
}
+ PersistentProperties {
+ id: props
+
+ property MprisPlayer manualActive
+
+ reloadableId: "players"
+ }
+
CustomShortcut {
name: "mediaToggle"
description: "Toggle media playback"