From 0dedbcf699eb87d3c2f57856856b24804961a248 Mon Sep 17 00:00:00 2001 From: Page Asgardius Date: Sun, 9 Oct 2022 15:50:24 -0700 Subject: [PATCH] test release --- app/build.gradle | 4 +- .../asgardius/page/s3manager/VideoPlayer.java | 38 ++++++++++++++++++- 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 40846dc..4042527 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,8 +9,8 @@ android { applicationId "asgardius.page.s3manager" minSdk 23 targetSdk 33 - versionCode 28 - versionName "0.1.26" + versionCode 29 + versionName "0.1.27" setProperty("archivesBaseName", "s3-manager-$versionName") testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/asgardius/page/s3manager/VideoPlayer.java b/app/src/main/java/asgardius/page/s3manager/VideoPlayer.java index 5443fc6..7556e62 100644 --- a/app/src/main/java/asgardius/page/s3manager/VideoPlayer.java +++ b/app/src/main/java/asgardius/page/s3manager/VideoPlayer.java @@ -55,6 +55,7 @@ public class VideoPlayer extends AppCompatActivity { long videoPosition; MediaSessionCompat mediaSession; MediaSessionConnector mediaSessionConnector; + StyledPlayerView.ControllerVisibilityListener control; @Override protected void onCreate(Bundle savedInstanceState) { @@ -95,6 +96,17 @@ public class VideoPlayer extends AppCompatActivity { .setFlags(CacheDataSource.FLAG_IGNORE_CACHE_ON_ERROR) ).createMediaSource(MediaItem.fromUri(Uri.parse(videoURL))); playerView.setPlayer(player); + control = new StyledPlayerView.ControllerVisibilityListener() { + @Override + public void onVisibilityChanged(int visibility) { + if (playerView.isControllerFullyVisible()) { + showSystemBars(); + } else { + hideSystemBars(); + } + } + }; + playerView.setControllerVisibilityListener(control); //MediaItem mediaItem = MediaItem.fromUri(videoURL); // Set the media item to be played. @@ -173,6 +185,28 @@ public class VideoPlayer extends AppCompatActivity { }); } + private void hideSystemBars() { + // Set the IMMERSIVE flag. + // Set the content to appear under the system bars so that the content + // doesn't resize when the system bars hide and show. + View decorView = getWindow().getDecorView(); + decorView.setSystemUiVisibility( + View.SYSTEM_UI_FLAG_LAYOUT_STABLE + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar + | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar + | View.SYSTEM_UI_FLAG_IMMERSIVE); + } + + private void showSystemBars() { + View decorView = getWindow().getDecorView(); + decorView.setSystemUiVisibility( + View.SYSTEM_UI_FLAG_LAYOUT_STABLE + | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); + } + + protected void enterPIPMode() { if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && this.getPackageManager() @@ -190,7 +224,7 @@ public class VideoPlayer extends AppCompatActivity { } @Override - public void onWindowFocusChanged(boolean hasFocus) { + /*public void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); @@ -203,7 +237,7 @@ public class VideoPlayer extends AppCompatActivity { | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); - } + }*/ public void onDestroy() { mediaSessionConnector.setPlayer(null);