|
|
@ -1,6 +1,8 @@
|
|
|
|
package eu.kanade.presentation.reader.settings
|
|
|
|
package eu.kanade.presentation.reader.settings
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import androidx.compose.foundation.layout.BoxWithConstraints
|
|
|
|
import androidx.compose.foundation.layout.Column
|
|
|
|
import androidx.compose.foundation.layout.Column
|
|
|
|
|
|
|
|
import androidx.compose.foundation.layout.heightIn
|
|
|
|
import androidx.compose.foundation.layout.padding
|
|
|
|
import androidx.compose.foundation.layout.padding
|
|
|
|
import androidx.compose.foundation.pager.rememberPagerState
|
|
|
|
import androidx.compose.foundation.pager.rememberPagerState
|
|
|
|
import androidx.compose.foundation.rememberScrollState
|
|
|
|
import androidx.compose.foundation.rememberScrollState
|
|
|
@ -30,35 +32,38 @@ fun ReaderSettingsDialog(
|
|
|
|
)
|
|
|
|
)
|
|
|
|
val pagerState = rememberPagerState { tabTitles.size }
|
|
|
|
val pagerState = rememberPagerState { tabTitles.size }
|
|
|
|
|
|
|
|
|
|
|
|
TabbedDialog(
|
|
|
|
BoxWithConstraints {
|
|
|
|
onDismissRequest = {
|
|
|
|
TabbedDialog(
|
|
|
|
onDismissRequest()
|
|
|
|
modifier = Modifier.heightIn(max = maxHeight * 0.75f),
|
|
|
|
onShowMenus()
|
|
|
|
onDismissRequest = {
|
|
|
|
},
|
|
|
|
onDismissRequest()
|
|
|
|
tabTitles = tabTitles,
|
|
|
|
|
|
|
|
pagerState = pagerState,
|
|
|
|
|
|
|
|
) { page ->
|
|
|
|
|
|
|
|
val window = (LocalView.current.parent as? DialogWindowProvider)?.window
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LaunchedEffect(pagerState.currentPage) {
|
|
|
|
|
|
|
|
if (pagerState.currentPage == 2) {
|
|
|
|
|
|
|
|
window?.setDimAmount(0f)
|
|
|
|
|
|
|
|
onHideMenus()
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
window?.setDimAmount(0.5f)
|
|
|
|
|
|
|
|
onShowMenus()
|
|
|
|
onShowMenus()
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
tabTitles = tabTitles,
|
|
|
|
|
|
|
|
pagerState = pagerState,
|
|
|
|
|
|
|
|
) { page ->
|
|
|
|
|
|
|
|
val window = (LocalView.current.parent as? DialogWindowProvider)?.window
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LaunchedEffect(pagerState.currentPage) {
|
|
|
|
|
|
|
|
if (pagerState.currentPage == 2) {
|
|
|
|
|
|
|
|
window?.setDimAmount(0f)
|
|
|
|
|
|
|
|
onHideMenus()
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
window?.setDimAmount(0.5f)
|
|
|
|
|
|
|
|
onShowMenus()
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Column(
|
|
|
|
Column(
|
|
|
|
modifier = Modifier
|
|
|
|
modifier = Modifier
|
|
|
|
.padding(vertical = TabbedDialogPaddings.Vertical)
|
|
|
|
.padding(vertical = TabbedDialogPaddings.Vertical)
|
|
|
|
.verticalScroll(rememberScrollState()),
|
|
|
|
.verticalScroll(rememberScrollState()),
|
|
|
|
) {
|
|
|
|
) {
|
|
|
|
when (page) {
|
|
|
|
when (page) {
|
|
|
|
0 -> ReadingModePage(screenModel)
|
|
|
|
0 -> ReadingModePage(screenModel)
|
|
|
|
1 -> GeneralPage(screenModel)
|
|
|
|
1 -> GeneralPage(screenModel)
|
|
|
|
2 -> ColorFilterPage(screenModel)
|
|
|
|
2 -> ColorFilterPage(screenModel)
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|