aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quick/items/qquickwindow.cpp17
-rw-r--r--src/quick/items/qquickwindow.h2
2 files changed, 10 insertions, 9 deletions
diff --git a/src/quick/items/qquickwindow.cpp b/src/quick/items/qquickwindow.cpp
index 3a1fbd31f1..779e9dcec4 100644
--- a/src/quick/items/qquickwindow.cpp
+++ b/src/quick/items/qquickwindow.cpp
@@ -266,6 +266,15 @@ void QQuickWindow::hideEvent(QHideEvent *)
}
/*! \reimp */
+void QQuickWindow::closeEvent(QCloseEvent *e)
+{
+ QQuickCloseEvent qev;
+ qev.setAccepted(e->isAccepted());
+ emit closing(&qev);
+ e->setAccepted(qev.isAccepted());
+}
+
+/*! \reimp */
void QQuickWindow::focusOutEvent(QFocusEvent *ev)
{
Q_D(QQuickWindow);
@@ -1808,14 +1817,6 @@ bool QQuickWindow::event(QEvent *e)
if (d->contentItem)
d->contentItem->windowDeactivateEvent();
break;
- case QEvent::Close: {
- // TOOD Qt 6 (binary incompatible)
- // closeEvent(static_cast<QCloseEvent *>(e));
- QQuickCloseEvent qev;
- qev.setAccepted(e->isAccepted());
- emit closing(&qev);
- e->setAccepted(qev.isAccepted());
- } break;
case QEvent::PlatformSurface:
if ((static_cast<QPlatformSurfaceEvent *>(e))->surfaceEventType() == QPlatformSurfaceEvent::SurfaceAboutToBeDestroyed) {
// Ensure that the rendering thread is notified before
diff --git a/src/quick/items/qquickwindow.h b/src/quick/items/qquickwindow.h
index deb57376ab..ea3f787d12 100644
--- a/src/quick/items/qquickwindow.h
+++ b/src/quick/items/qquickwindow.h
@@ -252,7 +252,7 @@ protected:
void showEvent(QShowEvent *) override;
void hideEvent(QHideEvent *) override;
- // TODO Qt 6: reimplement QWindow::closeEvent to emit closing
+ void closeEvent(QCloseEvent *) override;
void focusInEvent(QFocusEvent *) override;
void focusOutEvent(QFocusEvent *) override;