From e31fef039da0bfb36ae932f8f3668aca8c33de5f Mon Sep 17 00:00:00 2001 From: Lauri Pohjanheimo Date: Tue, 13 Feb 2024 16:43:31 +0200 Subject: [PATCH] Android: run runAction() actions in onPause state Fixes QTBUG-113255 by running graphics related actions also onPaused state when the paused app is visible. Also corrects possible other problems where UI should be updated while app is onPaused state. Fixes: QTBUG-113255 Change-Id: I02ee6b0713ec5f08ebba676c5edf94d2c1f81958 Reviewed-by: Assam Boudjelthia (cherry picked from commit b01a8075193afce3934f1ec436241784d9811bce) Reviewed-by: Qt Cherry-pick Bot --- src/android/jar/src/org/qtproject/qt/android/QtNative.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/android/jar/src/org/qtproject/qt/android/QtNative.java b/src/android/jar/src/org/qtproject/qt/android/QtNative.java index 96bac8b2dd2..e2f908e54a8 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtNative.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtNative.java @@ -272,8 +272,10 @@ class QtNative synchronized (m_mainActivityMutex) { final Looper mainLooper = Looper.getMainLooper(); final Handler handler = new Handler(mainLooper); - final boolean isStateActive = m_stateDetails.state == ApplicationState.ApplicationActive; - final boolean active = (isActivityValid() && isStateActive) || isServiceValid(); + final boolean isStateVisible = + (m_stateDetails.state != ApplicationState.ApplicationSuspended) + && (m_stateDetails.state != ApplicationState.ApplicationHidden); + final boolean active = (isActivityValid() && isStateVisible) || isServiceValid(); if (!active || !handler.post(action)) m_lostActions.add(action); }