diff --git a/app/src/main/java/eu/kanade/domain/ui/UiPreferences.kt b/app/src/main/java/eu/kanade/domain/ui/UiPreferences.kt index fec8c0afd..64e775844 100644 --- a/app/src/main/java/eu/kanade/domain/ui/UiPreferences.kt +++ b/app/src/main/java/eu/kanade/domain/ui/UiPreferences.kt @@ -65,7 +65,11 @@ class UiPreferences( fun readButtonPosition() = preferenceStore.getString("reading_button_position", FabPosition.End.toString()) - fun usePanoramaCover() = preferenceStore.getBoolean("use_panorama_cover", false) + fun usePanoramaCoverFlow() = preferenceStore.getBoolean("use_panorama_cover_flow", false) + + fun usePanoramaCoverAlways() = preferenceStore.getBoolean("use_panorama_cover_grid", true) + + fun usePanoramaCoverMangaInfo() = preferenceStore.getBoolean("use_panorama_cover_manga_info", false) // KMK <-- fun recommendsInOverflow() = preferenceStore.getBoolean("recommends_in_overflow", false) diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt index 4339f3d0d..542897f81 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceComfortableGrid.kt @@ -36,7 +36,7 @@ fun BrowseSourceComfortableGrid( onMangaLongClick: (Manga) -> Unit, // KMK --> selection: List, - usePanoramaCover: Boolean? = null, + usePanoramaCover: Boolean = false, // KMK <-- ) { LazyVerticalGrid( @@ -90,7 +90,7 @@ internal fun BrowseSourceComfortableGridItem( onLongClick: () -> Unit = onClick, // KMK --> isSelected: Boolean = false, - usePanoramaCover: Boolean?, + usePanoramaCover: Boolean, // KMK <-- ) { MangaComfortableGridItem( @@ -104,7 +104,7 @@ internal fun BrowseSourceComfortableGridItem( ), // KMK --> isSelected = isSelected, - panoramaCover = usePanoramaCover, + usePanoramaCover = usePanoramaCover, fitToPanoramaCover = true, // KMK <-- coverAlpha = if (manga.favorite) CommonMangaItemDefaults.BrowseFavoriteCoverAlpha else 1f, diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceCompactGrid.kt b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceCompactGrid.kt index ca3964aa2..908ebe226 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceCompactGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceCompactGrid.kt @@ -101,7 +101,6 @@ internal fun BrowseSourceCompactGridItem( ), // KMK --> isSelected = isSelected, - fitToPanoramaCover = true, // KMK <-- coverAlpha = if (manga.favorite) CommonMangaItemDefaults.BrowseFavoriteCoverAlpha else 1f, coverBadgeStart = { diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceSimpleToolbar.kt b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceSimpleToolbar.kt index e628b1df6..e0154153f 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceSimpleToolbar.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceSimpleToolbar.kt @@ -10,7 +10,6 @@ import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue -import eu.kanade.domain.ui.UiPreferences import eu.kanade.presentation.components.AppBar import eu.kanade.presentation.components.AppBarActions import eu.kanade.presentation.components.DropdownMenu @@ -21,9 +20,6 @@ import tachiyomi.domain.library.model.LibraryDisplayMode import tachiyomi.i18n.MR import tachiyomi.i18n.kmk.KMR import tachiyomi.presentation.core.i18n.stringResource -import tachiyomi.presentation.core.util.collectAsState -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get @Composable fun BrowseSourceSimpleToolbar( @@ -73,15 +69,12 @@ fun BrowseSourceSimpleToolbar( selectingDisplayMode = false onDisplayModeChange(LibraryDisplayMode.ComfortableGrid) } - val usePanoramaCover by lazy { Injekt.get().usePanoramaCover() } - if (!usePanoramaCover.collectAsState().value) { - RadioMenuItem( - text = { Text(text = stringResource(KMR.strings.action_display_comfortable_grid_panorama)) }, - isChecked = displayMode == LibraryDisplayMode.ComfortableGridPanorama, - ) { - selectingDisplayMode = false - onDisplayModeChange(LibraryDisplayMode.ComfortableGridPanorama) - } + RadioMenuItem( + text = { Text(text = stringResource(KMR.strings.action_display_comfortable_grid_panorama)) }, + isChecked = displayMode == LibraryDisplayMode.ComfortableGridPanorama, + ) { + selectingDisplayMode = false + onDisplayModeChange(LibraryDisplayMode.ComfortableGridPanorama) } RadioMenuItem( text = { Text(text = stringResource(MR.strings.action_display_grid)) }, diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt index 6e56c0dfc..22fc53c93 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt @@ -12,7 +12,6 @@ import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue -import eu.kanade.domain.ui.UiPreferences import eu.kanade.presentation.components.AppBar import eu.kanade.presentation.components.AppBarActions import eu.kanade.presentation.components.AppBarTitle @@ -28,10 +27,7 @@ import tachiyomi.domain.library.model.LibraryDisplayMode import tachiyomi.i18n.MR import tachiyomi.i18n.kmk.KMR import tachiyomi.presentation.core.i18n.stringResource -import tachiyomi.presentation.core.util.collectAsState import tachiyomi.source.local.LocalSource -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get @Composable fun BrowseSourceToolbar( @@ -145,15 +141,12 @@ fun BrowseSourceToolbar( onDisplayModeChange(LibraryDisplayMode.ComfortableGrid) } // KMK --> - val usePanoramaCover by lazy { Injekt.get().usePanoramaCover() } - if (!usePanoramaCover.collectAsState().value) { - RadioMenuItem( - text = { Text(text = stringResource(KMR.strings.action_display_comfortable_grid_panorama)) }, - isChecked = displayMode == LibraryDisplayMode.ComfortableGridPanorama, - ) { - selectingDisplayMode = false - onDisplayModeChange(LibraryDisplayMode.ComfortableGridPanorama) - } + RadioMenuItem( + text = { Text(text = stringResource(KMR.strings.action_display_comfortable_grid_panorama)) }, + isChecked = displayMode == LibraryDisplayMode.ComfortableGridPanorama, + ) { + selectingDisplayMode = false + onDisplayModeChange(LibraryDisplayMode.ComfortableGridPanorama) } // KMK <-- RadioMenuItem( diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/GlobalSearchCardRow.kt b/app/src/main/java/eu/kanade/presentation/browse/components/GlobalSearchCardRow.kt index c76716da4..d11d5f938 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/GlobalSearchCardRow.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/GlobalSearchCardRow.kt @@ -75,17 +75,17 @@ internal fun MangaItem( onLongClick: () -> Unit, // KMK --> isSelected: Boolean = false, - panoramaCover: Boolean = true, + usePanoramaCover: Boolean? = null, // KMK <-- ) { // KMK --> - val usePanoramaCover = panoramaCover ?: Injekt.get().usePanoramaCover().collectAsState().value + val panoramaCover = usePanoramaCover ?: Injekt.get().usePanoramaCoverFlow().collectAsState().value val coverRatio = remember { mutableFloatStateOf(1f) } // KMK <-- Box( modifier = Modifier.width( // KMK --> - if (usePanoramaCover && coverRatio.floatValue <= RatioSwitchToPanorama) 205.dp else 96.dp, + if (panoramaCover && coverRatio.floatValue <= RatioSwitchToPanorama) 205.dp else 96.dp, // KMK <-- ), ) { @@ -99,7 +99,7 @@ internal fun MangaItem( // KMK --> isSelected = isSelected, coverRatio = coverRatio, - panoramaCover = usePanoramaCover, + usePanoramaCover = panoramaCover, fitToPanoramaCover = true, // KMK <-- coverAlpha = if (isFavorite) CommonMangaItemDefaults.BrowseFavoriteCoverAlpha else 1f, diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/MigrationItem.kt b/app/src/main/java/eu/kanade/presentation/browse/components/MigrationItem.kt index b5bfae4a0..2558f1c12 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/MigrationItem.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/MigrationItem.kt @@ -13,11 +13,8 @@ import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.MutableFloatState import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableFloatStateOf import androidx.compose.runtime.produceState -import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip @@ -28,21 +25,14 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import eu.kanade.domain.ui.UiPreferences -import eu.kanade.presentation.manga.components.CoverPlaceholderColor import eu.kanade.presentation.manga.components.MangaCover -import eu.kanade.presentation.manga.components.RatioSwitchToPanorama import eu.kanade.tachiyomi.ui.browse.migration.advanced.process.MigratingManga import tachiyomi.core.common.util.lang.withIOContext import tachiyomi.domain.manga.model.Manga -import tachiyomi.domain.manga.model.asMangaCover import tachiyomi.i18n.MR import tachiyomi.presentation.core.components.Badge import tachiyomi.presentation.core.components.BadgeGroup import tachiyomi.presentation.core.i18n.stringResource -import tachiyomi.presentation.core.util.collectAsState -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get @Composable fun MigrationItem( @@ -51,15 +41,7 @@ fun MigrationItem( sourcesString: String, chapterInfo: MigratingManga.ChapterInfo, onClick: () -> Unit, - // KMK --> - coverRatio: MutableFloatState = remember { mutableFloatStateOf(1f) }, - // KMK <-- ) { - // KMK --> - val usePanoramaCover by Injekt.get().usePanoramaCover().collectAsState() - val coverIsWide = coverRatio.floatValue <= RatioSwitchToPanorama - val bgColor = manga.asMangaCover().dominantCoverColors?.first?.let { Color(it) } - // KMK <-- Column( modifier .widthIn(max = 150.dp) @@ -71,41 +53,13 @@ fun MigrationItem( val context = LocalContext.current Box( Modifier.fillMaxWidth() - // KMK --> - .background(bgColor ?: CoverPlaceholderColor) - // KMK <-- .aspectRatio(MangaCover.Book.ratio), ) { - // KMK --> - if (usePanoramaCover && coverIsWide) { - MangaCover.Panorama( - modifier = Modifier - // KMK --> - .align(Alignment.Center) - // KMK <-- - .fillMaxWidth(), - data = manga, - // KMK --> - onCoverLoaded = { _, result -> - val image = result.result.image - coverRatio.floatValue = image.height.toFloat() / image.width - }, - // KMK <-- - ) - } else { - // KMK <-- - MangaCover.Book( - modifier = Modifier - .fillMaxWidth(), - data = manga, - // KMK --> - onCoverLoaded = { _, result -> - val image = result.result.image - coverRatio.floatValue = image.height.toFloat() / image.width - }, - // KMK <-- - ) - } + MangaCover.Book( + modifier = Modifier + .fillMaxWidth(), + data = manga, + ) Box( modifier = Modifier .clip(RoundedCornerShape(bottomStart = 4.dp, bottomEnd = 4.dp)) diff --git a/app/src/main/java/eu/kanade/presentation/browse/components/RelatedMangasComfortableGrid.kt b/app/src/main/java/eu/kanade/presentation/browse/components/RelatedMangasComfortableGrid.kt index 5f1278a96..4b910b642 100644 --- a/app/src/main/java/eu/kanade/presentation/browse/components/RelatedMangasComfortableGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/browse/components/RelatedMangasComfortableGrid.kt @@ -35,7 +35,7 @@ fun RelatedMangasComfortableGrid( onKeywordClick: (String) -> Unit, onKeywordLongClick: (String) -> Unit, selection: List, - usePanoramaCover: Boolean? = null, + usePanoramaCover: Boolean = false, ) { FastScrollLazyVerticalGrid( columns = columns, diff --git a/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt b/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt index 2d5d58524..1d6454ada 100644 --- a/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/history/HistoryScreen.kt @@ -5,9 +5,13 @@ import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.items import androidx.compose.material.icons.Icons import androidx.compose.material.icons.outlined.DeleteSweep +import androidx.compose.material.icons.outlined.Panorama +import androidx.compose.material3.MaterialTheme import androidx.compose.material3.SnackbarHost import androidx.compose.material3.SnackbarHostState import androidx.compose.runtime.Composable +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.PreviewLightDark import androidx.compose.ui.tooling.preview.PreviewParameter @@ -24,6 +28,7 @@ import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.persistentListOf import tachiyomi.domain.history.model.HistoryWithRelations import tachiyomi.i18n.MR +import tachiyomi.i18n.kmk.KMR import tachiyomi.presentation.core.components.FastScrollLazyColumn import tachiyomi.presentation.core.components.ListGroupHeader import tachiyomi.presentation.core.components.material.Scaffold @@ -41,6 +46,9 @@ fun HistoryScreen( onClickResume: (mangaId: Long, chapterId: Long) -> Unit, onDialogChange: (HistoryScreenModel.Dialog?) -> Unit, ) { + // KMK --> + val usePanoramaCover = remember { mutableStateOf(false) } + // KMK <-- Scaffold( topBar = { scrollBehavior -> SearchToolbar( @@ -49,15 +57,35 @@ fun HistoryScreen( onChangeSearchQuery = onSearchQueryChange, actions = { AppBarActions( - persistentListOf( - AppBar.Action( - title = stringResource(MR.strings.pref_clear_history), - icon = Icons.Outlined.DeleteSweep, - onClick = { - onDialogChange(HistoryScreenModel.Dialog.DeleteAll) - }, - ), - ), + // KMK --> + persistentListOf().builder() + .apply { + if (!state.list.isNullOrEmpty()) { + add( + AppBar.Action( + title = stringResource(KMR.strings.action_panorama_cover), + icon = Icons.Outlined.Panorama, + iconTint = MaterialTheme.colorScheme.primary.takeIf { usePanoramaCover.value }, + onClick = { + usePanoramaCover.value = !usePanoramaCover.value + }, + ), + ) + } + add( + // KMK <-- + AppBar.Action( + title = stringResource(MR.strings.pref_clear_history), + icon = Icons.Outlined.DeleteSweep, + onClick = { + onDialogChange(HistoryScreenModel.Dialog.DeleteAll) + }, + ), + // KMK --> + ) + } + .build(), + // KMK <-- ) }, scrollBehavior = scrollBehavior, @@ -85,6 +113,9 @@ fun HistoryScreen( onClickCover = { history -> onClickCover(history.mangaId) }, onClickResume = { history -> onClickResume(history.mangaId, history.chapterId) }, onClickDelete = { item -> onDialogChange(HistoryScreenModel.Dialog.Delete(item)) }, + // KMK --> + usePanoramaCover = usePanoramaCover.value, + // KMK <-- ) } } @@ -98,6 +129,9 @@ private fun HistoryScreenContent( onClickCover: (HistoryWithRelations) -> Unit, onClickResume: (HistoryWithRelations) -> Unit, onClickDelete: (HistoryWithRelations) -> Unit, + // KMK --> + usePanoramaCover: Boolean, + // KMK <-- ) { FastScrollLazyColumn( contentPadding = contentPadding, @@ -127,6 +161,9 @@ private fun HistoryScreenContent( onClickCover = { onClickCover(value) }, onClickResume = { onClickResume(value) }, onClickDelete = { onClickDelete(value) }, + // KMK --> + usePanoramaCover = usePanoramaCover, + // KMK <-- ) } } diff --git a/app/src/main/java/eu/kanade/presentation/history/components/HistoryItem.kt b/app/src/main/java/eu/kanade/presentation/history/components/HistoryItem.kt index c23996466..505ce2f6f 100644 --- a/app/src/main/java/eu/kanade/presentation/history/components/HistoryItem.kt +++ b/app/src/main/java/eu/kanade/presentation/history/components/HistoryItem.kt @@ -15,7 +15,6 @@ import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.MutableFloatState -import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableFloatStateOf import androidx.compose.runtime.remember import androidx.compose.ui.Alignment @@ -26,7 +25,6 @@ import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.PreviewLightDark import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp -import eu.kanade.domain.ui.UiPreferences import eu.kanade.presentation.manga.components.MangaCover import eu.kanade.presentation.manga.components.RatioSwitchToPanorama import eu.kanade.presentation.theme.TachiyomiPreviewTheme @@ -36,9 +34,6 @@ import tachiyomi.domain.history.model.HistoryWithRelations import tachiyomi.i18n.MR import tachiyomi.presentation.core.components.material.padding import tachiyomi.presentation.core.i18n.stringResource -import tachiyomi.presentation.core.util.collectAsState -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get private val HistoryItemHeight = 96.dp @@ -50,6 +45,7 @@ fun HistoryItem( onClickDelete: () -> Unit, modifier: Modifier = Modifier, // KMK --> + usePanoramaCover: Boolean, coverRatio: MutableFloatState = remember { mutableFloatStateOf(1f) }, // KMK <-- ) { @@ -62,7 +58,6 @@ fun HistoryItem( ) { // KMK --> val mangaCover = history.coverData - val usePanoramaCover by Injekt.get().usePanoramaCover().collectAsState() val coverIsWide = coverRatio.floatValue <= RatioSwitchToPanorama val bgColor = mangaCover.dominantCoverColors?.first?.let { Color(it) } val onBgColor = mangaCover.dominantCoverColors?.second @@ -150,6 +145,7 @@ private fun HistoryItemPreviews( onClickCover = {}, onClickResume = {}, onClickDelete = {}, + usePanoramaCover = false, ) } } diff --git a/app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt b/app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt index e488bf83a..ca68f3d85 100644 --- a/app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt +++ b/app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt @@ -19,7 +19,6 @@ import androidx.compose.ui.platform.LocalConfiguration import androidx.compose.ui.res.painterResource import androidx.compose.ui.util.fastForEach import dev.icerock.moko.resources.StringResource -import eu.kanade.domain.ui.UiPreferences import eu.kanade.presentation.components.TabbedDialog import eu.kanade.presentation.components.TabbedDialogPaddings import eu.kanade.tachiyomi.R @@ -49,8 +48,6 @@ import tachiyomi.presentation.core.components.SortItem import tachiyomi.presentation.core.components.TriStateItem import tachiyomi.presentation.core.i18n.stringResource import tachiyomi.presentation.core.util.collectAsState -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get @Composable fun LibrarySettingsDialog( @@ -297,22 +294,14 @@ private fun ColumnScope.DisplayPage( screenModel: LibrarySettingsScreenModel, ) { val displayMode by screenModel.libraryPreferences.displayMode().collectAsState() - // KMK --> - val usePanoramaCover by lazy { Injekt.get().usePanoramaCover() } - // KMK <-- SettingsChipRow(MR.strings.action_display_mode) { - displayModes - .filterNot { - it.second == LibraryDisplayMode.ComfortableGridPanorama && - usePanoramaCover.collectAsState().value - } - .map { (titleRes, mode) -> - FilterChip( - selected = displayMode == mode, - onClick = { screenModel.setDisplayMode(mode) }, - label = { Text(stringResource(titleRes)) }, - ) - } + displayModes.map { (titleRes, mode) -> + FilterChip( + selected = displayMode == mode, + onClick = { screenModel.setDisplayMode(mode) }, + label = { Text(stringResource(titleRes)) }, + ) + } } if (displayMode != LibraryDisplayMode.List) { diff --git a/app/src/main/java/eu/kanade/presentation/library/components/CommonMangaItem.kt b/app/src/main/java/eu/kanade/presentation/library/components/CommonMangaItem.kt index 26508890e..309fa2d1a 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/CommonMangaItem.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/CommonMangaItem.kt @@ -26,7 +26,6 @@ import androidx.compose.material3.contentColorFor import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.MutableFloatState -import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableFloatStateOf import androidx.compose.runtime.remember import androidx.compose.ui.Alignment @@ -42,7 +41,6 @@ import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp -import eu.kanade.domain.ui.UiPreferences import eu.kanade.presentation.manga.components.MangaCover import eu.kanade.presentation.manga.components.MangaCoverHide import eu.kanade.presentation.manga.components.RatioSwitchToPanorama @@ -50,10 +48,7 @@ import exh.debug.DebugToggles import tachiyomi.i18n.MR import tachiyomi.presentation.core.components.BadgeGroup import tachiyomi.presentation.core.i18n.stringResource -import tachiyomi.presentation.core.util.collectAsState import tachiyomi.presentation.core.util.selectedBackground -import uy.kohesive.injekt.Injekt -import uy.kohesive.injekt.api.get import tachiyomi.domain.manga.model.MangaCover as MangaCoverModel object CommonMangaItemDefaults { @@ -92,13 +87,9 @@ fun MangaCompactGridItem( coverBadgeEnd: @Composable (RowScope.() -> Unit)? = null, // KMK --> libraryColored: Boolean = true, - coverRatio: MutableFloatState = remember { mutableFloatStateOf(1f) }, - fitToPanoramaCover: Boolean = false, // KMK <-- ) { // KMK --> - val usePanoramaCover by Injekt.get().usePanoramaCover().collectAsState() - val coverIsWide = coverRatio.floatValue <= RatioSwitchToPanorama val bgColor = coverData.dominantCoverColors?.first?.let { Color(it) }.takeIf { libraryColored } val onBgColor = coverData.dominantCoverColors?.second.takeIf { libraryColored } // KMK <-- @@ -118,58 +109,22 @@ fun MangaCompactGridItem( tint = onBgColor, ) } else { - if (fitToPanoramaCover && usePanoramaCover && coverIsWide) { - MangaCover.Panorama( - modifier = Modifier - // KMK --> - // .alpha(if (isSelected) GridSelectedCoverAlpha else coverAlpha) - // KMK <-- - .fillMaxWidth(), - data = coverData, + // KMK <-- + MangaCover.Book( + modifier = Modifier // KMK --> - alpha = if (isSelected) GRID_SELECTED_COVER_ALPHA else coverAlpha, - bgColor = bgColor ?: (MaterialTheme.colorScheme.surface.takeIf { isSelected }), - tint = onBgColor, - onCoverLoaded = { _, result -> - val image = result.result.image - coverRatio.floatValue = image.height.toFloat() / image.width - }, + // .alpha(if (isSelected) GridSelectedCoverAlpha else coverAlpha) // KMK <-- - ) - } else { + .fillMaxWidth(), + data = coverData, + // KMK --> + alpha = if (isSelected) GRID_SELECTED_COVER_ALPHA else coverAlpha, + bgColor = bgColor ?: (MaterialTheme.colorScheme.surface.takeIf { isSelected }), + tint = onBgColor, // KMK <-- - MangaCover.Book( - modifier = Modifier - // KMK --> - // .alpha(if (isSelected) GridSelectedCoverAlpha else coverAlpha) - // KMK <-- - .fillMaxWidth(), - data = coverData, - // KMK --> - alpha = if (isSelected) GRID_SELECTED_COVER_ALPHA else coverAlpha, - bgColor = bgColor ?: (MaterialTheme.colorScheme.surface.takeIf { isSelected }), - tint = onBgColor, - onCoverLoaded = { _, result -> - val image = result.result.image - coverRatio.floatValue = image.height.toFloat() / image.width - }, - scale = if (usePanoramaCover && coverIsWide) { - ContentScale.Fit - } else { - ContentScale.Crop - }, - // KMK <-- - ) - } + ) } }, - // KMK --> - ratio = if (fitToPanoramaCover && usePanoramaCover && coverIsWide) { - MangaCover.Panorama.ratio - } else { - MangaCover.Book.ratio - }, - // KMK <-- badgesStart = coverBadgeStart, badgesEnd = coverBadgeEnd, content = { @@ -264,12 +219,11 @@ fun MangaComfortableGridItem( // KMK --> libraryColored: Boolean = true, coverRatio: MutableFloatState = remember { mutableFloatStateOf(1f) }, - panoramaCover: Boolean?, + usePanoramaCover: Boolean, fitToPanoramaCover: Boolean = false, // KMK <-- ) { // KMK --> - val usePanoramaCover = panoramaCover ?: Injekt.get().usePanoramaCover().collectAsState().value val coverIsWide = coverRatio.floatValue <= RatioSwitchToPanorama val bgColor = coverData.dominantCoverColors?.first?.let { Color(it) }.takeIf { libraryColored } val onBgColor = coverData.dominantCoverColors?.second.takeIf { libraryColored } diff --git a/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt b/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt index 70b6afafa..f18702a21 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt @@ -22,7 +22,7 @@ internal fun LibraryComfortableGrid( searchQuery: String?, onGlobalSearchClicked: () -> Unit, // KMK --> - usePanoramaCover: Boolean? = null, + usePanoramaCover: Boolean = false, // KMK <-- ) { LazyLibraryGrid( @@ -71,7 +71,7 @@ internal fun LibraryComfortableGrid( null }, // KMK --> - panoramaCover = usePanoramaCover, + usePanoramaCover = usePanoramaCover, // KMK <-- ) } diff --git a/app/src/main/java/eu/kanade/presentation/manga/DuplicateMangaDialog.kt b/app/src/main/java/eu/kanade/presentation/manga/DuplicateMangaDialog.kt index b705ae926..d20617299 100644 --- a/app/src/main/java/eu/kanade/presentation/manga/DuplicateMangaDialog.kt +++ b/app/src/main/java/eu/kanade/presentation/manga/DuplicateMangaDialog.kt @@ -62,7 +62,7 @@ fun DuplicateMangaDialog( val minHeight = LocalPreferenceMinHeight.current // KMK --> - val usePanoramaCover by Injekt.get().usePanoramaCover().collectAsState() + val usePanoramaCover by Injekt.get().usePanoramaCoverAlways().collectAsState() val coverRatio = remember { mutableFloatStateOf(1f) } val coverIsWide = coverRatio.floatValue <= RatioSwitchToPanorama // KMK <-- @@ -196,7 +196,7 @@ fun DuplicateMangasDialog( mangaName: String, duplicate: Manga, ) { - val usePanoramaCover by Injekt.get().usePanoramaCover().collectAsState() + val usePanoramaCover by Injekt.get().usePanoramaCoverAlways().collectAsState() val coverRatio = remember { mutableFloatStateOf(1f) } val coverIsWide = coverRatio.floatValue <= RatioSwitchToPanorama diff --git a/app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt b/app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt index 60311386f..474cef9ca 100644 --- a/app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt +++ b/app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt @@ -126,7 +126,7 @@ fun MangaInfoBox( // KMK <-- ) { // KMK --> - val usePanoramaCover by Injekt.get().usePanoramaCover().collectAsState() + val usePanoramaCover by Injekt.get().usePanoramaCoverMangaInfo().collectAsState() // KMK <-- Box(modifier = modifier) { // Backdrop diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt index 9e8e6da29..6207d4f2a 100644 --- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt +++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt @@ -51,7 +51,7 @@ object SettingsAppearanceScreen : SearchableSettings { return listOf( getThemeGroup(uiPreferences = uiPreferences), // KMK --> - getDetailsPageThemeGroup(uiPreferences = uiPreferences), + getMangaInfoThemeGroup(uiPreferences = uiPreferences), // KMK <-- getDisplayGroup(uiPreferences = uiPreferences), // SY --> @@ -156,15 +156,15 @@ object SettingsAppearanceScreen : SearchableSettings { // KMK --> @Composable - private fun getDetailsPageThemeGroup( + private fun getMangaInfoThemeGroup( uiPreferences: UiPreferences, ): Preference.PreferenceGroup { val scope = rememberCoroutineScope() - val detailsPageThemeCoverBased by remember { + val mangaInfoThemeCoverBased by remember { Injekt.get().themeCoverBased().asState(scope) } return Preference.PreferenceGroup( - title = stringResource(KMR.strings.pref_details_page_theme), + title = stringResource(KMR.strings.pref_manga_info_theme), preferenceItems = persistentListOf( Preference.PreferenceItem.SwitchPreference( pref = uiPreferences.themeCoverBased(), @@ -173,7 +173,7 @@ object SettingsAppearanceScreen : SearchableSettings { Preference.PreferenceItem.ListPreference( pref = uiPreferences.themeCoverBasedStyle(), title = stringResource(KMR.strings.pref_theme_cover_based_style), - enabled = detailsPageThemeCoverBased, + enabled = mangaInfoThemeCoverBased, entries = PaletteStyle.entries .associateWith { when (it) { @@ -200,6 +200,11 @@ object SettingsAppearanceScreen : SearchableSettings { } .toImmutableMap(), ), + Preference.PreferenceItem.SwitchPreference( + pref = uiPreferences.usePanoramaCoverMangaInfo(), + title = stringResource(KMR.strings.pref_panorama_cover), + subtitle = stringResource(KMR.strings.pref_panorama_cover_summary), + ), ), ) } @@ -274,9 +279,9 @@ object SettingsAppearanceScreen : SearchableSettings { preferenceItems = persistentListOf( // KMK --> Preference.PreferenceItem.SwitchPreference( - pref = uiPreferences.usePanoramaCover(), - title = stringResource(KMR.strings.pref_use_panorama_cover), - subtitle = stringResource(KMR.strings.pref_use_panorama_cover_summary), + pref = uiPreferences.usePanoramaCoverFlow(), + title = stringResource(KMR.strings.pref_panorama_cover_flow), + subtitle = stringResource(KMR.strings.pref_panorama_cover_flow_summary), ), // KMK <-- Preference.PreferenceItem.SwitchPreference( diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/EditMangaDialog.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/EditMangaDialog.kt index fcf20b856..0c73f8c5c 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/EditMangaDialog.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/EditMangaDialog.kt @@ -38,6 +38,7 @@ import coil3.transform.RoundedCornersTransformation import com.google.android.material.chip.Chip import com.google.android.material.chip.ChipGroup import com.google.android.material.dialog.MaterialAlertDialogBuilder +import eu.kanade.domain.ui.UiPreferences import eu.kanade.presentation.manga.components.RatioSwitchToPanorama import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.databinding.EditMangaDialogBinding @@ -61,6 +62,8 @@ import tachiyomi.i18n.MR import tachiyomi.i18n.sy.SYMR import tachiyomi.presentation.core.i18n.stringResource import tachiyomi.source.local.isLocal +import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get @Composable fun EditMangaDialog( @@ -366,7 +369,7 @@ private fun loadCover( // KMK <-- ) { // KMK --> - if (coverRatio.floatValue <= RatioSwitchToPanorama) { + if (Injekt.get().usePanoramaCoverAlways().get() && coverRatio.floatValue <= RatioSwitchToPanorama) { binding.mangaCover.visibility = View.GONE binding.mangaCoverPanorama.visibility = View.VISIBLE binding.mangaCoverPanorama.load(manga) { diff --git a/i18n-kmk/src/commonMain/moko-resources/ar/strings.xml b/i18n-kmk/src/commonMain/moko-resources/ar/strings.xml index 4a9483e4d..b36d5e08c 100644 --- a/i18n-kmk/src/commonMain/moko-resources/ar/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/ar/strings.xml @@ -4,7 +4,7 @@ تبديل NSFW فقط وضع التحديد بالجملة الأسئلة الشائعة والأدلة - صفحة التفاصيل + صفحة التفاصيل الفاصل الزمني لتجديد التحميل دليل ساعة واحدة @@ -98,7 +98,7 @@ LCD PICO-8 إظهار الفئات المخفية - غلاف بانوراما - إظهار الغلاف في الوضع الأفقي إذا كان صورة واسعة + غلاف بانوراما + إظهار الغلاف في الوضع الأفقي إذا كان صورة واسعة شبكة بانوراما المريحة diff --git a/i18n-kmk/src/commonMain/moko-resources/base/strings.xml b/i18n-kmk/src/commonMain/moko-resources/base/strings.xml index 27446ecb3..ea175a95f 100644 --- a/i18n-kmk/src/commonMain/moko-resources/base/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/base/strings.xml @@ -13,12 +13,13 @@ Remove merged entries? Hide Show hidden categories + Panorama cover Custom theme style - Manga details page + Manga Info Theme based on cover Cover based theme style Tonal Spot @@ -30,8 +31,10 @@ Monochrome Fidelity Content - Panorama Cover - Show cover in landscape mode if it\'s a wide image + Panorama Cover + Show cover in landscape mode if it\'s a wide image + Panorama Cover Flow + Show panorama cover in Global Search & Suggestions Panorama comfortable grid Expand Suggestions If turned off, Suggestions won\'t automatically load & show expanded diff --git a/i18n-kmk/src/commonMain/moko-resources/cs/strings.xml b/i18n-kmk/src/commonMain/moko-resources/cs/strings.xml index 361ee3490..8ee405cbe 100644 --- a/i18n-kmk/src/commonMain/moko-resources/cs/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/cs/strings.xml @@ -4,7 +4,7 @@ Přepnout pouze NSFW Režim hromadného výběru FAQ a návody - Stránka s podrobnostmi + Stránka s podrobnostmi Interval obnovení mezipaměti Ruční 1 hodina @@ -98,7 +98,7 @@ LCD PICO-8 Zobrazit skryté kategorie - Kryt Panoramy - Zobrazit obal v režimu na šířku, pokud je to široký obrázek + Kryt Panoramy + Zobrazit obal v režimu na šířku, pokud je to široký obrázek Panorama pohodlná mřížka diff --git a/i18n-kmk/src/commonMain/moko-resources/da/strings.xml b/i18n-kmk/src/commonMain/moko-resources/da/strings.xml index e8e4e066b..0dabc30d4 100644 --- a/i18n-kmk/src/commonMain/moko-resources/da/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/da/strings.xml @@ -4,7 +4,7 @@ Slå kun NSFW til/fra Masse valg tilstand Ofte stillede spørgsmål og vejledninger - Detaljer side + Detaljer side Download cache forny interval Manuelt 1 time @@ -98,7 +98,7 @@ LCD PICO-8 Vis skjulte kategorier - Panoramaomslag - Vis omslag i liggende tilstand, hvis det er et bredt billede + Panoramaomslag + Vis omslag i liggende tilstand, hvis det er et bredt billede Panorama komfortabelt gitter diff --git a/i18n-kmk/src/commonMain/moko-resources/de/strings.xml b/i18n-kmk/src/commonMain/moko-resources/de/strings.xml index 3719112ba..f79838c63 100644 --- a/i18n-kmk/src/commonMain/moko-resources/de/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/de/strings.xml @@ -4,7 +4,7 @@ Nur NSFW umschalten Massenauswahlmodus FAQ und Anleitungen - Detailseite + Detailseite Download-Cache Erneuerungsintervall Manuell 1 Stunde @@ -98,7 +98,7 @@ LCD PICO-8 Versteckte Kategorien anzeigen - Panorama-Cover - Cover im Querformat anzeigen, wenn es ein breites Bild ist + Panorama-Cover + Cover im Querformat anzeigen, wenn es ein breites Bild ist Panorama-bequemes Raster diff --git a/i18n-kmk/src/commonMain/moko-resources/el/strings.xml b/i18n-kmk/src/commonMain/moko-resources/el/strings.xml index c44180905..6fd102b17 100644 --- a/i18n-kmk/src/commonMain/moko-resources/el/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/el/strings.xml @@ -4,7 +4,7 @@ Εναλλαγή μόνο NSFW Λειτουργία μαζικής επιλογής Συχνές ερωτήσεις και οδηγοί - Σελίδα λεπτομερειών + Σελίδα λεπτομερειών Χρονικό διάστημα ανανέωσης προσωρινής μνήμης Χειροκίνητα 1 ώρα @@ -98,7 +98,7 @@ LCD PICO-8 Εμφάνιση κρυφών κατηγοριών - Κάλυψη Πανοράματος - Εμφάνιση εξωφύλλου σε λειτουργία τοπίου αν είναι μια ευρεία εικόνα + Κάλυψη Πανοράματος + Εμφάνιση εξωφύλλου σε λειτουργία τοπίου αν είναι μια ευρεία εικόνα Πανόραμα άνετο πλέγμα diff --git a/i18n-kmk/src/commonMain/moko-resources/es/strings.xml b/i18n-kmk/src/commonMain/moko-resources/es/strings.xml index cb9d2a459..3cdf662c2 100644 --- a/i18n-kmk/src/commonMain/moko-resources/es/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/es/strings.xml @@ -4,7 +4,7 @@ Alternar sólo NSFW Modo de selección masiva Preguntas frecuentes y guías - Página de detalles + Página de detalles Descargar el intervalo de renovación de caché Manual 1 hora @@ -98,7 +98,7 @@ LCD PICO-8 Mostrar categorías ocultas - Portada Panorama - Mostrar la portada en modo apaisado si es una imagen ancha + Portada Panorama + Mostrar la portada en modo apaisado si es una imagen ancha Cuadrícula panorámica cómoda diff --git a/i18n-kmk/src/commonMain/moko-resources/fi/strings.xml b/i18n-kmk/src/commonMain/moko-resources/fi/strings.xml index f7787b372..a740b7d15 100644 --- a/i18n-kmk/src/commonMain/moko-resources/fi/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/fi/strings.xml @@ -4,7 +4,7 @@ Vaihda vain NSFW Bulk valintatila UKK ja oppaat - Yksityiskohdat sivu + Yksityiskohdat sivu Lataa välimuistin uusimisväli Manuaalinen 1 tunti @@ -98,7 +98,7 @@ LCD PICO-8 Näytä piilotetut kategoriat - Panoraama Kansi - Näytä kansi vaakatilassa, jos se on leveä kuva + Panoraama Kansi + Näytä kansi vaakatilassa, jos se on leveä kuva Panorama mukava ruudukko diff --git a/i18n-kmk/src/commonMain/moko-resources/fil/strings.xml b/i18n-kmk/src/commonMain/moko-resources/fil/strings.xml index df483bb18..285a4b08f 100644 --- a/i18n-kmk/src/commonMain/moko-resources/fil/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/fil/strings.xml @@ -4,7 +4,7 @@ I-toggle ang NSFW lamang Pumili ng maramihan FAQ at mga Guide - Pahina ng mga detalye + Pahina ng mga detalye Tagal ng pagbago ng download cache Mano-mano 1 oras @@ -98,7 +98,7 @@ LCD PICO-8 Show hidden categories - Panorama Cover - Show cover in landscape mode if it\'s a wide image + Panorama Cover + Show cover in landscape mode if it\'s a wide image Panorama comfortable grid diff --git a/i18n-kmk/src/commonMain/moko-resources/fr/strings.xml b/i18n-kmk/src/commonMain/moko-resources/fr/strings.xml index 3a4c44413..611110dbb 100644 --- a/i18n-kmk/src/commonMain/moko-resources/fr/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/fr/strings.xml @@ -4,7 +4,7 @@ Activer/désactiver uniquement NSFW Mode de sélection en bloc FAQ et tutoriels - Page de détails + Page de détails Intervalle de renouvellement du cache de téléchargement Manuelle 1 heure @@ -98,7 +98,7 @@ Ecran LCD PICO-8 Afficher les catégories masquées - Couverture Panorama - Afficher la couverture en mode paysage s\'il s\'agit d\'une image large + Couverture Panorama + Afficher la couverture en mode paysage s\'il s\'agit d\'une image large Grille confortable Panorama diff --git a/i18n-kmk/src/commonMain/moko-resources/it/strings.xml b/i18n-kmk/src/commonMain/moko-resources/it/strings.xml index 90260264a..6e63aa46c 100644 --- a/i18n-kmk/src/commonMain/moko-resources/it/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/it/strings.xml @@ -4,7 +4,7 @@ Attiva/disattiva solo NSFW Modalità selezione Bulk FAQ e guide - Pagina dettagli + Pagina dettagli Intervallo di rinnovo download cache Manuale 1 ora @@ -98,7 +98,7 @@ LCD PICO-8 Mostra categorie nascoste - Copertina Panorama - Mostra la copertina in modalità orizzontale se è un\'immagine larga + Copertina Panorama + Mostra la copertina in modalità orizzontale se è un\'immagine larga Griglia confortevole Panorama diff --git a/i18n-kmk/src/commonMain/moko-resources/ja/strings.xml b/i18n-kmk/src/commonMain/moko-resources/ja/strings.xml index 6a45fd1c5..659b0b031 100644 --- a/i18n-kmk/src/commonMain/moko-resources/ja/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/ja/strings.xml @@ -4,7 +4,7 @@ NSFWのみ切り替え 一括選択モード FAQ とガイド - 詳細ページ + 詳細ページ キャッシュの更新間隔をダウンロード マニュアル 1 時間 @@ -98,7 +98,7 @@ LCD PICO-8 非表示のカテゴリを表示 - パノラマカバー - 横向き時にカバーを表示する + パノラマカバー + 横向き時にカバーを表示する パノラマ快適なグリッド diff --git a/i18n-kmk/src/commonMain/moko-resources/nl/strings.xml b/i18n-kmk/src/commonMain/moko-resources/nl/strings.xml index 938bd938a..23c325213 100644 --- a/i18n-kmk/src/commonMain/moko-resources/nl/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/nl/strings.xml @@ -4,7 +4,7 @@ Alleen NSFW in-/uitschakelen Bulk selectiemodus FAQ en handleidingen - Details pagina + Details pagina Download de cache vernieuwingsinterval Handleiding 1 uur @@ -98,7 +98,7 @@ LCD PICO-8 Toon verborgen categorieën - Panorama Omslag - Toon omslag in liggende modus als het breed beeld is + Panorama Omslag + Toon omslag in liggende modus als het breed beeld is Panorama comfortabel raster diff --git a/i18n-kmk/src/commonMain/moko-resources/pl/strings.xml b/i18n-kmk/src/commonMain/moko-resources/pl/strings.xml index 6b9a73de6..c5f7032b6 100644 --- a/i18n-kmk/src/commonMain/moko-resources/pl/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/pl/strings.xml @@ -4,7 +4,7 @@ Przełącz tylko NSFW Tryb masowego zaznaczenia FAQ i przewodniki - Strona szczegółów + Strona szczegółów Częstotliwość odnawiania pamięci podręcznej pobierania Ręcznie 1 godzina @@ -98,7 +98,7 @@ LCD PICO-8 Pokaż ukryte kategorie - Pokładka panorama - Pokaż okładkę w trybie poziomym, jeśli jest szerokim obrazem + Pokładka panorama + Pokaż okładkę w trybie poziomym, jeśli jest szerokim obrazem Siatka wygodna panorama diff --git a/i18n-kmk/src/commonMain/moko-resources/pt-rBR/strings.xml b/i18n-kmk/src/commonMain/moko-resources/pt-rBR/strings.xml index e737ee626..314f67584 100644 --- a/i18n-kmk/src/commonMain/moko-resources/pt-rBR/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/pt-rBR/strings.xml @@ -4,7 +4,7 @@ Ativar/desativar somente NSFW Modo de seleção em massa FAQ e Guias - Página de detalhes + Página de detalhes Baixar intervalo de renovação do cache Manualmente number@@0 horas @@ -98,7 +98,7 @@ LCD PICO-8 Mostrar categorias ocultas - Capa do Panorama - Mostrar capa no modo paisagem se for uma imagem larga + Capa do Panorama + Mostrar capa no modo paisagem se for uma imagem larga Grade de panorama confortável diff --git a/i18n-kmk/src/commonMain/moko-resources/pt/strings.xml b/i18n-kmk/src/commonMain/moko-resources/pt/strings.xml index d4ae96443..13e851c8a 100644 --- a/i18n-kmk/src/commonMain/moko-resources/pt/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/pt/strings.xml @@ -4,7 +4,7 @@ Ativar/desativar somente NSFW Modo de seleção em massa FAQ e Guias - Página de detalhes + Página de detalhes Baixar intervalo de renovação do cache Manualmente number@@0 horas @@ -98,7 +98,7 @@ LCD PICO-8 Mostrar categorias ocultas - Capa do Panorama - Mostrar capa no modo paisagem se for uma imagem larga + Capa do Panorama + Mostrar capa no modo paisagem se for uma imagem larga Grade de panorama confortável diff --git a/i18n-kmk/src/commonMain/moko-resources/ro/strings.xml b/i18n-kmk/src/commonMain/moko-resources/ro/strings.xml index e4c37f947..06354b492 100644 --- a/i18n-kmk/src/commonMain/moko-resources/ro/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/ro/strings.xml @@ -4,7 +4,7 @@ Comută numai NSFW Mod selecţie în masă Întrebări frecvente și ghiduri - Pagina de detalii + Pagina de detalii Interval reînnoire descărcare geocutie Manual 1 oră @@ -98,7 +98,7 @@ LCD PICO-8 Arată categoriile ascunse - Copertă panoramă - Arată coperta în modul peisaj dacă este o imagine largă + Copertă panoramă + Arată coperta în modul peisaj dacă este o imagine largă Rețea confortabilă a panoramei diff --git a/i18n-kmk/src/commonMain/moko-resources/ru/strings.xml b/i18n-kmk/src/commonMain/moko-resources/ru/strings.xml index 24a926c21..9cd93af82 100644 --- a/i18n-kmk/src/commonMain/moko-resources/ru/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/ru/strings.xml @@ -4,7 +4,7 @@ Переключить только NSFW Режим массового выбора FAQ и руководства - Детали + Детали Загрузить интервал обновления кэша Ручной 1 час @@ -98,7 +98,7 @@ LCD PICO-8 Показать скрытые категории - Покрытие Панорамы - Показывать обложку в альбомном режиме, если это широкое изображение + Покрытие Панорамы + Показывать обложку в альбомном режиме, если это широкое изображение Удобная сетка для панорамы diff --git a/i18n-kmk/src/commonMain/moko-resources/sv/strings.xml b/i18n-kmk/src/commonMain/moko-resources/sv/strings.xml index bc9d884ab..9613b172b 100644 --- a/i18n-kmk/src/commonMain/moko-resources/sv/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/sv/strings.xml @@ -4,7 +4,7 @@ Växla endast NSFW Bulk markeringsläge Vanliga frågor och guider - Detaljer sida + Detaljer sida Hämta cache förnyelseintervall Manuell 1 timme @@ -98,7 +98,7 @@ LCD PICO-8 Visa dolda kategorier - Panorama omslag - Visa omslaget i liggande läge om det är en bred bild + Panorama omslag + Visa omslaget i liggande läge om det är en bred bild Panorama bekvämt rutnät diff --git a/i18n-kmk/src/commonMain/moko-resources/tr/strings.xml b/i18n-kmk/src/commonMain/moko-resources/tr/strings.xml index 4237e1a83..39f854520 100644 --- a/i18n-kmk/src/commonMain/moko-resources/tr/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/tr/strings.xml @@ -4,7 +4,7 @@ Yalnız yetişkin içerikler Toplu seçim modu SSS ve Yönergeler - Detaylar sayfası + Detaylar sayfası İndirme önbelleği yenileme aralığı Manuel 1 saat @@ -98,7 +98,7 @@ LCD PICO-8 Gizli kategorileri göster - Panorama Cover - Show cover in landscape mode if it\'s a wide image + Panorama Cover + Show cover in landscape mode if it\'s a wide image Panorama comfortable grid diff --git a/i18n-kmk/src/commonMain/moko-resources/uk/strings.xml b/i18n-kmk/src/commonMain/moko-resources/uk/strings.xml index 6e07b1f98..a9ad3655f 100644 --- a/i18n-kmk/src/commonMain/moko-resources/uk/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/uk/strings.xml @@ -4,7 +4,7 @@ Лише NSFW Масовий режим вибору ЧаПи та керівництва - Сторінка подробиць + Сторінка подробиць Завантажити інтервал оновлення кешу Вручну 1 година @@ -98,7 +98,7 @@ LCD Піко-8 Показати приховані категорії - Кришка Панорами - Показувати обкладинку в альбомному режимі якщо це широке зображення + Кришка Панорами + Показувати обкладинку в альбомному режимі якщо це широке зображення Панорама diff --git a/i18n-kmk/src/commonMain/moko-resources/vi/strings.xml b/i18n-kmk/src/commonMain/moko-resources/vi/strings.xml index 321e08696..dcb450b08 100644 --- a/i18n-kmk/src/commonMain/moko-resources/vi/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/vi/strings.xml @@ -4,7 +4,7 @@ Chỉ 18+ Chế độ lựa chọn hàng loạt Hỏi đáp & Hướng dẫn - Trang chi tiết + Trang chi tiết Khoảng thời gian làm bộ nhớ tải xuống Thủ công 1 tiếng @@ -98,7 +98,7 @@ LCD PICO-8 Hiện các danh mục ẩn - Ảnh bìa toàn cảnh - Hiển thị ảnh bìa dạng ngang nếu là hình ảnh rộng + Ảnh bìa toàn cảnh + Hiển thị ảnh bìa dạng ngang nếu là hình ảnh rộng Lưới toàn cảnh diff --git a/i18n-kmk/src/commonMain/moko-resources/zh-rCN/strings.xml b/i18n-kmk/src/commonMain/moko-resources/zh-rCN/strings.xml index 8ab182e6e..27d0ddfe7 100644 --- a/i18n-kmk/src/commonMain/moko-resources/zh-rCN/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/zh-rCN/strings.xml @@ -4,7 +4,7 @@ 切换仅 NSFW 批量选择模式 常见问题和指南 - 详细信息页面 + 详细信息页面 下载缓存更新间隔 手动模式 1 小时 @@ -98,7 +98,7 @@ LCD PICO-8 显示隐藏分类 - 全景封面 - 横向显示宽屏封面 + 全景封面 + 横向显示宽屏封面 全景松散网格 diff --git a/i18n-kmk/src/commonMain/moko-resources/zh-rTW/strings.xml b/i18n-kmk/src/commonMain/moko-resources/zh-rTW/strings.xml index 514736acf..aa26ca82b 100644 --- a/i18n-kmk/src/commonMain/moko-resources/zh-rTW/strings.xml +++ b/i18n-kmk/src/commonMain/moko-resources/zh-rTW/strings.xml @@ -4,7 +4,7 @@ 切換僅 NSFW 批量選擇模式 常見問題和指南 - 詳情頁面 + 詳情頁面 下載快取更新間隔 手動 每 1 小時 @@ -98,7 +98,7 @@ 液晶顯示器 PICO-8 顯示隱藏的分類 - 全景封面 - 如果是寬影像,則以橫向模式顯示封面 + 全景封面 + 如果是寬影像,則以橫向模式顯示封面 全景舒適格