From f723ba0e73afb8ff478f6dc362fd9645bc5a4777 Mon Sep 17 00:00:00 2001 From: MM20 <15646950+MM2-0@users.noreply.github.com> Date: Sun, 25 Jun 2023 14:25:47 +0200 Subject: [PATCH] Fix pager gesture triggers --- .../launcher2/ui/launcher/PagerScaffold.kt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/PagerScaffold.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/PagerScaffold.kt index 14095598..9d04b89d 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/PagerScaffold.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/PagerScaffold.kt @@ -267,7 +267,7 @@ fun PagerScaffold( val density = LocalDensity.current val maxSearchBarOffset = with(density) { 128.dp.toPx() } - val nestedScrollConnection = remember { + val pagerNestedScrollConnection = remember { object : NestedScrollConnection { override fun onPreScroll(available: Offset, source: NestedScrollSource): Offset { val drag = gestureManager.currentDrag @@ -305,6 +305,10 @@ fun PagerScaffold( } } + val innerNestedScrollConnection = remember { + object: NestedScrollConnection {} + } + LaunchedEffect(pagerState.currentPage) { searchBarOffset.animateTo(0f) } @@ -342,7 +346,9 @@ fun PagerScaffold( ) { HorizontalPager( - modifier = Modifier.fillMaxSize(), + modifier = Modifier + .fillMaxSize() + .nestedScroll(pagerNestedScrollConnection), beyondBoundsPageCount = 1, reverseLayout = reverse, state = pagerState, @@ -353,8 +359,7 @@ fun PagerScaffold( stiffness = Spring.StiffnessMediumLow, ), ), - // FIXME: Workaround https://issuetracker.google.com/issues/276738324 - pageNestedScrollConnection = nestedScrollConnection + pageNestedScrollConnection = innerNestedScrollConnection, ) { when (it) { 0 -> { @@ -568,8 +573,3 @@ fun PagerScaffold( onHomeButtonPress = handleBackOrHomeEvent, ) } - -private enum class Page { - Widgets, - Search -} \ No newline at end of file