diff --git a/modules/gui/qt/network/qml/BrowseDeviceView.qml b/modules/gui/qt/network/qml/BrowseDeviceView.qml index e6eda2a80e5058959e9b4a5949e85bd3a2dda972..8b57a7c7cb4b5a718f8d2b3c0d14e1074d3413a0 100644 --- a/modules/gui/qt/network/qml/BrowseDeviceView.qml +++ b/modules/gui/qt/network/qml/BrowseDeviceView.qml @@ -71,6 +71,13 @@ FocusScope { property string title + property bool interactive: true + + property bool enableBeginningFade: true + property bool enableEndFade: true + + property bool reuseItems: true + // Aliases property alias leftPadding: view.leftPadding @@ -202,6 +209,10 @@ FocusScope { selectionModel: modelSelect + interactive: root.interactive + + reuseItems: root.reuseItems + Navigation.parentItem: root Navigation.upItem: headerItem @@ -303,6 +314,13 @@ FocusScope { selectionModel: modelSelect + interactive: root.interactive + + reuseItems: root.reuseItems + + fadingEdge.enableBeginningFade: root.enableBeginningFade + fadingEdge.enableEndFade: root.enableEndFade + Navigation.parentItem: root Navigation.upItem: headerItem diff --git a/modules/gui/qt/network/qml/BrowseHomeDisplay.qml b/modules/gui/qt/network/qml/BrowseHomeDisplay.qml index 2e291be893610c58eabea71d24805a7db59368b7..7d99f69e65b521e3789dc975f31c8915f47af6dd 100644 --- a/modules/gui/qt/network/qml/BrowseHomeDisplay.qml +++ b/modules/gui/qt/network/qml/BrowseHomeDisplay.qml @@ -174,8 +174,7 @@ FocusScope { width: flickable.width height: implicitHeight - spacing: (MainCtx.gridView ? VLCStyle.gridView_spacing : VLCStyle.tableView_spacing) - - VLCStyle.layoutTitle_top_padding + spacing: 0 // relied on the generous padding of ViewHeader instead Navigation.parentItem: root @@ -282,6 +281,14 @@ FocusScope { visible: (model.count !== 0) + interactive: false + + enableBeginningFade: false + enableEndFade: false + + // FIXME: ExpandGridView makes this page completely unusable when `reuseItems` is set (#29084): + reuseItems: !MainCtx.gridView + onBrowse: (tree, reason) => root.browse(tree, reason) onSeeAll: (reason) => root.seeAllDevices(title, model.sd_source, reason) diff --git a/modules/gui/qt/widgets/qml/ExpandGridView.qml b/modules/gui/qt/widgets/qml/ExpandGridView.qml index c285143f53ac063a09976417cb69ffdf373f7be6..f4ad58c5dd518a201aaf8cf85df3401fb8f1c1f3 100644 --- a/modules/gui/qt/widgets/qml/ExpandGridView.qml +++ b/modules/gui/qt/widgets/qml/ExpandGridView.qml @@ -136,6 +136,7 @@ FocusScope { property alias contentWidth: flickable.contentWidth property alias contentX: flickable.contentX property alias gridScrollBar: flickableScrollBar + property alias interactive: flickable.interactive property alias expandDelegate: expandItemLoader.sourceComponent property alias expandItem: expandItemLoader.item @@ -164,7 +165,8 @@ FocusScope { } contentHeight: { - const size = getItemPos(_count - 1)[1] + rowHeight + _expandItemVerticalSpace + // the trailing row spacing should not be accounted when calculating the content height: + const size = getItemPos(_count - 1)[1] + rowHeight + _expandItemVerticalSpace - verticalSpacing // NOTE: topMargin and headerHeight are included in root.getItemPos. if (footerItem) diff --git a/modules/gui/qt/widgets/qml/TableViewExt.qml b/modules/gui/qt/widgets/qml/TableViewExt.qml index fbc6a5d8faf9a1296d9e0a20cf690c47f8a711c3..7972468549629f63b3d2f7945fb1b55b4c4300f3 100644 --- a/modules/gui/qt/widgets/qml/TableViewExt.qml +++ b/modules/gui/qt/widgets/qml/TableViewExt.qml @@ -177,6 +177,8 @@ FocusScope { property alias colorContext: view.colorContext + property alias reuseItems: view.reuseItems + // Signals //forwarded from subview