Voyager on More tab (#8498)
(cherry picked from commit 340357d158)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/more/MorePresenter.kt
This commit is contained in:
@@ -17,8 +17,6 @@ import androidx.compose.material.icons.outlined.PlaylistAdd
|
||||
import androidx.compose.material.icons.outlined.Settings
|
||||
import androidx.compose.material.icons.outlined.SettingsBackupRestore
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.platform.LocalUriHandler
|
||||
@@ -34,13 +32,20 @@ import eu.kanade.presentation.more.settings.widget.TextPreferenceWidget
|
||||
import eu.kanade.tachiyomi.R
|
||||
import eu.kanade.tachiyomi.ui.more.DownloadQueueState
|
||||
import eu.kanade.tachiyomi.ui.more.MoreController
|
||||
import eu.kanade.tachiyomi.ui.more.MorePresenter
|
||||
import eu.kanade.tachiyomi.widget.TachiyomiBottomNavigationView
|
||||
|
||||
@Composable
|
||||
fun MoreScreen(
|
||||
presenter: MorePresenter,
|
||||
downloadQueueStateProvider: () -> DownloadQueueState,
|
||||
downloadedOnly: Boolean,
|
||||
onDownloadedOnlyChange: (Boolean) -> Unit,
|
||||
incognitoMode: Boolean,
|
||||
onIncognitoModeChange: (Boolean) -> Unit,
|
||||
isFDroid: Boolean,
|
||||
// SY -->
|
||||
showNavUpdates: Boolean,
|
||||
showNavHistory: Boolean,
|
||||
// SY <--
|
||||
onClickDownloadQueue: () -> Unit,
|
||||
onClickCategories: () -> Unit,
|
||||
onClickBackupAndRestore: () -> Unit,
|
||||
@@ -51,7 +56,6 @@ fun MoreScreen(
|
||||
onClickHistory: () -> Unit,
|
||||
) {
|
||||
val uriHandler = LocalUriHandler.current
|
||||
val downloadQueueState by presenter.downloadQueueState.collectAsState()
|
||||
|
||||
ScrollbarLazyColumn(
|
||||
modifier = Modifier.statusBarsPadding(),
|
||||
@@ -76,8 +80,8 @@ fun MoreScreen(
|
||||
|
||||
item {
|
||||
AppStateBanners(
|
||||
downloadedOnlyMode = presenter.downloadedOnly.value,
|
||||
incognitoMode = presenter.incognitoMode.value,
|
||||
downloadedOnlyMode = downloadedOnly,
|
||||
incognitoMode = incognitoMode,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -86,8 +90,8 @@ fun MoreScreen(
|
||||
title = stringResource(R.string.label_downloaded_only),
|
||||
subtitle = stringResource(R.string.downloaded_only_summary),
|
||||
icon = Icons.Outlined.CloudOff,
|
||||
checked = presenter.downloadedOnly.value,
|
||||
onCheckedChanged = { presenter.downloadedOnly.value = it },
|
||||
checked = downloadedOnly,
|
||||
onCheckedChanged = onDownloadedOnlyChange,
|
||||
)
|
||||
}
|
||||
item {
|
||||
@@ -95,15 +99,15 @@ fun MoreScreen(
|
||||
title = stringResource(R.string.pref_incognito_mode),
|
||||
subtitle = stringResource(R.string.pref_incognito_mode_summary),
|
||||
icon = ImageVector.vectorResource(R.drawable.ic_glasses_24dp),
|
||||
checked = presenter.incognitoMode.value,
|
||||
onCheckedChanged = { presenter.incognitoMode.value = it },
|
||||
checked = incognitoMode,
|
||||
onCheckedChanged = onIncognitoModeChange,
|
||||
)
|
||||
}
|
||||
|
||||
item { Divider() }
|
||||
|
||||
// SY -->
|
||||
if (!presenter.showNavUpdates.value) {
|
||||
if (!showNavUpdates) {
|
||||
item {
|
||||
TextPreferenceWidget(
|
||||
title = stringResource(R.string.label_recent_updates),
|
||||
@@ -112,7 +116,7 @@ fun MoreScreen(
|
||||
)
|
||||
}
|
||||
}
|
||||
if (!presenter.showNavHistory.value) {
|
||||
if (!showNavHistory) {
|
||||
item {
|
||||
TextPreferenceWidget(
|
||||
title = stringResource(R.string.label_recent_manga),
|
||||
@@ -124,12 +128,13 @@ fun MoreScreen(
|
||||
// SY <--
|
||||
|
||||
item {
|
||||
val downloadQueueState = downloadQueueStateProvider()
|
||||
TextPreferenceWidget(
|
||||
title = stringResource(R.string.label_download_queue),
|
||||
subtitle = when (downloadQueueState) {
|
||||
DownloadQueueState.Stopped -> null
|
||||
is DownloadQueueState.Paused -> {
|
||||
val pending = (downloadQueueState as DownloadQueueState.Paused).pending
|
||||
val pending = downloadQueueState.pending
|
||||
if (pending == 0) {
|
||||
stringResource(R.string.paused)
|
||||
} else {
|
||||
@@ -143,7 +148,7 @@ fun MoreScreen(
|
||||
}
|
||||
}
|
||||
is DownloadQueueState.Downloading -> {
|
||||
val pending = (downloadQueueState as DownloadQueueState.Downloading).pending
|
||||
val pending = downloadQueueState.pending
|
||||
pluralStringResource(id = R.plurals.download_queue_summary, count = pending, pending)
|
||||
}
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user