From ab410ec0cf89f861f05c4a840ee90bfff604a610 Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Fri, 14 Jul 2023 12:59:44 -0300 Subject: [PATCH] CFV2 Message Request state adapter update. --- .../conversation/v2/ConversationAdapterV2.kt | 12 ++++++++++-- .../conversation/v2/ConversationFragment.kt | 2 ++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationAdapterV2.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationAdapterV2.kt index a060d4df9d..b21d393430 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationAdapterV2.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationAdapterV2.kt @@ -81,8 +81,7 @@ class ConversationAdapterV2( private val condensedMode: ConversationItemDisplayMode? = null - // TODO [cfv2] - override val isMessageRequestAccepted: Boolean = true + override var isMessageRequestAccepted: Boolean = false init { registerFactory(ThreadHeader::class.java, ::ThreadHeaderViewHolder, R.layout.conversation_item_thread_header) @@ -244,6 +243,15 @@ class ConversationAdapterV2( // todo [cody] implement } + fun onMessageRequestStateChanged(isMessageRequestAccepted: Boolean) { + val oldState = this.isMessageRequestAccepted + this.isMessageRequestAccepted = isMessageRequestAccepted + + if (oldState != isMessageRequestAccepted) { + notifyItemRangeChanged(0, itemCount) + } + } + fun clearSelection() { _selected.clear() } diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt index dd92b8ead4..220c2fd4e2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationFragment.kt @@ -1087,6 +1087,8 @@ class ConversationFragment : presentConversationTitle(recipient) presentChatColors(recipient.chatColors) invalidateOptionsMenu() + + adapter.onMessageRequestStateChanged(!viewModel.hasMessageRequestState) } private fun invalidateOptionsMenu() {