[vim/vim] Fix DirectWrite glyph pixel spillover leaving artifacts (PR #19711)

2 views
Skip to first unread message

mattn

unread,
Mar 16, 2026, 4:46:17 AM (2 days ago) Mar 16
to vim/vim, Subscribed

When using DirectWrite rendering, glyph pixels rendered by anti-aliasing can extend beyond cell boundaries. When adjacent cells are later redrawn without the overflowing cell being redrawn at the same time, the spillover pixels remain on screen as visual artifacts.

This is reproducible with plugins that rapidly create and destroy popup windows with opacity: 0 (e.g., cursor animation plugins), but the root cause is general to DirectWrite rendering.

GDI rendering does not exhibit this issue. The artifacts can be cleared with CTRL-L (full screen redraw).

The fix clips DirectWrite text rendering to the cell rectangle by setting ETO_CLIPPED, matching the existing behavior already used for cursor drawing.


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

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

Commit Summary

  • 5d8c3d1 Fix DirectWrite glyph pixel spillover leaving artifacts

File Changes

(1 file)

Patch Links:


Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/19711@github.com>

Christian Brabandt

unread,
Mar 17, 2026, 3:37:21 PM (13 hours ago) Mar 17
to vim/vim, Subscribed
chrisbra left a comment (vim/vim#19711)

thanks


Reply to this email directly, view it on GitHub.

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

Christian Brabandt

unread,
Mar 17, 2026, 3:45:08 PM (13 hours ago) Mar 17
to vim/vim, Subscribed

Closed #19711 via 6238ee9.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/19711/issue_event/23657112904@github.com>

Reply all
Reply to author
Forward
0 new messages