feat(migration): add option to only show entries with new chapters (#1238)
This commit is contained in:
parent
155b03c176
commit
f7202e67cc
@ -74,6 +74,7 @@ class MigrationBottomSheetDialogState(private val onStartMigration: State<(extra
|
|||||||
|
|
||||||
binding.skipStep.isChecked = preferences.skipPreMigration().get()
|
binding.skipStep.isChecked = preferences.skipPreMigration().get()
|
||||||
binding.HideNotFoundManga.isChecked = preferences.hideNotFoundMigration().get()
|
binding.HideNotFoundManga.isChecked = preferences.hideNotFoundMigration().get()
|
||||||
|
binding.OnlyShowUpdates.isChecked = preferences.showOnlyUpdatesMigration().get()
|
||||||
binding.skipStep.setOnCheckedChangeListener { _, isChecked ->
|
binding.skipStep.setOnCheckedChangeListener { _, isChecked ->
|
||||||
if (isChecked) {
|
if (isChecked) {
|
||||||
binding.root.context.toast(
|
binding.root.context.toast(
|
||||||
@ -86,6 +87,7 @@ class MigrationBottomSheetDialogState(private val onStartMigration: State<(extra
|
|||||||
binding.migrateBtn.setOnClickListener {
|
binding.migrateBtn.setOnClickListener {
|
||||||
preferences.skipPreMigration().set(binding.skipStep.isChecked)
|
preferences.skipPreMigration().set(binding.skipStep.isChecked)
|
||||||
preferences.hideNotFoundMigration().set(binding.HideNotFoundManga.isChecked)
|
preferences.hideNotFoundMigration().set(binding.HideNotFoundManga.isChecked)
|
||||||
|
preferences.showOnlyUpdatesMigration().set(binding.OnlyShowUpdates.isChecked)
|
||||||
onStartMigration.value(
|
onStartMigration.value(
|
||||||
if (binding.useSmartSearch.isChecked && binding.extraSearchParamText.text.isNotBlank()) {
|
if (binding.useSmartSearch.isChecked && binding.extraSearchParamText.text.isNotBlank()) {
|
||||||
binding.extraSearchParamText.toString()
|
binding.extraSearchParamText.toString()
|
||||||
|
@ -94,6 +94,7 @@ class MigrationListScreenModel(
|
|||||||
val manualMigrations = MutableStateFlow(0)
|
val manualMigrations = MutableStateFlow(0)
|
||||||
|
|
||||||
val hideNotFound = preferences.hideNotFoundMigration().get()
|
val hideNotFound = preferences.hideNotFoundMigration().get()
|
||||||
|
val showOnlyUpdates = preferences.showOnlyUpdatesMigration().get()
|
||||||
|
|
||||||
val navigateOut = MutableSharedFlow<Unit>()
|
val navigateOut = MutableSharedFlow<Unit>()
|
||||||
|
|
||||||
@ -313,6 +314,12 @@ class MigrationListScreenModel(
|
|||||||
if (result == null && hideNotFound) {
|
if (result == null && hideNotFound) {
|
||||||
removeManga(manga)
|
removeManga(manga)
|
||||||
}
|
}
|
||||||
|
if (result != null && showOnlyUpdates &&
|
||||||
|
(getChapterInfo(result.id).latestChapter ?: 0.0) <= (manga.chapterInfo.latestChapter ?: 0.0)
|
||||||
|
) {
|
||||||
|
removeManga(manga)
|
||||||
|
}
|
||||||
|
|
||||||
sourceFinished()
|
sourceFinished()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -207,11 +207,19 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
android:layout_marginBottom="82dp"
|
|
||||||
android:paddingHorizontal="16.dp"
|
android:paddingHorizontal="16.dp"
|
||||||
android:paddingVertical="16dp"
|
android:paddingVertical="16dp"
|
||||||
android:text="@string/hide_not_found_entries" />
|
android:text="@string/hide_not_found_entries" />
|
||||||
|
|
||||||
|
<com.google.android.material.materialswitch.MaterialSwitch
|
||||||
|
android:id="@+id/Only_show_updates"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="8dp"
|
||||||
|
android:layout_marginBottom="82dp"
|
||||||
|
android:paddingHorizontal="16.dp"
|
||||||
|
android:paddingVertical="16dp"
|
||||||
|
android:text="@string/only_show_updated_entries" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
@ -23,6 +23,8 @@ class UnsortedPreferences(
|
|||||||
|
|
||||||
fun hideNotFoundMigration() = preferenceStore.getBoolean("hide_not_found_migration", false)
|
fun hideNotFoundMigration() = preferenceStore.getBoolean("hide_not_found_migration", false)
|
||||||
|
|
||||||
|
fun showOnlyUpdatesMigration() = preferenceStore.getBoolean("show_only_updates_migration", false)
|
||||||
|
|
||||||
fun isHentaiEnabled() = preferenceStore.getBoolean("eh_is_hentai_enabled", true)
|
fun isHentaiEnabled() = preferenceStore.getBoolean("eh_is_hentai_enabled", true)
|
||||||
|
|
||||||
fun enableExhentai() = preferenceStore.getBoolean(Preference.privateKey("enable_exhentai"), false)
|
fun enableExhentai() = preferenceStore.getBoolean(Preference.privateKey("enable_exhentai"), false)
|
||||||
|
@ -464,6 +464,7 @@
|
|||||||
<string name="use_first_source">Use first source with alternative</string>
|
<string name="use_first_source">Use first source with alternative</string>
|
||||||
<string name="skip_this_step_next_time">Skip this step next time</string>
|
<string name="skip_this_step_next_time">Skip this step next time</string>
|
||||||
<string name="hide_not_found_entries">Hide not found entries</string>
|
<string name="hide_not_found_entries">Hide not found entries</string>
|
||||||
|
<string name="only_show_updated_entries">Only show entries with new chapters</string>
|
||||||
<string name="search_parameter">Search parameter (e.g. language:english)</string>
|
<string name="search_parameter">Search parameter (e.g. language:english)</string>
|
||||||
<string name="latest_">Latest: %1$s</string>
|
<string name="latest_">Latest: %1$s</string>
|
||||||
<string name="migrating_to">migrating to</string>
|
<string name="migrating_to">migrating to</string>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user