Skip to content

fix: redraw status lines after closing or hiding a popup window#19830

Closed
mattn wants to merge 2 commits intovim:masterfrom
mattn:fix-popup-statusline-redraw
Closed

fix: redraw status lines after closing or hiding a popup window#19830
mattn wants to merge 2 commits intovim:masterfrom
mattn:fix-popup-statusline-redraw

Conversation

@mattn
Copy link
Copy Markdown
Member

@mattn mattn commented Mar 26, 2026

When a popup window overlapping a status line is closed or hidden, the status line was not redrawn, leaving ghost artifacts from the popup.

popup_free() and popup_hide() call redraw_all_later(UPD_NOT_VALID) which marks window contents for redraw but does not set w_redr_status. The diff-based path in may_update_popup_mask() that normally sets w_redr_status is skipped when redrawing_all_win is TRUE. Add status_redraw_all() calls to ensure status lines are properly redrawn.

mattn added 2 commits March 26, 2026 16:05
When a popup window overlapping a status line is closed or hidden,
the status line was not redrawn, leaving ghost artifacts from the popup.

popup_free() and popup_hide() call redraw_all_later(UPD_NOT_VALID) which
marks window contents for redraw but does not set w_redr_status. The
diff-based path in may_update_popup_mask() that normally sets w_redr_status
is skipped when redrawing_all_win is TRUE. Add status_redraw_all() calls
to ensure status lines are properly redrawn.
Test that closing a popup window overlapping a status line properly
redraws the status line without leaving ghost artifacts.
@chrisbra
Copy link
Copy Markdown
Member

thanks

@chrisbra chrisbra closed this in 575961c Mar 26, 2026
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