Commit 78488ef
fix(CodeEditor.Rendering): gap-only cache build — eliminate stale-cache double-draw blur
Extend the gap-only base pass to the GlyphRun cache build (P1-CE-05).
Previously the cache was built with [full-base-token + syntax tokens]. When the
stale GlyphRun cache (fast-path B) was replayed via DrawGlyphRun, the base token's
GlyphRun was drawn first then overwritten by syntax tokens — opaque so no blur.
But the live first-render path (before cache built) used DrawGlyphRun twice on the
same pixels, which CAN cause ClearType subpixel artifacts on some DPI/GPU combos.
Now both paths are consistent: gap tokens (uncovered spans only) + syntax tokens.
Each screen character is drawn exactly once in both live and cached render paths.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 63c9724 commit 78488ef
1 file changed
Lines changed: 24 additions & 7 deletions
Lines changed: 24 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2902 | 2902 | | |
2903 | 2903 | | |
2904 | 2904 | | |
2905 | | - | |
| 2905 | + | |
| 2906 | + | |
2906 | 2907 | | |
2907 | 2908 | | |
2908 | | - | |
2909 | | - | |
2910 | | - | |
2911 | | - | |
2912 | | - | |
2913 | | - | |
| 2909 | + | |
| 2910 | + | |
| 2911 | + | |
| 2912 | + | |
| 2913 | + | |
| 2914 | + | |
| 2915 | + | |
| 2916 | + | |
| 2917 | + | |
| 2918 | + | |
| 2919 | + | |
| 2920 | + | |
| 2921 | + | |
| 2922 | + | |
| 2923 | + | |
| 2924 | + | |
| 2925 | + | |
| 2926 | + | |
| 2927 | + | |
| 2928 | + | |
| 2929 | + | |
| 2930 | + | |
2914 | 2931 | | |
2915 | 2932 | | |
2916 | 2933 | | |
| |||
0 commit comments