From b0eef8d66e6c8056a4b1d75e935eb91b6196481d Mon Sep 17 00:00:00 2001 From: Benjamin Arnaud Date: Tue, 12 Apr 2022 11:53:18 +0200 Subject: [PATCH] qt/QmlBookmarkMenu: Add the 'above' implementation --- modules/gui/qt/menus/qml_menu_wrapper.cpp | 4 ++-- modules/gui/qt/menus/qml_menu_wrapper.hpp | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/gui/qt/menus/qml_menu_wrapper.cpp b/modules/gui/qt/menus/qml_menu_wrapper.cpp index c90f037bc1..9d27771d9c 100644 --- a/modules/gui/qt/menus/qml_menu_wrapper.cpp +++ b/modules/gui/qt/menus/qml_menu_wrapper.cpp @@ -438,7 +438,7 @@ QmlBookmarkMenu::~QmlBookmarkMenu() // Interface -/* Q_INVOKABLE */ void QmlBookmarkMenu::popup(QPoint pos) +/* Q_INVOKABLE */ void QmlBookmarkMenu::popup(const QPoint & position, bool above) { if (m_ctx == nullptr || m_player == nullptr) return; @@ -510,7 +510,7 @@ QmlBookmarkMenu::~QmlBookmarkMenu() bookmarks->select(bookmarks->index(index, 0)); }); - m_menu->popup(pos); + m_positioner.popup(m_menu, position, above); } // QmlRendererMenu diff --git a/modules/gui/qt/menus/qml_menu_wrapper.hpp b/modules/gui/qt/menus/qml_menu_wrapper.hpp index 012f524a76..7707b70a93 100644 --- a/modules/gui/qt/menus/qml_menu_wrapper.hpp +++ b/modules/gui/qt/menus/qml_menu_wrapper.hpp @@ -209,13 +209,15 @@ public: ~QmlBookmarkMenu(); public: // Interface - Q_INVOKABLE void popup(QPoint pos); + Q_INVOKABLE void popup(const QPoint & position, bool above = false); signals: void aboutToHide(); void aboutToShow(); private: + QmlMenuPositioner m_positioner; + QMenu * m_menu = nullptr; };