From f9667ff2e41c7cf97703f367875d16d9f938b0c9 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 19 Feb 2024 15:03:05 +0100 Subject: [PATCH] Removed smooth scrolling to go to bottom --- .../ui/main/chat/fragment/ConversationFragment.kt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt b/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt index 61f5c5c49..200c3f186 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt @@ -206,7 +206,7 @@ class ConversationFragment : SlidingPaneChildFragment() { "$TAG [$itemCount] new events have been loaded, scrolling to first unread message" ) } - scrollToFirstUnreadMessageOrBottom(false) + scrollToFirstUnreadMessageOrBottom() } } @@ -508,7 +508,7 @@ class ConversationFragment : SlidingPaneChildFragment() { } binding.setScrollToBottomClickListener { - scrollToFirstUnreadMessageOrBottom(true) + scrollToFirstUnreadMessageOrBottom() } sendMessageViewModel.emojiToAddEvent.observe(viewLifecycleOwner) { @@ -760,7 +760,7 @@ class ConversationFragment : SlidingPaneChildFragment() { currentChatMessageModelForBottomSheet = null } - private fun scrollToFirstUnreadMessageOrBottom(smooth: Boolean) { + private fun scrollToFirstUnreadMessageOrBottom() { if (adapter.itemCount == 0) return val recyclerView = binding.eventsList @@ -776,10 +776,10 @@ class ConversationFragment : SlidingPaneChildFragment() { Log.i( "$TAG Scrolling to position $indexToScrollTo, first unread message is at $firstUnreadMessagePosition" ) - if (smooth) { - recyclerView.smoothScrollToPosition(indexToScrollTo) - } else { - recyclerView.scrollToPosition(indexToScrollTo) + recyclerView.scrollToPosition(indexToScrollTo) + + if (indexToScrollTo == adapter.itemCount - 1) { + viewModel.isUserScrollingUp.postValue(false) } }