diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt index 5476debb8b..3870075028 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt @@ -240,6 +240,7 @@ internal fun BoxScope.TimelineScrollHelper( val firstVisibleItemIndex by remember { derivedStateOf { lazyListState.firstVisibleItemIndex } } val isScrollFinished by remember { derivedStateOf { !lazyListState.isScrollInProgress } } val shouldAutoScrollToBottom by remember { derivedStateOf { lazyListState.firstVisibleItemIndex < 2 } } + val showScrollToBottomButton by remember { derivedStateOf { lazyListState.firstVisibleItemIndex > 0 } } LaunchedEffect(timelineItems, firstVisibleItemIndex) { if (!isScrollFinished) return@LaunchedEffect @@ -263,7 +264,7 @@ internal fun BoxScope.TimelineScrollHelper( modifier = Modifier .align(Alignment.BottomEnd) .padding(end = 16.dp, bottom = 12.dp), - visible = !shouldAutoScrollToBottom || LocalInspectionMode.current, + visible = showScrollToBottomButton || LocalInspectionMode.current, enter = scaleIn() + fadeIn(), exit = scaleOut() + fadeOut(), ) {