|
@@ -53,6 +53,7 @@ import eu.kanade.tachiyomi.source.LocalSource
|
|
|
import eu.kanade.tachiyomi.source.Source
|
|
|
import eu.kanade.tachiyomi.source.SourceManager
|
|
|
import eu.kanade.tachiyomi.source.online.HttpSource
|
|
|
+import eu.kanade.tachiyomi.ui.base.controller.DialogController
|
|
|
import eu.kanade.tachiyomi.ui.base.controller.FabController
|
|
|
import eu.kanade.tachiyomi.ui.base.controller.NucleusController
|
|
|
import eu.kanade.tachiyomi.ui.base.controller.getMainAppBarHeight
|
|
@@ -177,7 +178,7 @@ class MangaController :
|
|
|
|
|
|
private var trackSheet: TrackSheet? = null
|
|
|
|
|
|
- private var dialog: MangaFullCoverDialog? = null
|
|
|
+ private var dialog: DialogController? = null
|
|
|
|
|
|
/**
|
|
|
* For [recyclerViewUpdatesToolbarTitleAlpha]
|
|
@@ -583,8 +584,7 @@ class MangaController :
|
|
|
}
|
|
|
}.toTypedArray()
|
|
|
|
|
|
- ChangeMangaCategoriesDialog(this, listOf(manga), categories, preselected)
|
|
|
- .showDialog(router)
|
|
|
+ showChangeCategoryDialog(manga, categories, preselected)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -637,8 +637,21 @@ class MangaController :
|
|
|
QuadStateTextView.State.UNCHECKED.ordinal
|
|
|
}
|
|
|
}.toTypedArray()
|
|
|
- ChangeMangaCategoriesDialog(this, listOf(manga), categories, preselected)
|
|
|
- .showDialog(router)
|
|
|
+ showChangeCategoryDialog(manga, categories, preselected)
|
|
|
+ }
|
|
|
+
|
|
|
+ private fun showChangeCategoryDialog(manga: Manga, categories: List<Category>, preselected: Array<Int>) {
|
|
|
+ if (dialog != null) return
|
|
|
+ dialog = ChangeMangaCategoriesDialog(this, listOf(manga), categories, preselected)
|
|
|
+ dialog?.addLifecycleListener(
|
|
|
+ object : LifecycleListener() {
|
|
|
+ override fun postDestroy(controller: Controller) {
|
|
|
+ super.postDestroy(controller)
|
|
|
+ dialog = null
|
|
|
+ }
|
|
|
+ }
|
|
|
+ )
|
|
|
+ dialog?.showDialog(router)
|
|
|
}
|
|
|
|
|
|
override fun updateCategoriesForMangas(mangas: List<Manga>, addCategories: List<Category>, removeCategories: List<Category>) {
|
|
@@ -822,7 +835,7 @@ class MangaController :
|
|
|
|
|
|
fun onSetCoverSuccess() {
|
|
|
mangaInfoAdapter?.notifyDataSetChanged()
|
|
|
- dialog?.setImage(manga)
|
|
|
+ (dialog as? MangaFullCoverDialog)?.setImage(manga)
|
|
|
activity?.toast(R.string.cover_updated)
|
|
|
}
|
|
|
|