diff --git a/app/src/main/java/com/pixelized/rplexicon/MainActivity.kt b/app/src/main/java/com/pixelized/rplexicon/MainActivity.kt index 488940f..97e959a 100644 --- a/app/src/main/java/com/pixelized/rplexicon/MainActivity.kt +++ b/app/src/main/java/com/pixelized/rplexicon/MainActivity.kt @@ -27,7 +27,6 @@ import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.compositionLocalOf import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.remember -import androidx.compose.runtime.staticCompositionLocalOf import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen @@ -45,10 +44,10 @@ import dagger.hilt.android.AndroidEntryPoint val NO_WINDOW_INSETS = WindowInsets(0, 0, 0, 0) -val LocalActivity = staticCompositionLocalOf { +val LocalActivity = compositionLocalOf { error("Activity not available") } -val LocalSnack = staticCompositionLocalOf { +val LocalSnack = compositionLocalOf { error("SnackbarHostState not available") } val LocalRollOverlay = compositionLocalOf { diff --git a/app/src/main/java/com/pixelized/rplexicon/ui/composable/KeepOnScreen.kt b/app/src/main/java/com/pixelized/rplexicon/ui/composable/KeepOnScreen.kt new file mode 100644 index 0000000..92af1e8 --- /dev/null +++ b/app/src/main/java/com/pixelized/rplexicon/ui/composable/KeepOnScreen.kt @@ -0,0 +1,17 @@ +package com.pixelized.rplexicon.ui.composable + +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.ui.platform.LocalView + +@Composable +fun KeepOnScreen() { + val currentView = LocalView.current + + DisposableEffect(Unit) { + currentView.keepScreenOn = true + onDispose { + currentView.keepScreenOn = false + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/pixelized/rplexicon/ui/screens/character/CharacterSheetScreen.kt b/app/src/main/java/com/pixelized/rplexicon/ui/screens/character/CharacterSheetScreen.kt index 2ac73a0..0f146ef 100644 --- a/app/src/main/java/com/pixelized/rplexicon/ui/screens/character/CharacterSheetScreen.kt +++ b/app/src/main/java/com/pixelized/rplexicon/ui/screens/character/CharacterSheetScreen.kt @@ -62,6 +62,7 @@ import androidx.hilt.navigation.compose.hiltViewModel import com.pixelized.rplexicon.LocalRollOverlay import com.pixelized.rplexicon.NO_WINDOW_INSETS import com.pixelized.rplexicon.R +import com.pixelized.rplexicon.ui.composable.KeepOnScreen import com.pixelized.rplexicon.ui.composable.Loader import com.pixelized.rplexicon.ui.composable.edit.HandleHitPointEditDialog import com.pixelized.rplexicon.ui.composable.error.HandleFetchError @@ -235,6 +236,8 @@ fun CharacterSheetScreen( BackHandler(enabled = overlay.isOverlayVisible) { overlay.hideOverlay() } + + KeepOnScreen() } }