diff options
author | Adam Kallai <kadam@inf.u-szeged.hu> | 2016-02-10 10:25:07 +0100 |
---|---|---|
committer | Adam Kallai <kadam@inf.u-szeged.hu> | 2016-02-10 13:24:29 +0000 |
commit | 8411304d3393cb5ce5ec972ffe9fe3fab00fb981 (patch) | |
tree | 2808ce0f63f1c517eeb082f129e516df3f3c9e94 /src/webenginewidgets/api | |
parent | 8c9b01adf2fed485aae36356c6d622f300bdc7e8 (diff) |
Added background tab support to Widgets
- Added middle click navigation support to DemoBrowser.
- Extended WebAction with new case (open a new tab in background).
- Updated WebEngineWidgets documentation.
Change-Id: I4ff91806c274a74f4d94b3f5d43fdd99ab900d46
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Diffstat (limited to 'src/webenginewidgets/api')
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 13 | ||||
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.h | 4 |
2 files changed, 15 insertions, 2 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 2b448664f..18e592f0d 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -90,8 +90,9 @@ static QWebEnginePage::WebWindowType toWindowType(WebContentsAdapterClient::Wind { switch (disposition) { case WebContentsAdapterClient::NewForegroundTabDisposition: - case WebContentsAdapterClient::NewBackgroundTabDisposition: return QWebEnginePage::WebBrowserTab; + case WebContentsAdapterClient::NewBackgroundTabDisposition: + return QWebEnginePage::WebBrowserBackgroundTab; case WebContentsAdapterClient::NewPopupDisposition: return QWebEnginePage::WebDialog; case WebContentsAdapterClient::NewWindowDisposition: @@ -801,6 +802,9 @@ QAction *QWebEnginePage::action(WebAction action) const case OpenLinkInNewTab: text = tr("Open Link in New Tab"); break; + case OpenLinkInNewBackgroundTab: + text = tr("Open Link in New Background Tab"); + break; case CopyLinkToClipboard: text = tr("Copy Link URL"); break; @@ -932,6 +936,13 @@ void QWebEnginePage::triggerAction(WebAction action, bool) newPage->setUrl(d->m_menuData.linkUrl); } break; + case OpenLinkInNewBackgroundTab: + if (d->m_menuData.linkUrl.isValid()) { + QWebEnginePage *newPage = createWindow(WebBrowserBackgroundTab); + if (newPage) + newPage->setUrl(d->m_menuData.linkUrl); + } + break; case CopyLinkToClipboard: if (d->m_menuData.linkUrl.isValid()) { QString urlString = d->m_menuData.linkUrl.toString(QUrl::FullyEncoded); diff --git a/src/webenginewidgets/api/qwebenginepage.h b/src/webenginewidgets/api/qwebenginepage.h index be9f08ad1..08663a05e 100644 --- a/src/webenginewidgets/api/qwebenginepage.h +++ b/src/webenginewidgets/api/qwebenginepage.h @@ -99,6 +99,7 @@ public: OpenLinkInThisWindow, OpenLinkInNewWindow, OpenLinkInNewTab, + OpenLinkInNewBackgroundTab, CopyLinkToClipboard, DownloadLinkToDisk, @@ -137,7 +138,8 @@ public: enum WebWindowType { WebBrowserWindow, WebBrowserTab, - WebDialog + WebDialog, + WebBrowserBackgroundTab }; enum PermissionPolicy { |