Handle reader app bar insets in Compose

This commit is contained in:
arkon 2023-10-25 09:21:04 -04:00
parent 548f7f415a
commit 8057f067b9
3 changed files with 4 additions and 10 deletions

View file

@ -19,7 +19,7 @@ fun BrightnessOverlay(
.fillMaxSize() .fillMaxSize()
.graphicsLayer { .graphicsLayer {
alpha = abs(value) / 100f alpha = abs(value) / 100f
} },
) { ) {
drawRect(Color.Black) drawRect(Color.Black)
} }

View file

@ -67,7 +67,7 @@ fun ReaderAppBars(
.surfaceColorAtElevation(3.dp) .surfaceColorAtElevation(3.dp)
.copy(alpha = if (isSystemInDarkTheme()) 0.9f else 0.95f) .copy(alpha = if (isSystemInDarkTheme()) 0.9f else 0.95f)
val appBarModifier = if (fullscreen) { val modifierWithInsetsPadding = if (fullscreen) {
Modifier.systemBarsPadding() Modifier.systemBarsPadding()
} else { } else {
Modifier Modifier
@ -89,7 +89,7 @@ fun ReaderAppBars(
), ),
) { ) {
AppBar( AppBar(
modifier = appBarModifier modifier = modifierWithInsetsPadding
.clickable(onClick = onClickTopAppBar), .clickable(onClick = onClickTopAppBar),
backgroundColor = backgroundColor, backgroundColor = backgroundColor,
title = mangaTitle, title = mangaTitle,
@ -135,6 +135,7 @@ fun ReaderAppBars(
), ),
) { ) {
Column( Column(
modifier = modifierWithInsetsPadding,
verticalArrangement = Arrangement.spacedBy(8.dp), verticalArrangement = Arrangement.spacedBy(8.dp),
) { ) {
ChapterNavigator( ChapterNavigator(

View file

@ -92,7 +92,6 @@ import tachiyomi.domain.manga.model.Manga
import tachiyomi.presentation.core.util.collectAsState import tachiyomi.presentation.core.util.collectAsState
import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.Injekt
import uy.kohesive.injekt.api.get import uy.kohesive.injekt.api.get
import kotlin.math.abs
class ReaderActivity : BaseActivity() { class ReaderActivity : BaseActivity() {
@ -299,12 +298,6 @@ class ReaderActivity : BaseActivity() {
* Initializes the reader menu. It sets up click listeners and the initial visibility. * Initializes the reader menu. It sets up click listeners and the initial visibility.
*/ */
private fun initializeMenu() { private fun initializeMenu() {
binding.dialogRoot.applyInsetter {
type(navigationBars = true) {
margin(vertical = true, horizontal = true)
}
}
binding.pageNumber.setComposeContent { binding.pageNumber.setComposeContent {
val state by viewModel.state.collectAsState() val state by viewModel.state.collectAsState()
val showPageNumber by viewModel.readerPreferences.showPageNumber().collectAsState() val showPageNumber by viewModel.readerPreferences.showPageNumber().collectAsState()