diff options
Diffstat (limited to 'src/webenginequick/api/qquickwebengineview.cpp')
-rw-r--r-- | src/webenginequick/api/qquickwebengineview.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/webenginequick/api/qquickwebengineview.cpp b/src/webenginequick/api/qquickwebengineview.cpp index 8f02648e8..42460ca34 100644 --- a/src/webenginequick/api/qquickwebengineview.cpp +++ b/src/webenginequick/api/qquickwebengineview.cpp @@ -48,6 +48,7 @@ #include "qquickwebenginescriptcollection_p.h" #include "qquickwebenginesettings_p.h" #include "qquickwebenginetouchhandleprovider_p_p.h" +#include "qquickwebenginetouchselectionmenurequest_p.h" #include "qquickwebengineview_p.h" #include "qquickwebengineview_p_p.h" @@ -1241,11 +1242,21 @@ QtWebEngineCore::TouchHandleDrawableClient *QQuickWebEngineViewPrivate::createTo void QQuickWebEngineViewPrivate::showTouchSelectionMenu(QtWebEngineCore::TouchSelectionMenuController *menuController, const QRect &selectionBounds, const QSize &handleSize) { Q_UNUSED(handleSize); + Q_Q(QQuickWebEngineView); const int kSpacingBetweenButtons = 2; const int kMenuButtonMinWidth = 63; const int kMenuButtonMinHeight = 38; + QQuickWebEngineTouchSelectionMenuRequest *request = new QQuickWebEngineTouchSelectionMenuRequest( + selectionBounds, menuController); + qmlEngine(q)->newQObject(request); + Q_EMIT q->touchSelectionMenuRequested(request); + + if (request->isAccepted()) { + return; + } + int buttonCount = menuController->buttonCount(); if (buttonCount == 1) { menuController->runContextMenu(); |