Update Material Dialogs

This commit is contained in:
arkon
2020-04-20 17:59:19 -04:00
parent f69f78db34
commit 932a47a8a7
27 changed files with 218 additions and 215 deletions
@@ -10,6 +10,7 @@ import android.view.ViewGroup
import androidx.appcompat.widget.SearchView
import androidx.recyclerview.widget.LinearLayoutManager
import com.afollestad.materialdialogs.MaterialDialog
import com.afollestad.materialdialogs.list.listItems
import com.bluelinelabs.conductor.ControllerChangeHandler
import com.bluelinelabs.conductor.ControllerChangeType
import com.bluelinelabs.conductor.RouterTransaction
@@ -121,18 +122,22 @@ class SourceController : NucleusController<SourceMainControllerBinding, SourcePr
val isPinned = item.header?.code?.equals(SourcePresenter.PINNED_KEY) ?: false
MaterialDialog.Builder(activity)
.title(item.source.name)
.items(
activity.getString(R.string.action_hide),
activity.getString(if (isPinned) R.string.action_unpin else R.string.action_pin)
)
.itemsCallback { _, _, which, _ ->
MaterialDialog(activity)
.title(text = item.source.name)
.listItems(
items = listOf(
activity.getString(R.string.action_hide),
activity.getString(if (isPinned) R.string.action_unpin else R.string.action_pin)
),
waitForPositiveButton = false
) { dialog, which, _ ->
when (which) {
0 -> hideCatalogue(item.source)
1 -> pinCatalogue(item.source, isPinned)
}
}.show()
dialog.dismiss()
}
.show()
}
private fun hideCatalogue(source: Source) {
@@ -14,6 +14,7 @@ import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.afollestad.materialdialogs.MaterialDialog
import com.afollestad.materialdialogs.list.listItems
import com.f2prateek.rx.preferences.Preference
import com.google.android.material.snackbar.Snackbar
import eu.davidea.flexibleadapter.FlexibleAdapter
@@ -498,9 +499,11 @@ open class BrowseSourceController(bundle: Bundle) :
val manga = (adapter?.getItem(position) as? SourceItem?)?.manga ?: return
if (manga.favorite) {
MaterialDialog.Builder(activity)
.items(activity.getString(R.string.remove_from_library))
.itemsCallback { _, _, which, _ ->
MaterialDialog(activity)
.listItems(
items = listOf(activity.getString(R.string.remove_from_library)),
waitForPositiveButton = false
) { _, which, _ ->
when (which) {
0 -> {
presenter.changeMangaFavorite(manga)
@@ -508,7 +511,8 @@ open class BrowseSourceController(bundle: Bundle) :
activity.toast(activity.getString(R.string.manga_removed_library))
}
}
}.show()
}
.show()
} else {
val categories = presenter.getCategories()
val defaultCategoryId = preferences.defaultCategory()