From 740d995a8932d2030210b4ad45c53b5ecb39f632 Mon Sep 17 00:00:00 2001 From: Assam Boudjelthia Date: Mon, 6 Jan 2025 18:52:46 +0200 Subject: [PATCH] Android: suppress deprecation warnings for pre-Android 30 system ui APIs Those APIs are already guarded with an API check, so we can silent javac warnings about them. Change-Id: I98dc12520e25c513ed97d750446f188dcf084362 Reviewed-by: Petri Virkkunen --- .../qt/android/QtDisplayManager.java | 41 +++++++++++-------- 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java b/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java index 9f9c67aafdf..52a75f997b6 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtDisplayManager.java @@ -125,6 +125,27 @@ class QtDisplayManager { displayManager.unregisterDisplayListener(m_displayListener); } + @SuppressWarnings("deprecation") + void setSystemUiVisibilityPreAndroidR(View decorView) + { + int systemUiVisibility; + + if (m_isFullScreen || m_expandedToCutout) { + systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION; + if (m_isFullScreen) { + systemUiVisibility |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE + | View.SYSTEM_UI_FLAG_FULLSCREEN + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; + } + } else { + systemUiVisibility = View.SYSTEM_UI_FLAG_VISIBLE; + } + + decorView.setSystemUiVisibility(systemUiVisibility); + } + void setSystemUiVisibility(boolean isFullScreen, boolean expandedToCutout) { if (m_isFullScreen == isFullScreen && m_expandedToCutout == expandedToCutout) @@ -132,6 +153,7 @@ class QtDisplayManager { m_isFullScreen = isFullScreen; m_expandedToCutout = expandedToCutout; + Window window = m_activity.getWindow(); View decorView = window.getDecorView(); @@ -160,25 +182,8 @@ class QtDisplayManager { } insetsControl.setSystemBarsBehavior(sysBarsBehavior); } - - } else { - int systemUiVisibility; - - if (m_isFullScreen || m_expandedToCutout) { - systemUiVisibility = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN - | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION; - if (m_isFullScreen) { - systemUiVisibility |= View.SYSTEM_UI_FLAG_LAYOUT_STABLE - | View.SYSTEM_UI_FLAG_FULLSCREEN - | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION - | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; - } - } else { - systemUiVisibility = View.SYSTEM_UI_FLAG_VISIBLE; - } - - decorView.setSystemUiVisibility(systemUiVisibility); + setSystemUiVisibilityPreAndroidR(decorView); } if (!isFullScreen) {