Parent
Part of #356 · Fluid perf audit F7 (P1)
Problem
UpdateAvailableBadge starts AnimationController..repeat() in initState even when showBadge is false and the build returns SizedBox.shrink — perpetual vsync work.
Where: lib/features/updater/update_available_badge.dart
Expected
- Start pulse only when badge visible; stop when hidden
- Honor Motion Off / reduced (no pulse or instant)
- Prefer QueryaMotion tokens over bare
1400ms (ties to F9)
Acceptance
Related
Parent
Part of #356 · Fluid perf audit F7 (P1)
Problem
UpdateAvailableBadgestartsAnimationController..repeat()ininitStateeven whenshowBadgeis false and the build returnsSizedBox.shrink— perpetual vsync work.Where:
lib/features/updater/update_available_badge.dartExpected
1400ms(ties to F9)Acceptance
Related