[vim/vim] GUI: hidden popup image is displayed and not erased (PR #20798)

3 views
Skip to first unread message

h_east

unread,
Jul 20, 2026, 2:16:33 PM (yesterday) Jul 20
to vim/vim, Subscribed
Problem:  In the GUI a popup image is drawn even when the popup is
          hidden, and hiding a popup leaves part of the image on the
          screen.
Solution: Skip hidden popups when repainting images after the cursor is
          undrawn or the window is exposed.  Redraw the area the image
          covered when the popup is hidden or closed, also for the GDI
          backend.

fixes: #20796


Note: Automated tests are impossible due to the GUI render path. Verified on actual Windows gVim using the issue's reproduction steps.


You can view, comment on, or merge this pull request online at:

  https://github.com/vim/vim/pull/20798

Commit Summary

  • 1d25610 GUI: hidden popup image is displayed and not erased

File Changes

(1 file)

Patch Links:


Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/20798@github.com>

Foxe Chen

unread,
9:14 AM (7 hours ago) 9:14 AM
to vim/vim, Subscribed
64-bitman left a comment (vim/vim#20798)

Unrelated note, the popup image feature can likely be tested on GTK4, since there are utilities designed for pixel perfect visual UI testing (gtk4-rendernode-tool). That will cover the common logic for GTK4 and Kitty graphics protocol. However sixel, GTK3, and GDI (which blit onto a surface) won't be covered. Not sure if GDI or GTK3 has any way to compare the drawing area with a premade image however...


Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/20798/c5034488821@github.com>

h_east

unread,
11:20 AM (5 hours ago) 11:20 AM
to vim/vim, Subscribed
h-east left a comment (vim/vim#20798)

Thanks. This bug is specific to MS-Windows; regarding the issue where the rendering in the area without rows wouldn't disappear upon calling popup_close(), I modified the code to promote the existing Cairo-specific function to a shared function used by both Cairo and GDI.
I don't think this affects GDK4.


Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/20798/c5035815287@github.com>

Christian Brabandt

unread,
11:58 AM (5 hours ago) 11:58 AM
to vim/vim, Subscribed
chrisbra left a comment (vim/vim#20798)

thanks


Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!

You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/20798/c5036195912@github.com>

Reply all
Reply to author
Forward
0 new messages