diff --git a/modules/gui/qt/maininterface/qml/MainDisplay.qml b/modules/gui/qt/maininterface/qml/MainDisplay.qml
index 31232c81b793fda2920c5cb9ef117a5f8ea408e9..3ac66b8af99bcff512cf7cece2e1cc0a298fe06f 100644
--- a/modules/gui/qt/maininterface/qml/MainDisplay.qml
+++ b/modules/gui/qt/maininterface/qml/MainDisplay.qml
@@ -199,14 +199,18 @@ FocusScope {
             }
 
             Navigation.parentItem: mainColumn
-            Navigation.downItem: stackView
+            Navigation.downItem: mainRow
         }
 
-        Item {
+        FocusScope {
+            id: mainRow
+
             Layout.fillWidth: true
             Layout.fillHeight: true
             z: 0
 
+            focus: true
+
             Rectangle {
                 id: stackViewParent
 
@@ -321,6 +325,12 @@ FocusScope {
 
                 readonly property bool shown: (status === Loader.Ready) && item.visible
 
+                onVisibleChanged: {
+                    if (!visible) {
+                        stackView.focus = true
+                    }
+                }
+
                 Component.onCompleted: {
                     Qt.callLater(() => { playlistTransition.enabled = true; })
                 }
@@ -533,7 +543,7 @@ FocusScope {
         background.visible: !stackViewParent.layer.enabled
 
         Navigation.parentItem: mainColumn
-        Navigation.upItem: stackView
+        Navigation.upItem: mainRow
         Navigation.cancelItem:sourcesBanner
         onVisibleChanged: {
             if (!visible && miniPlayer.activeFocus)