Fixed
Status Update
Comments
ap...@google.com <ap...@google.com> #2
A couple of questions:
1. Have you saw crash in real device or only in simulators?
2. Do you use dynamic feature for language ID?
1. Have you saw crash in real device or only in simulators?
2. Do you use dynamic feature for language ID?
Description
Coroutine scopes derived from a composition using the
rememberCoroutineScope()
andlaunchInComposition
APIs should have theRecomposer
'sMonotonicFrameClock
in theircoroutineContext
s. The absence of this causes jank in animations performed using thewithFrameNanos
API family as ordering of frame operations with regard to the recomposer loop are not guaranteed. This bug was masked by theCompositionCoroutineScope
receiver used bylaunchInComposition
implementing the frame clock interface and providing the correct one through that side channel.Install the correct frame clock into the
coroutineContext
and removeCompositionCoroutineScope
's interface implementation ofMonotonicFrameClock
.