diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index a7836dc..09db7f9 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -10,7 +10,7 @@ diff --git a/android/app/src/main/java/com/izzy2lost/super3/Immersive.kt b/android/app/src/main/java/com/izzy2lost/super3/Immersive.kt new file mode 100644 index 0000000..53020d8 --- /dev/null +++ b/android/app/src/main/java/com/izzy2lost/super3/Immersive.kt @@ -0,0 +1,19 @@ +package com.izzy2lost.super3 + +import android.app.Activity +import android.graphics.Color +import androidx.core.view.WindowCompat +import androidx.core.view.WindowInsetsCompat +import androidx.core.view.WindowInsetsControllerCompat + +fun Activity.applyImmersiveMode() { + WindowCompat.setDecorFitsSystemWindows(window, false) + window.statusBarColor = Color.TRANSPARENT + window.navigationBarColor = Color.TRANSPARENT + + val controller = WindowInsetsControllerCompat(window, window.decorView) + controller.systemBarsBehavior = + WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE + controller.hide(WindowInsetsCompat.Type.systemBars()) +} + diff --git a/android/app/src/main/java/com/izzy2lost/super3/MainActivity.kt b/android/app/src/main/java/com/izzy2lost/super3/MainActivity.kt index ac41d25..091b455 100644 --- a/android/app/src/main/java/com/izzy2lost/super3/MainActivity.kt +++ b/android/app/src/main/java/com/izzy2lost/super3/MainActivity.kt @@ -46,6 +46,7 @@ class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + applyImmersiveMode() setContentView(R.layout.activity_main) gamesFolderText = findViewById(R.id.games_folder_text) @@ -75,6 +76,11 @@ class MainActivity : AppCompatActivity() { refreshUi() } + override fun onResume() { + super.onResume() + applyImmersiveMode() + } + private fun loadPrefs() { gamesTreeUri = prefs.getString("gamesTreeUri", null)?.let(Uri::parse) userTreeUri = prefs.getString("userTreeUri", null)?.let(Uri::parse) diff --git a/android/app/src/main/java/com/izzy2lost/super3/Super3Activity.kt b/android/app/src/main/java/com/izzy2lost/super3/Super3Activity.kt index 39a3f96..4175519 100644 --- a/android/app/src/main/java/com/izzy2lost/super3/Super3Activity.kt +++ b/android/app/src/main/java/com/izzy2lost/super3/Super3Activity.kt @@ -29,6 +29,18 @@ class Super3Activity : SDLActivity() { return args.toTypedArray() } + override fun onResume() { + super.onResume() + applyImmersiveMode() + } + + override fun onWindowFocusChanged(hasFocus: Boolean) { + super.onWindowFocusChanged(hasFocus) + if (hasFocus) { + applyImmersiveMode() + } + } + override fun onStop() { super.onStop() val uriStr = getSharedPreferences("super3_prefs", MODE_PRIVATE).getString("userTreeUri", null) ?: return @@ -39,4 +51,3 @@ class Super3Activity : SDLActivity() { } } } - diff --git a/build-apks.bat b/build-apks.bat index 8f0b58c..38be910 100644 --- a/build-apks.bat +++ b/build-apks.bat @@ -4,6 +4,16 @@ setlocal pushd "%~dp0android" || exit /b 1 rem Build all APKs (per ABI) using the Gradle wrapper in /android -call gradlew.bat assembleDebug +call gradlew.bat assembleDebug assembleRelease + +echo. +echo Build complete. +echo Debug APK: +echo %~dp0android\app\build\outputs\apk\debug\app-debug.apk +echo Release APK: +echo %~dp0android\app\build\outputs\apk\release\app-release.apk +echo. popd + +pause