From 34eaeeb06ba0e5a831ff1dd17fa199b13e52b965 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 25 Sep 2026 21:08:27 +0200 Subject: fix(sound): collapse the OSD track row when the player goes away A Loader keeps the height of its last item after active goes false. When a browser tab playing media was closed, its MPRIS player vanished, Player.active dropped and the window shrank to 100px, but the Loader still reserved 46px plus the Column spacing on top. The volume row was pushed down and clipped at the bottom edge, which is the "stuck" OSD a hot reload used to cure: a fresh Loader starts at zero height. Hiding the Loader while inactive makes the Column skip it. Both the retained height and the collapse were confirmed with headless qml6 runs. Co-Authored-By: Claude Opus 5.5 --- desktop/modules/sound/Osd.qml | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'desktop') diff --git a/desktop/modules/sound/Osd.qml b/desktop/modules/sound/Osd.qml index 49a977b..4a5e4a2 100644 --- a/desktop/modules/sound/Osd.qml +++ b/desktop/modules/sound/Osd.qml @@ -91,8 +91,13 @@ Scope { anchors.margins: 16 spacing: 12 + // A Loader keeps its last height after going inactive, so a + // player vanishing (a closed browser tab) left 46px of empty + // row on top and pushed the volume row out of the window. + // Hidden, the Column skips it. Loader { active: Player.active + visible: active width: parent.width sourceComponent: trackRow } -- cgit v1.2.3