diff --git a/core/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt b/core/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt index 73b8a1b..fffa161 100644 --- a/core/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt +++ b/core/src/main/kotlin/plus/rua/project/ui/CalendarPager.kt @@ -77,7 +77,7 @@ fun CalendarPager( HorizontalPager( state = pagerState, - beyondViewportPageCount = 1, + beyondViewportPageCount = 0, flingBehavior = PagerDefaults.flingBehavior(state = pagerState), modifier = modifier ) { page -> diff --git a/core/src/main/kotlin/plus/rua/project/ui/YearGridView.kt b/core/src/main/kotlin/plus/rua/project/ui/YearGridView.kt index 6042dae..6abbcd8 100644 --- a/core/src/main/kotlin/plus/rua/project/ui/YearGridView.kt +++ b/core/src/main/kotlin/plus/rua/project/ui/YearGridView.kt @@ -167,12 +167,12 @@ fun YearGridView( ) { (0 until 3).forEach { col -> val month = row * 3 + col + 1 - val sharedKey = "month_grid_${year}_$month" + val isSelectedMonth = month == selectedMonth with(sharedTransitionScope) { MiniMonth( year = year, month = month, - isSelected = month == selectedMonth, + isSelected = isSelectedMonth, today = today, days = monthDays[month - 1], colors = colors, @@ -182,13 +182,19 @@ fun YearGridView( onClick = { onMonthClick(month) }, modifier = Modifier .weight(1f) - .sharedElement( - sharedContentState = rememberSharedContentState( - key = sharedKey - ), - animatedVisibilityScope = animatedVisibilityScope, - boundsTransform = { _, _ -> - tween(400, easing = FastOutSlowInEasing) + .then( + if (isSelectedMonth) { + Modifier.sharedElement( + sharedContentState = rememberSharedContentState( + key = "month_grid_${year}_$month" + ), + animatedVisibilityScope = animatedVisibilityScope, + boundsTransform = { _, _ -> + tween(400, easing = FastOutSlowInEasing) + } + ) + } else { + Modifier } ) )