diff options
author | Jocelyn Turcotte <jocelyn.turcotte@digia.com> | 2014-04-07 11:56:48 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-04-15 13:55:53 +0200 |
commit | e545ecaf29779950c0c91aa4b5e179b650e7ac8c (patch) | |
tree | 2bacddbacf3ad6c4bb810e229df3e114f68018cc /src/webenginewidgets/api/qwebenginepage.cpp | |
parent | 4d1d33022a431c3108c4eb33a60d23b0f013d9b8 (diff) |
Update QWebEnginePage::WebWindowType
Expose the same values as currently available in
QQuickWebEngineView::NewViewDestination.
Rename the WebModalDialog to WebDialog, which actually replaces the
tool/status/menuBarVisibilityChangeRequested signals.
Change-Id: Icc103f434fb3eca49f1a53e476e101c3d6fffd36
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
Diffstat (limited to 'src/webenginewidgets/api/qwebenginepage.cpp')
-rw-r--r-- | src/webenginewidgets/api/qwebenginepage.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 04f24c62a..80f780dde 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -46,6 +46,21 @@ QT_BEGIN_NAMESPACE +static QWebEnginePage::WebWindowType toWindowType(WebContentsAdapterClient::WindowOpenDisposition disposition) +{ + switch (disposition) { + case WebContentsAdapterClient::NewForegroundTabDisposition: + case WebContentsAdapterClient::NewBackgroundTabDisposition: + return QWebEnginePage::WebBrowserTab; + case WebContentsAdapterClient::NewPopupDisposition: + return QWebEnginePage::WebDialog; + case WebContentsAdapterClient::NewWindowDisposition: + return QWebEnginePage::WebBrowserWindow; + default: + Q_UNREACHABLE(); + } +} + CallbackDirectory::~CallbackDirectory() { // "Cancel" pending callbacks by calling them with an invalid value. @@ -245,7 +260,7 @@ void QWebEnginePagePrivate::adoptNewWindow(WebContentsAdapter *newWebContents, W { Q_Q(QWebEnginePage); Q_UNUSED(userGesture); - QWebEnginePage *newPage = q->createWindow(disposition == WebContentsAdapterClient::NewPopupDisposition ? QWebEnginePage::WebModalDialog : QWebEnginePage::WebBrowserWindow); + QWebEnginePage *newPage = q->createWindow(toWindowType(disposition)); // Overwrite the new page's WebContents with ours. if (newPage && newPage->d_func() != this) { newPage->d_func()->adapter = newWebContents; |