diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index d4aa32b821d456723bc7a16e36d81caee482e5ad..17bc8b5ca1e4b74587ac60722f311f3eb74e92cb 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -998,7 +998,8 @@ QWindow *QCocoaWindow::childWindowAt(QPoint windowPoint)
         if (QWindow *childWindow = qobject_cast<QWindow *>(child)) {
             if (childWindow->geometry().contains(windowPoint)) {
                 QCocoaWindow* platformWindow = static_cast<QCocoaWindow*>(childWindow->handle());
-                targetWindow = platformWindow->childWindowAt(windowPoint - childWindow->position());
+                if (platformWindow->isExposed())
+                    targetWindow = platformWindow->childWindowAt(windowPoint - childWindow->position());
             }
         }
     }