summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/android/qandroidplatformwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/android/qandroidplatformwindow.cpp')
-rw-r--r--src/plugins/platforms/android/qandroidplatformwindow.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/platforms/android/qandroidplatformwindow.cpp b/src/plugins/platforms/android/qandroidplatformwindow.cpp
index cb252d1f084..c85917049d6 100644
--- a/src/plugins/platforms/android/qandroidplatformwindow.cpp
+++ b/src/plugins/platforms/android/qandroidplatformwindow.cpp
@@ -163,6 +163,16 @@ void QAndroidPlatformWindow::setVisible(bool visible)
return;
if (window()->isTopLevel()) {
+ // Do not hide last Qt for Android window.
+ // We don't want the splash screen to be shown during the app's
+ // exit because it would be the foremost visible screen.
+ if (QtAndroid::isQtApplication() && !visible) {
+ bool lastVisibleWindow =
+ m_nativeQtWindow.callMethod<bool>("isLastVisibleTopLevelWindow");
+ m_nativeQtWindow.callMethod<void>("setToDestroy", !lastVisibleWindow);
+ if (lastVisibleWindow)
+ return;
+ }
if (!visible && window() == qGuiApp->focusWindow()) {
platformScreen()->topVisibleWindowChanged();
} else {