Преглед изворни кода

PreviewVideoFullscreenDialog: fix insets

This was breaking the window in Android 9 when going back twice from a fullscreen video.

Testing steps:
1. Open a video
2. Go to fullscreen
3. Close fullscreen
4. Press Back

This caused a white screen in Android 9 before this PR

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
Álvaro Brey пре 2 година
родитељ
комит
4a14602f0e

+ 2 - 7
app/src/main/java/com/owncloud/android/ui/preview/PreviewVideoFullscreenDialog.kt

@@ -109,8 +109,8 @@ class PreviewVideoFullscreenDialog(
         if (isPlaying) {
             sourceExoPlayer.pause()
         }
-        enableImmersiveMode()
         setOnShowListener {
+            enableImmersiveMode()
             switchTargetViewFromSource()
             setListeners()
             if (isPlaying) {
@@ -157,8 +157,8 @@ class PreviewVideoFullscreenDialog(
         if (isPlaying) {
             mExoPlayer.pause()
         }
-        disableImmersiveMode()
         setOnDismissListener {
+            disableImmersiveMode()
             playingStateListener?.let {
                 mExoPlayer.removeListener(it)
             }
@@ -180,12 +180,7 @@ class PreviewVideoFullscreenDialog(
     }
 
     private fun enableImmersiveMode() {
-        // for immersive mode to work properly, need to disable statusbar on activity window, but nav bar in dialog
-        // otherwise dialog navbar is not hidden, or statusbar padding is the wrong color
         activity.window?.let {
-            hideInset(it, WindowInsetsCompat.Type.statusBars())
-        }
-        window?.let {
             hideInset(it, WindowInsetsCompat.Type.systemBars())
         }
     }