You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This may not be actionable but logging this just so we can track it and potentially chat about workarounds.
Issue
When animations are delayed they force flutter to re-render at 60fps even though nothing on screen is changing.
This is due to behavior built into Flutters Ticker object, which drives AnimationController, and flutter_animates implementation of delays which rely on a long-running AnimationController that incorporates the duration of the delay into the total duration of an animation.
Each time Ticker ticks it schedules a new frame to be rendered.
Reproduction
This can be reproduced with a repeating distractor like this, which will put the app into a state of constant endless re-rendering.
You can observe the app in a state of constant re-render here:
studio64_zlS9c46icl.mp4
Solution
One possible idea is to create a sub-class of Ticker that exposes a bool scheduleFrame param and can switch between a Timer based tick and a Sheduler based tick. Not sure how feasible this is, I can try and work on a proof of concept to prove viability, and then potentially we can request some tweaks to the Flutter SDK if required.
The text was updated successfully, but these errors were encountered:
This may not be actionable but logging this just so we can track it and potentially chat about workarounds.
Issue
When animations are delayed they force flutter to re-render at 60fps even though nothing on screen is changing.
This is due to behavior built into Flutters
Ticker
object, which drivesAnimationController
, andflutter_animate
s implementation of delays which rely on a long-runningAnimationController
that incorporates the duration of the delay into the total duration of an animation.Each time Ticker ticks it schedules a new frame to be rendered.
Reproduction
This can be reproduced with a repeating distractor like this, which will put the app into a state of constant endless re-rendering.
You can observe the app in a state of constant re-render here:
studio64_zlS9c46icl.mp4
Solution
One possible idea is to create a sub-class of Ticker that exposes a
bool scheduleFrame
param and can switch between a Timer based tick and a Sheduler based tick. Not sure how feasible this is, I can try and work on a proof of concept to prove viability, and then potentially we can request some tweaks to the Flutter SDK if required.The text was updated successfully, but these errors were encountered: