Repository navigation
Keep the checklist popover when a row reparent's close finishes after reattach - #14830
Conversation
…reattach On the owned Mac minis (macOS 26.5.1, real display) the checklist popover that a sidebar row reparent closes is still animating closed when the row is back in its window. viewDidMoveToWindow saw isShown == true, decided the popover had survived, and cleared the detach flag; the close then completed as an external dismissal and wrote presented=false. The presenter now reports a close in progress (popoverWillClose until popoverDidClose), and the section clears the detach flag only after the reattach settles with the popover still shown and not closing. A popover that truly survives the reparent still treats a later click-away as a real dismissal. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Warning Review limit reachedNext included review available in 18 minutes. View limit detailsLimit details: You’ve used all 10 included reviews currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Repository: manaflow-ai/cmux/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (2)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
All contributors have signed the CLA ✍️ ✅ |
|
Merge receipt for |
e7f1c40 Keep the remote daemon's Claude restore preload out of TMPDIR (manaflow-ai#14851) 37187d5 perf(codex-wrapper): verify the cmux-cua client path with one stat process (manaflow-ai#14835) 680fea3 Pace unfocused terminal surfaces to about 30 FPS (manaflow-ai#14843) d90b0c8 fix: keep the checklist popover when its detach close finishes after reattach (manaflow-ai#14830) db5103d perf: skip no-op UserDefaults writes on every session autosave (manaflow-ai#14822) 788fe48 Route palette copy mode visibility and focus restore through the focused Dock (manaflow-ai#14848) edf54b1 Changelog: Unreleased entries for today's contributor merges; keep Unreleased current (manaflow-ai#14849) # Conflicts: # .github/workflows/build-ghosttykit.yml
A sidebar row reparent could close an open checklist popover and write
presented = falsefor the workspace, so the popover vanished instead of coming back.SidebarWorkspaceRowSuspensionTests/transientWindowReparentingPreservesChecklistPopover()catches this and has failed on main on every owned Mac mini (macOS 26.5.1, real display) since app-host shards started running there; it still passes on Blacksmithmacos-26(26.3).The popover animates. When the reparent detaches its anchor, the close it triggers is still animating when the row is back in the window, so
isShownis still true.viewDidMoveToWindowtook that to mean the popover survived and cleared the detach flag (#13988). When the close finished,onExternalDismisssaw no flag and treated it as a user click-away.Now:
SidebarRowSwiftUIPopoverPresenter.isClosingis true frompopoverWillClosetopopoverDidClose.Validation, focused
cmuxTests/SidebarWorkspaceRowSuspensionTestson the owned-mini lane (glaeda-std-xcode-26.6):1dfd0e640bon cmux7s:transientWindowReparentingPreservesChecklistPopover()fails as on main CI (presentationChanges == [false],tokenConsumptions == 1, no re-present in 5 s). https://github.com/manaflow-ai/cmux/actions/runs/3624742044067ac63c556on cmux14: all 9 tests in the suite pass; the reparent test passes in 0.65 s. https://github.com/manaflow-ai/cmux/actions/runs/36247398677Not run locally (this Mac is under the fork-CI-only rule). The PR's routed CI doesn't select this suite, since the diff doesn't touch
cmuxTests/.🤖 Generated with Claude Code