From dd3bad858d3b4ba3a08b5f2379f813afafe1d00a Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Wed, 21 Dec 2022 16:33:51 -0500 Subject: [PATCH] Prevent scrolling when context menu is showing on story landing page. --- .../stories/landing/StoriesLandingFragment.kt | 6 ++++++ .../securesms/stories/landing/StoriesLandingItem.kt | 10 ++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt index 343d674e7..0112713f9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt @@ -279,6 +279,12 @@ class StoriesLandingFragment : DSLSettingsFragment(layoutId = R.layout.stories_l }, onAvatarClick = { cameraFab.performClick() + }, + onLockList = { + recyclerView?.suppressLayout(true) + }, + onUnlockList = { + recyclerView?.suppressLayout(false) } ) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt index 729a59600..f01ede7b4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt @@ -53,7 +53,9 @@ object StoriesLandingItem { val onGoToChat: (Model) -> Unit, val onSave: (Model) -> Unit, val onDeleteStory: (Model) -> Unit, - val onInfo: (Model, View) -> Unit + val onInfo: (Model, View) -> Unit, + val onLockList: () -> Unit, + val onUnlockList: () -> Unit ) : MappingModel { override fun areItemsTheSame(newItem: Model): Boolean { return data.storyRecipient.id == newItem.data.storyRecipient.id @@ -294,7 +296,11 @@ object StoriesLandingItem { private fun displayContext(model: Model) { itemView.isSelected = true - StoryContextMenu.show(context, itemView, storyPreview, model) { itemView.isSelected = false } + model.onLockList() + StoryContextMenu.show(context, itemView, storyPreview, model) { + itemView.isSelected = false + model.onUnlockList() + } } private fun clearGlide() {