Fixed
Status Update
Comments
il...@google.com <il...@google.com> #2
I was able to repro locally using the snippet in #1. The slide should never be applied to the content for state == 0, i.e. the green box.
Will take a look. Thanks for the repro steps, Jeremy.
kr...@gmail.com <kr...@gmail.com> #3
I'm having an issue with Compose navigation-animation which might be caused by this.
I have two screens: List and Details.
List screen uses default transitions.
Details screen uses the following transitions:
enterTransition = {
slideIntoContainer(
AnimatedContentScope.SlideDirection.Up,
animationSpec = tween(400)
)
},
popExitTransition = {
slideOutOfContainer(
AnimatedContentScope.SlideDirection.Down,
animationSpec = tween(200)
)
},
The video is showing the bug vs expected. It's hard to describe: after clicking the back button before the transition to the Details screen was completed, the List screen moves up a little.
il...@google.com <il...@google.com> #4
Project: platform/frameworks/support
Branch: androidx-main
commit 7e3b52b20e73c397019f474ab15eb8ea64a872d3
Author: Doris Liu <tianliu@google.com>
Date: Thu Sep 29 18:06:42 2022
Fix incorrect interruption animation in AnimatedContent
Bug: 238662479
Test: included
Change-Id: I86bb98800070f4584e30a1d0a4edec274b0c7e5c
A compose/animation/animation/integration-tests/animation-demos/src/main/java/androidx/compose/animation/demos/visualinspection/AnimatedContentWithInterruptions.kt
M compose/animation/animation/src/androidAndroidTest/kotlin/androidx/compose/animation/AnimatedContentTest.kt
M compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/EnterExitTransition.kt
M compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/AnimatedContent.kt
M compose/animation/animation/integration-tests/animation-demos/src/main/java/androidx/compose/animation/demos/AnimationDemos.kt
https://android-review.googlesource.com/2239235
Branch: androidx-main
commit 7e3b52b20e73c397019f474ab15eb8ea64a872d3
Author: Doris Liu <tianliu@google.com>
Date: Thu Sep 29 18:06:42 2022
Fix incorrect interruption animation in AnimatedContent
Bug: 238662479
Test: included
Change-Id: I86bb98800070f4584e30a1d0a4edec274b0c7e5c
A compose/animation/animation/integration-tests/animation-demos/src/main/java/androidx/compose/animation/demos/visualinspection/AnimatedContentWithInterruptions.kt
M compose/animation/animation/src/androidAndroidTest/kotlin/androidx/compose/animation/AnimatedContentTest.kt
M compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/EnterExitTransition.kt
M compose/animation/animation/src/commonMain/kotlin/androidx/compose/animation/AnimatedContent.kt
M compose/animation/animation/integration-tests/animation-demos/src/main/java/androidx/compose/animation/demos/AnimationDemos.kt
il...@google.com <il...@google.com>
il...@google.com <il...@google.com> #5
The following release(s) address this bug:
androidx.compose.animation:animation:1.4.0-alpha01
Description
Version used: 1.0.0-alpha06
Devices/Android versions reproduced on: Android 8.1.0, Samsung Galaxy J5 (I don't think it's device related)
Navigation library doesn't handle deep links properly when there are 2 deep links registered and the second one is an "extension" of the previous one. Let me give a simplified example to make it more clear:
<fragment android:name="com.example.EventFragment">
<argument
android:name="eventId"
app:argType="string" />
<action
android:id="@+id/exhibitorDetails"
app:destination="@id/exhibitorDetails" />
<deepLink app:uri="example://events/{eventId}" />
</fragment>
<activity android:id="@+id/exhibitorDetails"
android:name="com.example.ExhibitorsActivity">
<!-- I know, not a single Activity app. But that's the case. -->
<argument
android:name="exhibitorId"
app:argType="string" />
<deepLink app:uri="example://events/{eventId}/exhibitors/{exhibitorId}" />
</activity>
When I use a link: example://events/event123/exhibitors/exhibitor123 I expect navigation library to navigate to an ExhibitorsActivity. Instead, it navigates to EventFragment. Furthermore, an eventId passed to a fragment is invalid, in this case, it's: "event123/exhibitors/exhibitor123".
I believe it's a bug of regex: in my example, passed link matches both regexes: example://events/{eventId} and example://events/{eventId}/exhibitors/{exhibitorId}.