Skip to content

perf(ui): eliminate per-frame ImageFilter.blur sigma animation in showAppDialog backdrop - #1429

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
issue/1341-dialog-backdrop-constant-blur
Oct 11, 2026
Merged

ZhuchkaTriplesix merged 1 commit into
devfrom
issue/1341-dialog-backdrop-constant-blur

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Closes #1341

Summary of Changes

  1. Constant blur sigma in _DialogBackdrop:
    • In showAppDialog's _DialogBackdrop, previously sigmaX: sigma * t and sigmaY: sigma * t were animated linearly over 24 frames during enter and exit. This forced Skia / Impeller rasterizers to rebuild and execute Gaussian blur shader pipelines on every single frame, causing raster spikes up to 18 ms.
    • Now uses a constant blur filter ImageFilter.blur(sigmaX: sigma, sigmaY: sigma) whenever t > 0 while smoothly fading the backdrop tint alpha Color(0xFF000000).withValues(alpha: tintAlpha * t).
  2. Tests:
    • Updated test/shared/app_dialog_test.dart to test constant blur sigma and fading tint alpha during transitions.

@github-actions github-actions Bot added frontend Theme parser epic label: frontend performance Theme parser epic label: performance motion Animation system, transitions, motion tokens ui User interface components and widgets P2 Medium priority / Parity & Refactoring labels Oct 11, 2026
@ZhuchkaTriplesix
ZhuchkaTriplesix merged commit 2764ba5 into dev Oct 11, 2026
13 checks passed
@ZhuchkaTriplesix
ZhuchkaTriplesix deleted the issue/1341-dialog-backdrop-constant-blur branch October 11, 2026 15:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

frontend Theme parser epic label: frontend motion Animation system, transitions, motion tokens P2 Medium priority / Parity & Refactoring performance Theme parser epic label: performance ui User interface components and widgets

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant