Migration now opens manga on long click

This commit is contained in:
inorichi 2018-01-15 20:22:07 +01:00
parent 233dbec4b3
commit b499b87f8c
4 changed files with 24 additions and 1 deletions

View file

@ -22,6 +22,7 @@ class CatalogueSearchCardAdapter(controller: CatalogueSearchController) :
*/
interface OnMangaClickListener {
fun onMangaClick(manga: Manga)
fun onMangaLongClick(manga: Manga)
}
}

View file

@ -19,6 +19,13 @@ class CatalogueSearchCardHolder(view: View, adapter: CatalogueSearchCardAdapter)
adapter.mangaClickListener.onMangaClick(item.manga)
}
}
itemView.setOnLongClickListener {
val item = adapter.getItem(adapterPosition)
if (item != null) {
adapter.mangaClickListener.onMangaLongClick(item.manga)
}
true
}
}
fun bind(manga: Manga) {

View file

@ -25,7 +25,7 @@ open class CatalogueSearchController(protected val initialQuery: String? = null)
/**
* Adapter containing search results grouped by lang.
*/
private var adapter: CatalogueSearchAdapter? = null
protected var adapter: CatalogueSearchAdapter? = null
/**
* Called when controller is initialized.
@ -73,6 +73,16 @@ open class CatalogueSearchController(protected val initialQuery: String? = null)
router.pushController(MangaController(manga, true).withFadeTransaction())
}
/**
* Called when manga in global search is long clicked.
*
* @param manga clicked item containing manga information.
*/
override fun onMangaLongClick(manga: Manga) {
// Delegate to single click by default.
onMangaClick(manga)
}
/**
* Adds items to the options menu.
*

View file

@ -59,6 +59,11 @@ class SearchController(
dialog.showDialog(router)
}
override fun onMangaLongClick(manga: Manga) {
// Call parent's default click listener
super.onMangaClick(manga)
}
class MigrationDialog : DialogController() {
private val preferences: PreferencesHelper by injectLazy()