refactor: gpu overdraw handling in various screens

This commit is contained in:
tapframe 2026-04-07 20:45:03 +05:30
parent 61371d0b07
commit 3111df697d
5 changed files with 13 additions and 35 deletions

View file

@ -45,6 +45,7 @@ import androidx.compose.runtime.saveable.rememberSaveableStateHolder
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.draw.alpha
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.hapticfeedback.HapticFeedbackType
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.Modifier
@ -601,7 +602,7 @@ private fun MainAppContent(
modifier = Modifier
.fillMaxSize()
.alpha(if (initialHomeReady) 1f else 0f),
containerColor = MaterialTheme.colorScheme.background,
containerColor = Color.Transparent,
contentWindowInsets = WindowInsets(0),
bottomBar = {
if (!isTabletLayout) {

View file

@ -185,9 +185,7 @@ fun MetaDetailsScreen(
}
Box(
modifier = modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = modifier.fillMaxSize(),
) {
when {
displayedMeta == null && uiState.isLoading -> {

View file

@ -149,9 +149,7 @@ fun SearchScreen(
}
BoxWithConstraints(
modifier = modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = modifier.fillMaxSize(),
) {
val discoverColumns = remember(maxWidth) {
discoverColumnCountForWidth(maxWidth)
@ -163,14 +161,12 @@ fun SearchScreen(
NuvioScreen(
horizontalPadding = 0.dp,
listState = listState,
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
androidx.compose.foundation.layout.Column(
modifier = Modifier
.fillMaxSize()
.fillMaxWidth()
.background(MaterialTheme.colorScheme.background),
) {
NuvioScreenHeader(

View file

@ -1,10 +1,7 @@
package com.nuvio.app.features.settings
import com.nuvio.app.core.build.AppFeaturePolicy
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
@ -58,9 +55,7 @@ fun HomescreenSettingsScreen(
}
NuvioScreen(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
NuvioScreenHeader(
@ -86,9 +81,7 @@ fun MetaScreenSettingsScreen(
}.collectAsStateWithLifecycle()
NuvioScreen(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
NuvioScreenHeader(
@ -113,9 +106,7 @@ fun ContinueWatchingSettingsScreen(
}.collectAsStateWithLifecycle()
NuvioScreen(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
NuvioScreenHeader(
@ -141,9 +132,7 @@ fun AddonsSettingsScreen(
}
NuvioScreen(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
NuvioScreenHeader(
@ -169,9 +158,7 @@ fun PluginsSettingsScreen(
}
NuvioScreen(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
NuvioScreenHeader(
@ -188,9 +175,7 @@ fun AccountSettingsScreen(
onBack: () -> Unit,
) {
NuvioScreen(
modifier = Modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = Modifier.fillMaxSize(),
) {
stickyHeader {
NuvioScreenHeader(

View file

@ -70,9 +70,7 @@ fun SettingsScreen(
onCollectionsClick: () -> Unit = {},
) {
BoxWithConstraints(
modifier = modifier
.fillMaxSize()
.background(MaterialTheme.colorScheme.background),
modifier = modifier.fillMaxSize(),
) {
val playerSettingsUiState by remember {
PlayerSettingsRepository.ensureLoaded()