vlc | branch: master | Prince Gupta <[email protected]> | Fri Nov 20 23:26:51 2020 +0530| [ef13942e0e79af1e464c877bdcdeaa64981ca61e] | committer: Pierre Lamot
qml: add footer property in ExpandGridView Signed-off-by: Pierre Lamot <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ef13942e0e79af1e464c877bdcdeaa64981ca61e --- modules/gui/qt/widgets/qml/ExpandGridView.qml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/modules/gui/qt/widgets/qml/ExpandGridView.qml b/modules/gui/qt/widgets/qml/ExpandGridView.qml index 21f484f1e5..1ec1e8aac1 100644 --- a/modules/gui/qt/widgets/qml/ExpandGridView.qml +++ b/modules/gui/qt/widgets/qml/ExpandGridView.qml @@ -75,6 +75,9 @@ NavigableFocusScope { property int headerHeight: headerItemLoader.implicitHeight property alias headerItem: headerItemLoader.item + property alias footerItem: footerItemLoader.item + property alias footerDelegate: footerItemLoader.sourceComponent + //signals emitted when selected items is updated from keyboard signal selectionUpdated( int keyModifiers, int oldIndex,int newIndex ) signal selectAll() @@ -356,6 +359,21 @@ NavigableFocusScope { } } + Loader { + id: footerItemLoader + focus: item.focus + y: root.topMargin + root.headerHeight + (root._effectiveCellHeight * (Math.ceil(model.count / getNbItemsPerRow()))) + + _expandItemVerticalSpace + } + + Connections { + target: footerItem + onHeightChanged: { + if (flickable.contentY + flickable.height > footerItemLoader.y + footerItemLoader.height) + flickable.contentY = footerItemLoader.y + footerItemLoader.height - flickable.height + flickable.layout(false) + } + } Loader { id: expandItemLoader @@ -444,6 +462,7 @@ NavigableFocusScope { // Calculate and set the contentHeight var newContentHeight = root.getItemPos(_count - 1)[1] + root._effectiveCellHeight + _expandItemVerticalSpace contentHeight = newContentHeight + root.bottomMargin // topMargin is included from root.getItemPos + contentHeight += footerItemLoader.item ? footerItemLoader.item.height : 0 contentWidth = root._effectiveCellWidth * root.getNbItemsPerRow() - root.horizontalSpacing _updateSelected() _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
