summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/android/qandroidplatformwindow.cpp
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2025-01-11 02:18:26 +0200
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2025-01-28 01:35:14 +0200
commit8047d2ec89a2be0fffdce08ccdfe78de65781255 (patch)
tree5d3fe0ba1e40b1f08549d2a0797fa9ff7fb66d42 /src/plugins/platforms/android/qandroidplatformwindow.cpp
parent483768fb8ed18fe5911d96f990ddbc69858146bb (diff)
Android: simplify/refactor QAndroidPlatformWindow::setVisible()
Simplify the if condidions in this function for better readability. Task-number: QTBUG-132716 Change-Id: I4a4eee61d4b9111d82272205133d7719b7be4a9e Reviewed-by: Petri Virkkunen <petri.virkkunen@qt.io>
Diffstat (limited to 'src/plugins/platforms/android/qandroidplatformwindow.cpp')
-rw-r--r--src/plugins/platforms/android/qandroidplatformwindow.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/plugins/platforms/android/qandroidplatformwindow.cpp b/src/plugins/platforms/android/qandroidplatformwindow.cpp
index 374378db66e..2431548791a 100644
--- a/src/plugins/platforms/android/qandroidplatformwindow.cpp
+++ b/src/plugins/platforms/android/qandroidplatformwindow.cpp
@@ -163,10 +163,11 @@ void QAndroidPlatformWindow::setVisible(bool visible)
{
if (isEmbeddingContainer())
return;
- m_nativeQtWindow.callMethod<void>("setVisible", visible);
- if (visible) {
- if (window()->isTopLevel()) {
+ if (window()->isTopLevel()) {
+ if (!visible && window() == qGuiApp->focusWindow()) {
+ platformScreen()->topVisibleWindowChanged();
+ } else {
updateSystemUiVisibility();
if ((m_windowState & Qt::WindowFullScreen)
|| (window()->flags() & Qt::ExpandedClientAreaHint)) {
@@ -176,13 +177,14 @@ void QAndroidPlatformWindow::setVisible(bool visible)
}
requestActivateWindow();
}
- } else if (window()->isTopLevel() && window() == qGuiApp->focusWindow()) {
- platformScreen()->topVisibleWindowChanged();
}
- QRect availableGeometry = screen()->availableGeometry();
- if (geometry().width() > 0 && geometry().height() > 0 && availableGeometry.width() > 0 && availableGeometry.height() > 0)
- QPlatformWindow::setVisible(visible);
+ m_nativeQtWindow.callMethod<void>("setVisible", visible);
+
+ if (geometry().isEmpty() || screen()->availableGeometry().isEmpty())
+ return;
+
+ QPlatformWindow::setVisible(visible);
}
void QAndroidPlatformWindow::setWindowState(Qt::WindowStates state)