fix QWidget::activateWindow for child widgets
authorJoerg Bornemann <joerg.bornemann@nokia.com>
Tue, 31 Jul 2012 09:43:15 +0000 (11:43 +0200)
committerQt by Nokia <qt-info@nokia.com>
Tue, 31 Jul 2012 18:26:08 +0000 (20:26 +0200)
For child widgets we must use the windowHandle of the toplevel widget.

Change-Id: If7bad8ed4bba694806a2c8b77bae3d25cc200b8b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
src/widgets/kernel/qwidget_qpa.cpp

index 5b3155f..f03d2bd 100644 (file)
@@ -439,8 +439,10 @@ QWidget *QWidget::keyboardGrabber()
 
 void QWidget::activateWindow()
 {
-    if (windowHandle())
-        windowHandle()->requestActivateWindow();
+    QWindow *const wnd = window()->windowHandle();
+
+    if (wnd)
+        wnd->requestActivateWindow();
 }
 
 // Position top level windows at the center, avoid showing