From f144dbb39bead4cd9ae1e1971e8d904f13675560 Mon Sep 17 00:00:00 2001
From: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Date: Thu, 1 Oct 2015 17:06:26 +0200
Subject: [PATCH] add signal WebEngineView.windowCloseRequested

Change-Id: I47919cb21e084eaafc39411c634850c2845f5acc
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
---
 src/webengine/api/qquickwebengineview.cpp |  3 ++-
 src/webengine/api/qquickwebengineview_p.h |  1 +
 src/webengine/doc/src/webengineview.qdoc  | 10 ++++++++++
 3 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index b22b2798e..96a80a940 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -504,7 +504,8 @@ void QQuickWebEngineViewPrivate::adoptNewWindow(WebContentsAdapter *newWebConten
 
 void QQuickWebEngineViewPrivate::close()
 {
-    // Not implemented yet.
+    Q_Q(QQuickWebEngineView);
+    emit q->windowCloseRequested();
 }
 
 void QQuickWebEngineViewPrivate::requestFullScreen(bool fullScreen)
diff --git a/src/webengine/api/qquickwebengineview_p.h b/src/webengine/api/qquickwebengineview_p.h
index 22cca3277..6efb2b6f9 100644
--- a/src/webengine/api/qquickwebengineview_p.h
+++ b/src/webengine/api/qquickwebengineview_p.h
@@ -305,6 +305,7 @@ Q_SIGNALS:
     Q_REVISION(2) void activeFocusOnPressChanged(bool);
     Q_REVISION(2) void backgroundColorChanged();
     Q_REVISION(2) void renderProcessTerminated(RenderProcessTerminationStatus terminationStatus, int exitCode);
+    Q_REVISION(2) void windowCloseRequested();
 
 protected:
     void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry);
diff --git a/src/webengine/doc/src/webengineview.qdoc b/src/webengine/doc/src/webengineview.qdoc
index 99bec5350..f230ba261 100644
--- a/src/webengine/doc/src/webengineview.qdoc
+++ b/src/webengine/doc/src/webengineview.qdoc
@@ -499,6 +499,16 @@
     \sa RenderProcessTerminationStatus
 */
 
+/*!
+    \qmlsignal WebEngineView::windowCloseRequested()
+    \since QtWebEngine 1.2
+
+    This signal is emitted whenever the page requests the web browser window to be closed,
+    for example through the JavaScript \c{window.close()} call.
+
+    The corresponding handler is \c onWindowCloseRequested.
+*/
+
 /*!
     \qmlproperty enumeration WebEngineView::ErrorDomain
 
-- 
GitLab