[vlc-commits] [Git][videolan/vlc][master] 2 commits: qml: adjust navigability of update pane loader in `MainDisplay`

Felix Paul Kühne (@fkuehne) gitlab at videolan.org
Tue Jun 9 14:13:23 UTC 2026



Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
d771166b by Fatih Uzunoglu at 2026-06-09T15:23:09+02:00
qml: adjust navigability of update pane loader in `MainDisplay`

This fixes accidental focus loss during key navigation,
since `NavigationAttached` navigates to visible items.

We don't adjust `visible` instead, because implicit height
calculation may depend on visibility.

- - - - -
ed840bd9 by Fatih Uzunoglu at 2026-06-09T15:23:09+02:00
qml: use better logic for determining the initial focus in `UpdatePane`

- - - - -


2 changed files:

- modules/gui/qt/maininterface/qml/MainDisplay.qml
- modules/gui/qt/maininterface/qml/UpdatePane.qml


Changes:

=====================================
modules/gui/qt/maininterface/qml/MainDisplay.qml
=====================================
@@ -674,6 +674,7 @@ FocusScope {
         Navigation.parentItem: mainColumn
         Navigation.upItem: mainRow
         Navigation.downItem: miniPlayer
+        Navigation.navigable: (active && height > 0.0)
 
         onLoaded: {            
             item.background.visible = Qt.binding(function() { return !stackViewParent.layer.enabled })


=====================================
modules/gui/qt/maininterface/qml/UpdatePane.qml
=====================================
@@ -173,9 +173,10 @@ T.Pane {
                 text: qsTr("Download")
                 showText: !rowLayout.collapseText
 
-                onVisibleChanged: {
-                    if (visible)
-                        focus = true // Request focus here by default
+                Binding on focus {
+                    when: downloadButton.visible
+                    delayed: true // to steal focus from dismiss button
+                    value: true
                 }
 
                 onClicked: {
@@ -206,12 +207,7 @@ T.Pane {
                 text: qsTr("Dismiss")
                 showText: false // Always collapsed
 
-                onVisibleChanged: {
-                    if (visible) {
-                        if (!downloadButton.visible || !downloadButton.focus)
-                            focus = true // Second chance for focus
-                    }
-                }
+                focus: true
 
                 Component.onCompleted: {
                     clicked.connect(root, dismissRequested)



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/5636c376366aece1c117ddb03210a174dfdd5e9a...ed840bd9aefc109d2b686772d7f153283ae4f549

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/5636c376366aece1c117ddb03210a174dfdd5e9a...ed840bd9aefc109d2b686772d7f153283ae4f549
You're receiving this email because of your account on code.videolan.org. Manage all notifications: https://code.videolan.org/-/profile/notifications | Help: https://code.videolan.org/help




More information about the vlc-commits mailing list