[优化] 未开启模糊时,正确裁切边距

This commit is contained in:
HapeLee committed 2026-04-29 00:14:28 +08:00
1 parent e1070c745e
commit e995412536
1 file changed
+19 -2
@@ -5,6 +5,7 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.FabPosition import androidx.compose.material3.FabPosition
import androidx.compose.material3.Scaffold import androidx.compose.material3.Scaffold
@@ -15,6 +16,7 @@ import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.remember import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
import dev.chrisbanes.haze.HazeState import dev.chrisbanes.haze.HazeState
import io.legado.app.ui.config.themeConfig.ThemeConfig import io.legado.app.ui.config.themeConfig.ThemeConfig
import io.legado.app.ui.theme.LegadoTheme import io.legado.app.ui.theme.LegadoTheme
@@ -42,6 +44,7 @@ fun AppScaffold(
val hasImageBg = ThemeConfig.hasImageBg(isDark) val hasImageBg = ThemeConfig.hasImageBg(isDark)
val hazeState = remember { HazeState() } val hazeState = remember { HazeState() }
val composeEngine = LegadoTheme.composeEngine val composeEngine = LegadoTheme.composeEngine
val contentDrawsBehindBars = ThemeConfig.enableBlur || ThemeConfig.enableProgressiveBlur
val containerColor = if (hasImageBg) { val containerColor = if (hasImageBg) {
Color.Transparent Color.Transparent
@@ -81,8 +84,15 @@ fun AppScaffold(
modifier = Modifier modifier = Modifier
.fillMaxSize() .fillMaxSize()
.responsiveHazeSource(hazeState) .responsiveHazeSource(hazeState)
.then(
if (contentDrawsBehindBars) Modifier
else Modifier.padding(paddingValues)
)
) { ) {
content(paddingValues) content(
if (contentDrawsBehindBars) paddingValues
else PaddingValues(0.dp)
)
} }
} }
} }
@@ -105,8 +115,15 @@ fun AppScaffold(
modifier = Modifier modifier = Modifier
.fillMaxSize() .fillMaxSize()
.responsiveHazeSource(hazeState) .responsiveHazeSource(hazeState)
.then(
if (contentDrawsBehindBars) Modifier
else Modifier.padding(paddingValues)
)
) { ) {
content(paddingValues) content(
if (contentDrawsBehindBars) paddingValues
else PaddingValues(0.dp)
)
} }
} }
} }