mirror of
https://github.com/mihonapp/mihon.git
synced 2025-11-15 13:37:29 +01:00
Refactor duplicate chapter number formatters
This commit is contained in:
@@ -71,7 +71,7 @@ class MangaScreen(
|
||||
val context = LocalContext.current
|
||||
val haptic = LocalHapticFeedback.current
|
||||
val scope = rememberCoroutineScope()
|
||||
val screenModel = rememberScreenModel { MangaInfoScreenModel(context, mangaId, fromSource) }
|
||||
val screenModel = rememberScreenModel { MangaScreenModel(context, mangaId, fromSource) }
|
||||
|
||||
val state by screenModel.state.collectAsState()
|
||||
|
||||
@@ -136,7 +136,7 @@ class MangaScreen(
|
||||
val onDismissRequest = { screenModel.dismissDialog() }
|
||||
when (val dialog = successState.dialog) {
|
||||
null -> {}
|
||||
is MangaInfoScreenModel.Dialog.ChangeCategory -> {
|
||||
is MangaScreenModel.Dialog.ChangeCategory -> {
|
||||
ChangeCategoryDialog(
|
||||
initialSelection = dialog.initialSelection,
|
||||
onDismissRequest = onDismissRequest,
|
||||
@@ -146,7 +146,7 @@ class MangaScreen(
|
||||
},
|
||||
)
|
||||
}
|
||||
is MangaInfoScreenModel.Dialog.DeleteChapters -> {
|
||||
is MangaScreenModel.Dialog.DeleteChapters -> {
|
||||
DeleteChaptersDialog(
|
||||
onDismissRequest = onDismissRequest,
|
||||
onConfirm = {
|
||||
@@ -155,12 +155,12 @@ class MangaScreen(
|
||||
},
|
||||
)
|
||||
}
|
||||
is MangaInfoScreenModel.Dialog.DuplicateManga -> DuplicateMangaDialog(
|
||||
is MangaScreenModel.Dialog.DuplicateManga -> DuplicateMangaDialog(
|
||||
onDismissRequest = onDismissRequest,
|
||||
onConfirm = { screenModel.toggleFavorite(onRemoved = {}, checkDuplicate = false) },
|
||||
onOpenManga = { navigator.push(MangaScreen(dialog.duplicate.id)) },
|
||||
)
|
||||
MangaInfoScreenModel.Dialog.SettingsSheet -> ChapterSettingsDialog(
|
||||
MangaScreenModel.Dialog.SettingsSheet -> ChapterSettingsDialog(
|
||||
onDismissRequest = onDismissRequest,
|
||||
manga = successState.manga,
|
||||
onDownloadFilterChanged = screenModel::setDownloadedFilter,
|
||||
@@ -170,7 +170,7 @@ class MangaScreen(
|
||||
onDisplayModeChanged = screenModel::setDisplayMode,
|
||||
onSetAsDefault = screenModel::setCurrentSettingsAsDefault,
|
||||
)
|
||||
MangaInfoScreenModel.Dialog.TrackSheet -> {
|
||||
MangaScreenModel.Dialog.TrackSheet -> {
|
||||
NavigatorAdaptiveSheet(
|
||||
screen = TrackInfoDialogHomeScreen(
|
||||
mangaId = successState.manga.id,
|
||||
@@ -181,7 +181,7 @@ class MangaScreen(
|
||||
onDismissRequest = onDismissRequest,
|
||||
)
|
||||
}
|
||||
MangaInfoScreenModel.Dialog.FullCover -> {
|
||||
MangaScreenModel.Dialog.FullCover -> {
|
||||
val sm = rememberScreenModel { MangaCoverScreenModel(successState.manga.id) }
|
||||
val manga by sm.state.collectAsState()
|
||||
if (manga != null) {
|
||||
|
||||
@@ -74,10 +74,8 @@ import tachiyomi.domain.track.interactor.GetTracks
|
||||
import tachiyomi.source.local.isLocal
|
||||
import uy.kohesive.injekt.Injekt
|
||||
import uy.kohesive.injekt.api.get
|
||||
import java.text.DecimalFormat
|
||||
import java.text.DecimalFormatSymbols
|
||||
|
||||
class MangaInfoScreenModel(
|
||||
class MangaScreenModel(
|
||||
val context: Context,
|
||||
val mangaId: Long,
|
||||
private val isFromSource: Boolean,
|
||||
@@ -984,7 +982,7 @@ sealed class MangaScreenState {
|
||||
val chapters: List<ChapterItem>,
|
||||
val trackItems: List<TrackItem> = emptyList(),
|
||||
val isRefreshingData: Boolean = false,
|
||||
val dialog: MangaInfoScreenModel.Dialog? = null,
|
||||
val dialog: MangaScreenModel.Dialog? = null,
|
||||
val hasPromptedToAddBefore: Boolean = false,
|
||||
) : MangaScreenState() {
|
||||
|
||||
@@ -1025,9 +1023,3 @@ data class ChapterItem(
|
||||
) {
|
||||
val isDownloaded = downloadState == Download.State.DOWNLOADED
|
||||
}
|
||||
|
||||
val chapterDecimalFormat = DecimalFormat(
|
||||
"#.###",
|
||||
DecimalFormatSymbols()
|
||||
.apply { decimalSeparator = '.' },
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user