aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickwindowattached.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/items/qquickwindowattached.cpp')
-rw-r--r--src/quick/items/qquickwindowattached.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/quick/items/qquickwindowattached.cpp b/src/quick/items/qquickwindowattached.cpp
index e1cd3c82f2..992bbae382 100644
--- a/src/quick/items/qquickwindowattached.cpp
+++ b/src/quick/items/qquickwindowattached.cpp
@@ -95,21 +95,21 @@ void QQuickWindowAttached::windowChanged(QQuickWindow *window)
if (oldWindow)
oldWindow->disconnect(this);
- if (!window)
- return; // No values to get, therefore nothing to emit
-
- if (!oldWindow || window->visibility() != oldWindow->visibility())
+ if (!oldWindow || !window || window->visibility() != oldWindow->visibility())
emit visibilityChanged();
- if (!oldWindow || window->isActive() != oldWindow->isActive())
+ if (!oldWindow || !window || window->isActive() != oldWindow->isActive())
emit activeChanged();
- if (!oldWindow || window->activeFocusItem() != oldWindow->activeFocusItem())
+ if (!oldWindow || !window || window->activeFocusItem() != oldWindow->activeFocusItem())
emit activeFocusItemChanged();
emit contentItemChanged();
- if (!oldWindow || window->width() != oldWindow->width())
+ if (!oldWindow || !window || window->width() != oldWindow->width())
emit widthChanged();
- if (!oldWindow || window->height() != oldWindow->height())
+ if (!oldWindow || !window || window->height() != oldWindow->height())
emit heightChanged();
+ if (!window)
+ return;
+
// QQuickWindowQmlImpl::visibilityChanged also exists, and window might even
// be QQuickWindowQmlImpl, but that's not what we are connecting to.
// So this is actual window state rather than a buffered or as-requested one.