disableAnimations property
Whether the platform is requesting that animations be disabled or reduced as much as possible.
This corresponds to Android's "Remove animations" accessibility setting.
On iOS, reduced motion is exposed separately via dart:ui.AccessibilityFeatures.reduceMotion and does not set this flag.
This value is read directly from the engine via SemanticsBinding.disableAnimations. As a result, it is used by framework-level animation APIs such as AnimationController and cannot be overridden using MediaQuery.
Manually overriding this value in a MediaQuery widget will not affect framework animations (for example those driven by AnimationController). However, it can still be useful for testing or for custom widgets that explicitly read MediaQueryData.disableAnimations.
When implementing custom explicit animations, you should check this property and adjust behavior accordingly (for example, by reducing duration or skipping non-essential animations when it is true).
See also:
- AnimationController, which adjusts its playback behavior based on this setting.
- AnimationBehavior, which defines how animations behave when this setting is active.
- dart:ui.AccessibilityFeatures.disableAnimations, the underlying primitive flag provided by the platform.
- dart:ui.PlatformDispatcher.accessibilityFeatures, where the setting originates.
Implementation
final bool disableAnimations;