mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-23 12:38:33 +00:00
Ensure updateMessageRequestAcceptedState runs on main thread.
This commit is contained in:
committed by
Greyson Parrelli
parent
d6be14a95f
commit
9fa6d4774d
@@ -42,6 +42,7 @@ import android.widget.TextView.OnEditorActionListener
|
|||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.activity.OnBackPressedCallback
|
import androidx.activity.OnBackPressedCallback
|
||||||
import androidx.activity.result.ActivityResultLauncher
|
import androidx.activity.result.ActivityResultLauncher
|
||||||
|
import androidx.annotation.MainThread
|
||||||
import androidx.annotation.StringRes
|
import androidx.annotation.StringRes
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.appcompat.view.ActionMode
|
import androidx.appcompat.view.ActionMode
|
||||||
@@ -893,13 +894,13 @@ class ConversationFragment :
|
|||||||
.conversationThreadState
|
.conversationThreadState
|
||||||
.subscribeOn(Schedulers.io())
|
.subscribeOn(Schedulers.io())
|
||||||
.doOnSuccess { state ->
|
.doOnSuccess { state ->
|
||||||
updateMessageRequestAcceptedState(state.meta.messageRequestData.isMessageRequestAccepted)
|
|
||||||
SignalLocalMetrics.ConversationOpen.onDataLoaded()
|
SignalLocalMetrics.ConversationOpen.onDataLoaded()
|
||||||
conversationItemDecorations.setFirstUnreadCount(state.meta.unreadCount)
|
conversationItemDecorations.setFirstUnreadCount(state.meta.unreadCount)
|
||||||
colorizer.onGroupMembershipChanged(state.meta.groupMemberAcis)
|
colorizer.onGroupMembershipChanged(state.meta.groupMemberAcis)
|
||||||
}
|
}
|
||||||
.observeOn(AndroidSchedulers.mainThread())
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
.doOnSuccess { state ->
|
.doOnSuccess { state ->
|
||||||
|
updateMessageRequestAcceptedState(state.meta.messageRequestData.isMessageRequestAccepted)
|
||||||
moveToStartPosition(state.meta)
|
moveToStartPosition(state.meta)
|
||||||
}
|
}
|
||||||
.flatMapObservable { it.items.data }
|
.flatMapObservable { it.items.data }
|
||||||
@@ -1313,15 +1314,10 @@ class ConversationFragment :
|
|||||||
updateMessageRequestAcceptedState(!viewModel.hasMessageRequestState)
|
updateMessageRequestAcceptedState(!viewModel.hasMessageRequestState)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@MainThread
|
||||||
private fun updateMessageRequestAcceptedState(isMessageRequestAccepted: Boolean) {
|
private fun updateMessageRequestAcceptedState(isMessageRequestAccepted: Boolean) {
|
||||||
if (binding.conversationItemRecycler.isInLayout) {
|
|
||||||
binding.conversationItemRecycler.doAfterNextLayout {
|
|
||||||
adapter.setMessageRequestIsAccepted(isMessageRequestAccepted)
|
adapter.setMessageRequestIsAccepted(isMessageRequestAccepted)
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
adapter.setMessageRequestIsAccepted(isMessageRequestAccepted)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun invalidateOptionsMenu() {
|
private fun invalidateOptionsMenu() {
|
||||||
if (searchMenuItem?.isActionViewExpanded != true || !isSearchRequested) {
|
if (searchMenuItem?.isActionViewExpanded != true || !isSearchRequested) {
|
||||||
|
|||||||
Reference in New Issue
Block a user