diff options
author | Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> | 2015-03-13 11:19:29 +0100 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> | 2015-03-16 13:52:40 +0000 |
commit | bf1e0b6008227f3a0c0e5dce4cde64c57c4a6839 (patch) | |
tree | 2ad581271038ad1803f15c1a874cffb386eed490 /src/plugins/platforms/ios/qioswindow.mm | |
parent | 60cdc6035d25441fd99a7d341892ee2fb1002741 (diff) |
iOS: Check if window was active on setVisible(false) through native APIs
When a QWindow is closed and destroyed it resets QGuiApp::focus_window
before calling setVisible(false) on the platform window, so we don't
have the needed information anymore to check if the window we are
hiding was the focus-window. To work around this we use the native
state instead, which should still be valid if the window was the
focus window.
Change-Id: I98057e6393411471f03668e3e5ce544f6b49c01d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Diffstat (limited to 'src/plugins/platforms/ios/qioswindow.mm')
-rw-r--r-- | src/plugins/platforms/ios/qioswindow.mm | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plugins/platforms/ios/qioswindow.mm b/src/plugins/platforms/ios/qioswindow.mm index fd04ecf474..b22fa4ec58 100644 --- a/src/plugins/platforms/ios/qioswindow.mm +++ b/src/plugins/platforms/ios/qioswindow.mm @@ -120,7 +120,7 @@ void QIOSWindow::setVisible(bool visible) if (visible && shouldAutoActivateWindow()) { requestActivateWindow(); - } else if (!visible && qGuiApp->focusWindow() == window()) { + } else if (!visible && [m_view isActiveWindow]) { // Our window was active/focus window but now hidden, so relinquish // focus to the next possible window in the stack. NSArray *subviews = m_view.viewController.view.subviews; |