fix(status): repaint the command-prompt over the status line - #9
Merged
Merged
Conversation
The rename-window and command-mode (`:`) prompt drew over the custom status-format, so the window list and modules bled through the prompt until it closed. tmux's message overlay fully replaces the line only with `fill` (which repaints the whole width) and without `align` (any alignment leaves the status visible on the uncovered side); themux previously set `align=centre` and no `fill`. When the status bar is transparent (@themux_status_background none) the overlay also needs an opaque background, so it uses @thm_mantle there. Release-As: 0.3.1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes the command-prompt (rename-window, command mode
:, confirm-before) visually mixing with the status line — the prompt drew over the customstatus-formatand the window list/modules bled through until it closed.Root cause
tmux's message overlay fully replaces the status line only with
fill(repaints the whole width) and noalign(any alignment leaves the status visible on the uncovered side). themux setmessage-style/message-command-stylewithalign=centreand nofill. With a transparent status bar (@themux_status_background none) the overlay also needs an opaque background.Reproduced by running the target tmux inside a pane of another tmux and driving it with
send-keys+capture-pane; tmux's own defaultmessage-command-styleusesfill(no align), which is why native rename is clean.Fix (
themux.conf)message-*-style:fill=$TMX_MESSAGE_BACKGROUNDinstead ofalign=centre.status_background none: the message overlay uses an opaque@thm_mantle(status bar stays transparent).Test plan
(rename-window) …, transparent status intact)message-style— the harness can't drive an interactive command-promptReleases as
0.3.1(patch) viaRelease-Asin the commit.