Skip to content

Comments

perf: bypass React render cycle during panel resize drag#448

Merged
Dimillian merged 1 commit intoDimillian:mainfrom
joshhbk:fix/resize-performance
Feb 17, 2026
Merged

perf: bypass React render cycle during panel resize drag#448
Dimillian merged 1 commit intoDimillian:mainfrom
joshhbk:fix/resize-performance

Conversation

@joshhbk
Copy link
Contributor

@joshhbk joshhbk commented Feb 16, 2026

Summary

  • During resize drag, CSS variables are now written directly to the DOM instead of calling setState on every mousemove, eliminating hundreds of React re-renders per drag
  • Disables CSS grid transitions while dragging via an is-resizing class
  • Prevents text selection flash during drag via preventDefault on mousedown
  • React state and localStorage sync once on mouseup

Testing

  • Drag each resizer (sidebar, right panel, plan, terminal, debug, chat/diff split). Handle should track cursor with no visible lag
  • Release drag, reload page: confirm widths persist
  • Existing text selections should remain duringn resize

Before

before_compressed.mov

After

after_compressed.mov

@Dimillian
Copy link
Owner

@codex review

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 229453328f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@Dimillian Dimillian merged commit cc3ca1d into Dimillian:main Feb 17, 2026
9 checks passed
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