LoadingStrip's indeterminate sweep and ConnectionStatusDot's halo pulse ran withRepeat loops for the entire lifetime of the component, including while the app was backgrounded, the rendering screen was blurred, or the user had reduced motion enabled, pegging the GPU for work nobody sees. Add useAmbientAnimationsEnabled (app-active + screen-focus + reduce-motion, the pattern established in thread-work-log.tsx) and gate both loops on it. LoadingStrip shows a static strip while parked so "still loading" stays legible; the status dot keeps its colored dot.
Julius Marminge committed on 9/22/2026, 11:03:10 PMparentd7819c1
4 files changedLine totals unavailable