@@ -557,20 +557,22 @@ class ChatActivity :
557557
558558 private fun setPinnedMessageContent () {
559559 binding.pinnedMessageComposeView.setContent {
560- val uiState by chatViewModel.uiState.collectAsStateWithLifecycle()
561- val pinnedMessage = uiState.pinnedMessage
562- binding.pinnedMessageContainer.visibility = if (pinnedMessage != null ) View .VISIBLE else View .GONE
563- if (pinnedMessage != null ) {
564- PinnedMessageView (
565- message = pinnedMessage,
566- viewThemeUtils = viewThemeUtils,
567- currentConversation = uiState.conversation,
568- scrollToMessageWithIdWithOffset = { messageId ->
569- scrollToMessageById(messageId.toLong())
570- },
571- hidePinnedMessage = ::hidePinnedMessage,
572- unPinMessage = ::unPinMessage
573- )
560+ MaterialTheme (colorScheme = viewThemeUtils.getColorScheme(this @ChatActivity)) {
561+ val uiState by chatViewModel.uiState.collectAsStateWithLifecycle()
562+ val pinnedMessage = uiState.pinnedMessage
563+ binding.pinnedMessageContainer.visibility = if (pinnedMessage != null ) View .VISIBLE else View .GONE
564+ if (pinnedMessage != null ) {
565+ PinnedMessageView (
566+ message = pinnedMessage,
567+ viewThemeUtils = viewThemeUtils,
568+ currentConversation = uiState.conversation,
569+ scrollToMessageWithIdWithOffset = { messageId ->
570+ scrollToMessageById(messageId.toLong())
571+ },
572+ hidePinnedMessage = ::hidePinnedMessage,
573+ unPinMessage = ::unPinMessage
574+ )
575+ }
574576 }
575577 }
576578 }
@@ -591,41 +593,43 @@ class ChatActivity :
591593
592594 private fun setChatListContent () {
593595 binding.messagesListViewCompose.setContent {
594- val uiState by chatViewModel.uiState.collectAsStateWithLifecycle()
595- currentConversation = uiState.conversation
596+ MaterialTheme (colorScheme = viewThemeUtils.getColorScheme(this @ChatActivity)) {
597+ val uiState by chatViewModel.uiState.collectAsStateWithLifecycle()
598+ currentConversation = uiState.conversation
596599
597- binding.messagesListViewCompose.visibility = View .VISIBLE
600+ binding.messagesListViewCompose.visibility = View .VISIBLE
598601
599- val listState = rememberLazyListState()
600- SideEffect { chatListState = listState }
602+ val listState = rememberLazyListState()
603+ SideEffect { chatListState = listState }
601604
602- CompositionLocalProvider (
603- LocalViewThemeUtils provides viewThemeUtils,
604- LocalMessageUtils provides messageUtils,
605- LocalOpenGraphFetcher provides { url -> chatViewModel.fetchOpenGraph(url) }
606- ) {
607- val isOneToOneConversation = uiState.isOneToOneConversation
608- Log .d(TAG , " isOneToOneConversation=" + isOneToOneConversation)
609-
610- ChatView (
611- chatItems = uiState.items,
612- isOneToOneConversation = isOneToOneConversation,
613- conversationThreadId = conversationThreadId,
614- onLoadMore = { loadMoreMessagesCompose() },
615- advanceLocalLastReadMessageIfNeeded = { advanceLocalLastReadMessageIfNeeded(it) },
616- updateRemoteLastReadMessageIfNeeded = { updateRemoteLastReadMessageIfNeeded() },
617- onLongClick = { openMessageActionsDialog(it) },
618- onFileClick = { downloadAndOpenFile(it) },
619- onPollClick = { pollId, pollName -> openPollDialog(pollId, pollName) },
620- onVoicePlayPauseClick = { onVoicePlayPauseClickCompose(it) },
621- onVoiceSeek = { _, progress -> chatViewModel.seekToMediaPlayer(progress) },
622- onVoiceSpeedClick = { onVoiceSpeedClickCompose(it) },
623- onReactionClick = { messageId, emoji -> handleReactionClick(messageId, emoji) },
624- onReactionLongClick = { messageId -> openReactionsDialog(messageId) },
625- onOpenThreadClick = { messageId -> openThread(messageId.toLong()) },
626- onLoadQuotedMessageClick = { messageId -> onLoadQuotedMessage(messageId) },
627- listState = listState
628- )
605+ CompositionLocalProvider (
606+ LocalViewThemeUtils provides viewThemeUtils,
607+ LocalMessageUtils provides messageUtils,
608+ LocalOpenGraphFetcher provides { url -> chatViewModel.fetchOpenGraph(url) }
609+ ) {
610+ val isOneToOneConversation = uiState.isOneToOneConversation
611+ Log .d(TAG , " isOneToOneConversation=" + isOneToOneConversation)
612+
613+ ChatView (
614+ chatItems = uiState.items,
615+ isOneToOneConversation = isOneToOneConversation,
616+ conversationThreadId = conversationThreadId,
617+ onLoadMore = { loadMoreMessagesCompose() },
618+ advanceLocalLastReadMessageIfNeeded = { advanceLocalLastReadMessageIfNeeded(it) },
619+ updateRemoteLastReadMessageIfNeeded = { updateRemoteLastReadMessageIfNeeded() },
620+ onLongClick = { openMessageActionsDialog(it) },
621+ onFileClick = { downloadAndOpenFile(it) },
622+ onPollClick = { pollId, pollName -> openPollDialog(pollId, pollName) },
623+ onVoicePlayPauseClick = { onVoicePlayPauseClickCompose(it) },
624+ onVoiceSeek = { _, progress -> chatViewModel.seekToMediaPlayer(progress) },
625+ onVoiceSpeedClick = { onVoiceSpeedClickCompose(it) },
626+ onReactionClick = { messageId, emoji -> handleReactionClick(messageId, emoji) },
627+ onReactionLongClick = { messageId -> openReactionsDialog(messageId) },
628+ onOpenThreadClick = { messageId -> openThread(messageId.toLong()) },
629+ onLoadQuotedMessageClick = { messageId -> onLoadQuotedMessage(messageId) },
630+ listState = listState
631+ )
632+ }
629633 }
630634 }
631635 }
0 commit comments