bug: new-pane visibly flashes through an intermediate split before relayout #100
Labels
No labels
breaking-change
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
skip-release-notes
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
barrettruth/tmux-mosaic#100
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Prerequisites
tmux version
Operating system
NixOS 26.05
Description
Reproduced on current
main(9257228).Explicit
new-panecurrently creates the pane with a generic tmux split first, then normalizes pane order, then reapplies the active layout. When the raw split geometry does not match the final semantic insertion slot, the user sees a visible transient flash/jump.The clearest repro is
master-stackwith a single pane:new-paneThis looks like a repo-wide behavior of the current
new-panepipeline, not just amaster-stackquirk. All current layouts wire_layout_new_pane()to the shared append helper, so the path today is effectively:tmux split-windowSo the visible glitch depends on how far the raw split is from the final layout, but the underlying non-atomic pipeline is universal.
This is especially obvious when:
master-stackcan issue more than one tmux layout mutation)Expected
new-paneshould be created directly in the final or closest-final semantic slot for the active layout, or at minimum avoid the obvious wrong-axis/wrong-side transient on common cases.Steps to reproduce
@mosaic-layouttomaster-stack.run-shell -b \"#{E:@mosaic-exec} new-pane\"(or bind it to a key).Minimal tmux config
Window layout snapshot
Additional context
This appears broader than the one-pane
master-stackrepro:promotelikely shares the same general class of issue because it also mutates pane order and then relayoutsSo this seems worth tracking as a dedicated visual/creation-path bug rather than treating it as a layout-specific oddity.