summaryrefslogtreecommitdiffstats
path: root/src/webenginewidgets/api/qwebenginepage.cpp
diff options
context:
space:
mode:
authorJocelyn Turcotte <jocelyn.turcotte@digia.com>2014-04-07 11:56:48 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-15 13:55:53 +0200
commite545ecaf29779950c0c91aa4b5e179b650e7ac8c (patch)
tree2bacddbacf3ad6c4bb810e229df3e114f68018cc /src/webenginewidgets/api/qwebenginepage.cpp
parent4d1d33022a431c3108c4eb33a60d23b0f013d9b8 (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.cpp17
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;