From ffaa4d8ac1e644da1789c9a82aa60e5e5fa29083 Mon Sep 17 00:00:00 2001 From: Emmanuel Hansen Date: Thu, 20 Jul 2023 14:18:57 +0000 Subject: [PATCH] expand full screen to behind cutouts --- .../app/src/main/java/org/ryujinx/android/MainActivity.kt | 8 ++++---- .../src/main/java/org/ryujinx/android/views/HomeViews.kt | 4 +++- .../src/main/java/org/ryujinx/android/views/MainView.kt | 8 ++++++-- .../main/java/org/ryujinx/android/views/SettingViews.kt | 4 +++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/MainActivity.kt b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/MainActivity.kt index fc23c3c7d..00ab1b201 100644 --- a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/MainActivity.kt +++ b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/MainActivity.kt @@ -68,10 +68,7 @@ class MainActivity : ComponentActivity() { fun setFullScreen() :Unit { requestedOrientation = - ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE; - window.attributes.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES - - WindowCompat.setDecorFitsSystemWindows(window,false) + ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE var insets = WindowCompat.getInsetsController(window, window.decorView) @@ -130,6 +127,9 @@ class MainActivity : ComponentActivity() { initialize() + window.attributes.layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES + WindowCompat.setDecorFitsSystemWindows(window,false) + if(if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { !Environment.isExternalStorageManager() } else { diff --git a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/HomeViews.kt b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/HomeViews.kt index 7962a1c95..c00f67ffe 100644 --- a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/HomeViews.kt +++ b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/HomeViews.kt @@ -12,6 +12,7 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.safeContentPadding import androidx.compose.foundation.layout.width import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth @@ -172,7 +173,8 @@ class HomeViews { var showBottomSheet = remember { mutableStateOf(false) } Scaffold( - modifier = Modifier.fillMaxSize(), + modifier = Modifier.fillMaxSize() + .safeContentPadding(), topBar = { navController?.apply { MainTopBar(navController) diff --git a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/MainView.kt b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/MainView.kt index d73b90376..faa2c9351 100644 --- a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/MainView.kt +++ b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/MainView.kt @@ -11,6 +11,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color import androidx.compose.ui.unit.dp import androidx.compose.ui.viewinterop.AndroidView import androidx.lifecycle.lifecycleScope @@ -38,8 +39,11 @@ class MainView { @Composable fun GameView(mainViewModel: MainViewModel){ - Box { + Box(modifier = Modifier.fillMaxSize()) { var controller = GameController(mainViewModel.activity) + Surface(color = Color.Green, modifier = Modifier.fillMaxSize()) { + + } AndroidView( modifier = Modifier.fillMaxSize(), factory = { context -> @@ -50,7 +54,7 @@ class MainView { controller.Compose(mainViewModel.activity.lifecycleScope, mainViewModel.activity.lifecycle) } } - + @Composable fun GameStats(mainViewModel: MainViewModel){ var fifo = remember { diff --git a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/SettingViews.kt b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/SettingViews.kt index 6ba85e1ad..1c70c3a93 100644 --- a/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/SettingViews.kt +++ b/src/RyujinxAndroid/app/src/main/java/org/ryujinx/android/views/SettingViews.kt @@ -21,6 +21,7 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.safeContentPadding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth import androidx.compose.material.icons.Icons @@ -108,7 +109,8 @@ class SettingViews { ) loaded.value = true } - Scaffold(modifier = Modifier.fillMaxSize(), + Scaffold(modifier = Modifier.fillMaxSize() + .safeContentPadding(), topBar = { TopAppBar(title = { Text(text = "Settings")