From 621b5d7c6d9ea172598c85c39a5ac50ed864f112 Mon Sep 17 00:00:00 2001 From: Sagar Date: Thu, 12 Jun 2025 20:33:10 +0530 Subject: [PATCH] Avoid multiple instances of MessageActivity. --- .../android/compose/sample/ui/MessagesActivity.kt | 11 +++++++++++ .../sample/ui/pinned/PinnedMessagesActivity.kt | 4 +++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/MessagesActivity.kt b/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/MessagesActivity.kt index 09a441e910e..1b0e765246d 100644 --- a/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/MessagesActivity.kt +++ b/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/MessagesActivity.kt @@ -125,6 +125,17 @@ class MessagesActivity : BaseConnectedActivity() { } } + override fun onNewIntent(intent: Intent) { + super.onNewIntent(intent) + val messageId = intent.getStringExtra(KEY_MESSAGE_ID) ?: return + val parentMessageId = intent.getStringExtra(KEY_PARENT_MESSAGE_ID) + + listViewModel.scrollToMessage( + messageId = messageId, + parentMessageId = parentMessageId + ) + } + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { diff --git a/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/pinned/PinnedMessagesActivity.kt b/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/pinned/PinnedMessagesActivity.kt index 46fb816d9ab..d9560b857ad 100644 --- a/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/pinned/PinnedMessagesActivity.kt +++ b/stream-chat-android-compose-sample/src/main/java/io/getstream/chat/android/compose/sample/ui/pinned/PinnedMessagesActivity.kt @@ -76,7 +76,9 @@ class PinnedMessagesActivity : BaseConnectedActivity() { channelId = message.cid, messageId = message.id, parentMessageId = message.parentId, - ) + ).apply { + flags = Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP + } startActivity(intent) } }