Merge pull request #4645 from nextcloud/bugfix/4643/fixShimmerAndOfflineNoMessagesInfo

fix shimmer and "offlineNoMessages"-info handling
This commit is contained in:
Marcel Hibbe 2025-01-23 09:29:26 +00:00 committed by GitHub
commit 4c6c08be55
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 10 additions and 5 deletions

View File

@ -828,12 +828,15 @@ class ChatActivity :
// Handle UI on first load
cancelNotificationsForCurrentConversation()
binding.progressBar.visibility = View.GONE
binding.offline.root.visibility = View.GONE
binding.messagesListView.visibility = View.VISIBLE
collapseSystemMessages()
}
is ChatViewModel.ChatMessageUpdateState -> {
// unused atm
binding.progressBar.visibility = View.GONE
binding.offline.root.visibility = View.GONE
binding.messagesListView.visibility = View.VISIBLE
}
is ChatViewModel.ChatMessageErrorState -> {
@ -918,9 +921,9 @@ class ChatActivity :
chatViewModel.getGeneralUIFlow.onEach { key ->
when (key) {
NO_OFFLINE_MESSAGES_FOUND -> {
if (networkMonitor.isOnline.value.not()) {
binding.offline.root.visibility = View.VISIBLE
}
binding.progressBar.visibility = View.GONE
binding.messagesListView.visibility = View.GONE
binding.offline.root.visibility = View.VISIBLE
}
else -> {}

View File

@ -157,7 +157,9 @@ class OfflineFirstChatRepository @Inject constructor(
} else {
if (!weAlreadyHaveSomeOfflineMessages) {
Log.d(TAG, "An online request for newest 100 messages is made because offline chat is empty")
_generalUIFlow.emit(ChatActivity.NO_OFFLINE_MESSAGES_FOUND)
if (networkMonitor.isOnline.value.not()) {
_generalUIFlow.emit(ChatActivity.NO_OFFLINE_MESSAGES_FOUND)
}
} else {
Log.d(
TAG,