From 4e0d00d9700640abfc0a42f32a67bb6a14c4eb05 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 22 Apr 2025 17:27:02 +0200 Subject: [PATCH] Ensure that pinning an event makes the pinned messages banner appear (#4606) --- .../io/element/android/features/messages/impl/MessagesView.kt | 4 +++- .../messages/impl/pinned/banner/PinnedMessagesBannerView.kt | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt index 87134ac7d0..948b8c3cb3 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt @@ -363,7 +363,9 @@ private fun MessagesViewContent( }, content = { paddingValues -> Box(modifier = Modifier.padding(paddingValues)) { - val scrollBehavior = PinnedMessagesBannerViewDefaults.rememberExitOnScrollBehavior() + val scrollBehavior = PinnedMessagesBannerViewDefaults.rememberScrollBehavior( + pinnedMessagesCount = state.pinnedMessagesBannerState.pinnedMessagesCount(), + ) TimelineView( state = state.timelineState, timelineProtectionState = state.timelineProtectionState, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/pinned/banner/PinnedMessagesBannerView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/pinned/banner/PinnedMessagesBannerView.kt index dcbc0695b2..aef0848b1e 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/pinned/banner/PinnedMessagesBannerView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/pinned/banner/PinnedMessagesBannerView.kt @@ -265,7 +265,7 @@ internal interface PinnedMessagesBannerViewScrollBehavior { internal object PinnedMessagesBannerViewDefaults { @Composable - fun rememberExitOnScrollBehavior(): PinnedMessagesBannerViewScrollBehavior = remember { + fun rememberScrollBehavior(pinnedMessagesCount: Int): PinnedMessagesBannerViewScrollBehavior = remember(pinnedMessagesCount) { ExitOnScrollBehavior() } }