Fixed
Status Update
Comments
ap...@google.com <ap...@google.com> #2
Note to self: the ListView
implementation does this as well, let's start there to see how this can be achieved.
No update yet.
Note to self: the ListView
implementation does this as well, let's start there to see how this can be achieved.
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
.