Prevent multiple clicks when accessing the viewer.

fork-5.53.8
Alex Hart 2022-04-06 13:22:19 -03:00 zatwierdzone przez Cody Henthorne
rodzic 6fb6092a6b
commit c271b9c2de
2 zmienionych plików z 17 dodań i 1 usunięć

Wyświetl plik

@ -55,6 +55,8 @@ class StoriesLandingFragment : DSLSettingsFragment(layoutId = R.layout.stories_l
private val tabsViewModel: ConversationListTabsViewModel by viewModels(ownerProducer = { requireActivity() }) private val tabsViewModel: ConversationListTabsViewModel by viewModels(ownerProducer = { requireActivity() })
private lateinit var adapter: DSLSettingsAdapter
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
setHasOptionsMenu(true) setHasOptionsMenu(true)
@ -65,7 +67,14 @@ class StoriesLandingFragment : DSLSettingsFragment(layoutId = R.layout.stories_l
inflater.inflate(R.menu.story_landing_menu, menu) inflater.inflate(R.menu.story_landing_menu, menu)
} }
override fun onResume() {
super.onResume()
adapter.notifyItemRangeChanged(0, adapter.itemCount)
}
override fun bindAdapter(adapter: DSLSettingsAdapter) { override fun bindAdapter(adapter: DSLSettingsAdapter) {
this.adapter = adapter
StoriesLandingItem.register(adapter) StoriesLandingItem.register(adapter)
MyStoriesItem.register(adapter) MyStoriesItem.register(adapter)
ExpandHeader.register(adapter) ExpandHeader.register(adapter)

Wyświetl plik

@ -214,7 +214,14 @@ object StoriesLandingItem {
} }
private fun setUpClickListeners(model: Model) { private fun setUpClickListeners(model: Model) {
itemView.setOnClickListener { model.onRowClick(model, storyPreview) } itemView.setOnClickListener {
if (!itemView.isClickable) {
return@setOnClickListener
}
itemView.isClickable = false
model.onRowClick(model, storyPreview)
}
if (model.data.storyRecipient.isMyStory) { if (model.data.storyRecipient.isMyStory) {
itemView.setOnLongClickListener(null) itemView.setOnLongClickListener(null)