Repository navigation
Let the wheel scroll settle before the chat resize measurement - #1505
Conversation
Frame steps scale with wall-clock time between forced ticks, so a fixed tick count can leave the scroll moving and the resize's frame shifts the reader by a few px. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
PR Summary by QodoWait for wheel scrolling to settle before testing chat resize anchoring
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can pick a display mode instead of tweaking every Display option by hand |
Closes #1488 — AI-3781
What & why
The test wheels up, forces 16 render ticks, then resizes and checks that the anchored row stayed put. Each smooth-scroll frame's step comes from the wall-clock time since the previous tick (clamped to 1/240–1/20 s). Back-to-back ticks on a fast runner can leave part of the scroll unfinished. When the runner then pauses before the resize, the resize's frame takes one large step of the reader's own scroll (≈−2 px), which is the reported error. The resize anchoring itself is exact (+960 px offset for +960 px of extent above). The test now ticks until
IsSmoothScrollingis false, capped at 500 frames.Where to look
No product change: the scroll that keeps moving after the resize is the reader's own wheel input, and that's correct behaviour.
Verification
od=+960, then a second scroll changeod=-1.945 ed=0whilesmooth=True.[Repeat(40)]withThread.Sleep(30)before the resize: unchanged test 41/41 fail (received 2/received 3); with the fix 41/41 pass.PreserveResizeAnchordisabled: 41/41 fail withreceived 960, so the test still catches a real regression.ChatTabViewSmokeTests: 62/62 pass; app and test projects full-rebuild with 0 warnings.🤖 Generated with Claude Code
Summary by CodeRabbit