perf: remove BackdropFilter to reduce GPU overheating#88
Merged
Conversation
Remove 12 BackdropFilter usages that caused expensive per-frame gaussian blur operations, especially during timeline scrolling where multiple cards were simultaneously computing real-time blur. Replaced with higher-opacity semi-transparent containers that maintain similar visual appearance without the GPU cost. Kept BackdropFilter only in short-lived modal overlays (share_preview_dialog, demo_overlay) where performance impact is negligible. Files changed: - classic_card.dart (4 usages removed) - event_card.dart (1 usage removed) - snapshot_card.dart (1 usage removed) - system_task_card.dart (1 usage removed) - timeline_screen.dart (2 usages removed) - radial_menu.dart (1 usage removed) - agent_activity_widget.dart (1 usage removed) - insight_screen.dart (1 usage removed) - persona_chat_screen.dart (2 usages removed) Also removed unused dart:ui imports where ImageFilter was no longer needed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
移除 12 处 BackdropFilter 使用,解决滚动时 GPU 高负载导致的卡顿和发热问题。
Problem
BackdropFilter 在每一帧都执行像素级高斯模糊,是 GPU 密集型操作。在 Timeline 列表中,屏幕上同时可见 3-5 张带模糊的卡片时,GPU 负载成倍增加,导致严重发热和掉帧。
Solution
用更高不透明度的半透明容器替代 BackdropFilter,保持相近的视觉效果,GPU 开销接近零。
改动范围
保留的 BackdropFilter(2处)
share_preview_dialog.dart— 短暂弹窗demo_overlay.dart— 引导覆盖层,只出现一次Visual Impact
Testing
flutter analyze通过,无错误