Fixed
Status Update
Comments
mg...@google.com <mg...@google.com> #2
Jeremy, is this still an issue? I think the problem was that you had two transitions targeting the same View for the same action (e.g. two Slide() transitions).
ap...@google.com <ap...@google.com> #3
I have a similar issue with plain AnimatorSet:
set.start()
set.pause()
set.setCurrentPlayTime(100)
set.setCurrentPlayTime(0)
set.setCurrentPlayTime(100)
set.resume()
doesn't play animation in resume().
na...@google.com <na...@google.com> #4
Should clarify that if I filter out setCurrentPlayTime(0)
(or replace it with setCurrentPlayTime(1)
) it works well.
Also even with setCurrentPlayTime(0)
, onAnimationEnd
is notified with correct delay (as if the animation has played).
Description
saveable
has built-in support for Coroutines'MutableStateFlow
, supporting the following use case:It does this by providing an overloaded function that handles
MutableStateFlow.value
and serializes it when needed.To help people migrate from
saveable
tosaved
, we want to supportMutableStateFlow
in our KotlinX serialization support.While working on getMutableStateFlow CL, I experimented with this idea and created a naive
KSerializer
implementation to handleMutableStateFlow
.Here’s what it could look like:
For serialization, we would use
(value as MutableStateFlow<T>).value
+valueSerializer
to serialize the content. Deserialization works in the opposite direction.Here’s a usage example:
However, calling this without the serializer would cause an exception.
Our variant should work like
saveable
: ifT
(the generic type insaved
) is serializable, it should work without needing the serializer.The goal is to find the best way to support
MutableStateFlow
insaved
.Related to b/378895074 .