diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-08-31 14:24:37 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-10-12 10:27:34 +0000 |
commit | 4f2e66f9d898e9c11a7ad6e552d0d47bb15d4051 (patch) | |
tree | 404b39ed4266a37d94d713d11bc544d1abcce026 | |
parent | 9da7d9234dbeebb20b9980155179bc0f7936a6cf (diff) |
Add unselect webaction
Adds a web action to clear selection.
Change-Id: I203b9fbc7a8f3714695eef043ebc3a8f79c20b75
Reviewed-by: Michael BrĂ¼ning <michael.bruning@theqtcompany.com>
-rw-r--r-- | src/core/web_contents_adapter.cpp | 6 | ||||
-rw-r--r-- | src/core/web_contents_adapter.h | 1 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineview.cpp | 6 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineview_p.h | 1 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 7 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.h | 1 |
6 files changed, 22 insertions, 0 deletions
diff --git a/src/core/web_contents_adapter.cpp b/src/core/web_contents_adapter.cpp index aa9a2cf10..81c945d5c 100644 --- a/src/core/web_contents_adapter.cpp +++ b/src/core/web_contents_adapter.cpp @@ -576,6 +576,12 @@ void WebContentsAdapter::selectAll() d->webContents->SelectAll(); } +void WebContentsAdapter::unselect() +{ + Q_D(const WebContentsAdapter); + d->webContents->Unselect(); +} + void WebContentsAdapter::navigateToIndex(int offset) { Q_D(WebContentsAdapter); diff --git a/src/core/web_contents_adapter.h b/src/core/web_contents_adapter.h index 9de22c133..c2ab65762 100644 --- a/src/core/web_contents_adapter.h +++ b/src/core/web_contents_adapter.h @@ -90,6 +90,7 @@ public: void paste(); void pasteAndMatchStyle(); void selectAll(); + void unselect(); void navigateToIndex(int); void navigateToOffset(int); diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 431d33c93..c1b21adfa 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -208,6 +208,9 @@ bool QQuickWebEngineViewPrivate::contextMenuRequested(const WebEngineContextMenu item = new MenuItemHandler(menu); QObject::connect(item, &MenuItemHandler::triggered, [q] { q->triggerWebAction(QQuickWebEngineView::Copy); }); ui()->addMenuItem(item, QQuickWebEngineView::tr("Copy")); + item = new MenuItemHandler(menu); + QObject::connect(item, &MenuItemHandler::triggered, [q] { q->triggerWebAction(QQuickWebEngineView::Unselect); }); + ui()->addMenuItem(item, QQuickWebEngineView::tr("Unselect")); } if (!contextMenuData.linkText.isEmpty() && contextMenuData.linkUrl.isValid()) { @@ -1192,6 +1195,9 @@ void QQuickWebEngineView::triggerWebAction(WebAction action) case PasteAndMatchStyle: d->adapter->pasteAndMatchStyle(); break; + case Unselect: + d->adapter->unselect(); + break; case OpenLinkInThisWindow: if (d->contextMenuData.linkUrl.isValid()) setUrl(d->contextMenuData.linkUrl); diff --git a/src/webengine/api/qquickwebengineview_p.h b/src/webengine/api/qquickwebengineview_p.h index eff9b031e..b512648dd 100644 --- a/src/webengine/api/qquickwebengineview_p.h +++ b/src/webengine/api/qquickwebengineview_p.h @@ -230,6 +230,7 @@ public: InspectElement, ExitFullScreen, + Unselect, WebActionCount }; diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 379837159..61e37decb 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -651,6 +651,9 @@ QAction *QWebEnginePage::action(WebAction action) const case ExitFullScreen: text = tr("Exit Full Screen Mode"); break; + case Unselect: + text = tr("Unselect"); + break; default: break; } @@ -708,6 +711,9 @@ void QWebEnginePage::triggerAction(WebAction action, bool) case PasteAndMatchStyle: d->adapter->pasteAndMatchStyle(); break; + case Unselect: + d->adapter->unselect(); + break; case OpenLinkInThisWindow: if (d->m_menuData.linkUrl.isValid()) setUrl(d->m_menuData.linkUrl); @@ -1003,6 +1009,7 @@ QMenu *QWebEnginePage::createStandardContextMenu() menu->addAction(action); } else { menu->addAction(QWebEnginePage::action(Copy)); + menu->addAction(QWebEnginePage::action(Unselect)); } if (!contextMenuData.linkText.isEmpty() && contextMenuData.linkUrl.isValid()) { diff --git a/src/webenginewidgets/api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h index ae616aaed..a72991778 100644 --- a/src/webenginewidgets/api/qwebenginepage.h +++ b/src/webenginewidgets/api/qwebenginepage.h @@ -110,6 +110,7 @@ public: InspectElement, ExitFullScreen, + Unselect, WebActionCount }; |