Skip to content

Improve desktop chat rendering and navigation performance#1995

Merged
crossle merged 28 commits into
mainfrom
perf/chat-performance-optimization
Jun 25, 2026
Merged

Improve desktop chat rendering and navigation performance#1995
crossle merged 28 commits into
mainfrom
perf/chat-performance-optimization

Conversation

@YeungKC

@YeungKC YeungKC commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Replace the remaining Bloc/Cubit chat state paths with lighter notifiers and local state storage.
  • Refactor desktop chat navigation so route mode, side panels, and conversation focus have clearer ownership.
  • Rework message window loading, jump handling, and scroll coordination for quote, pinned-message, latest, and repeated conversation selection.
  • Split oversized chat/message rendering files into smaller helpers for content, actions, rows, date overlays, and shared media lists.
  • Improve media image handling with a dedicated pipeline for cached images, avatar refresh, GIF frame normalization, and safer streamed downloads.
  • Stabilize message blink highlighting so it paints over bubble content without remounting message widgets or flickering mention names.

Validation

  • Ran the affected Flutter widget/unit tests locally.
  • Ran Dart analysis locally.
  • Fixed formatting and confirmed the PR checks are passing.

@YeungKC YeungKC marked this pull request as ready for review June 22, 2026 12:33
@YeungKC YeungKC requested review from boyan01 and crossle June 22, 2026 12:33
@YeungKC YeungKC changed the title Refactor desktop chat navigation and rendering Improve desktop chat rendering and navigation performance Jun 22, 2026
@crossle crossle merged commit 885104e into main Jun 25, 2026
3 checks passed
@crossle crossle deleted the perf/chat-performance-optimization branch June 25, 2026 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants