Singletonize GalleryListScene OnBackPressedCallback
This commit is contained in:
1 parent
a8b83871a4
commit
c7dc94b61b
1 file changed
+9
-11
@@ -116,7 +116,15 @@ import java.time.ZoneOffset
|
||||
|
||||
class GalleryListScene : SearchBarScene(), OnDragHandlerListener, SearchLayout.Helper,
|
||||
OnClickFabListener, OnExpandListener {
|
||||
private val mCallback = SearchStateOnBackPressedCallback()
|
||||
private val mCallback = object : OnBackPressedCallback(false) {
|
||||
override fun handleOnBackPressed() {
|
||||
when (mState) {
|
||||
STATE_NORMAL -> throw IllegalStateException("SearchStateOnBackPressedCallback should not be enabled on STATE_NORMAL")
|
||||
STATE_SIMPLE_SEARCH, STATE_SEARCH -> setState(STATE_NORMAL)
|
||||
STATE_SEARCH_SHOW_LIST -> setState(STATE_SEARCH)
|
||||
}
|
||||
}
|
||||
}
|
||||
private lateinit var mUrlBuilder: ListUrlBuilder
|
||||
private var _binding: SceneGalleryListBinding? = null
|
||||
private val binding get() = _binding!!
|
||||
@@ -1437,16 +1445,6 @@ class GalleryListScene : SearchBarScene(), OnDragHandlerListener, SearchLayout.H
|
||||
}
|
||||
}
|
||||
|
||||
internal inner class SearchStateOnBackPressedCallback : OnBackPressedCallback(false) {
|
||||
override fun handleOnBackPressed() {
|
||||
when (mState) {
|
||||
STATE_NORMAL -> throw IllegalStateException("SearchStateOnBackPressedCallback should not be enabled on STATE_NORMAL")
|
||||
STATE_SIMPLE_SEARCH, STATE_SEARCH -> setState(STATE_NORMAL)
|
||||
STATE_SEARCH_SHOW_LIST -> setState(STATE_SEARCH)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val KEY_ACTION = "action"
|
||||
const val ACTION_HOMEPAGE = "action_homepage"
|
||||
|
||||
Reference in new issue
Block a user