presentation/widgets/common/screen_shake
library
Classes
-
ScreenShake
-
Wraps child in a
Transform.translate driven by controller. Ticks a
Ticker only while a shake is actually decaying (stops once
controller.offsetAt(...) returns Offset.zero, not left running
forever). Respects NeonTheme.reducedMotion — when on, renders child
unchanged regardless of what controller does, same as the decorative
shader layers (ShaderTickerLayerState).
-
ScreenShakeController
-
Per-screen/per-widget-tree shake controller (IDEA-08) — a plain
ChangeNotifier the caller creates and owns (like a TextEditingController),
not a global GetxService singleton, since screen-shake state is local to
whatever's shaking (a board, a card, a whole screen), not app-wide.