From 2face66975f3da09dbc3e032c0cfeb67047c53f0 Mon Sep 17 00:00:00 2001 From: Jason Rumney Date: Sun, 24 Feb 2008 15:45:28 +0000 Subject: [PATCH] (x_draw_glyph_string_background): Clear the background manually when cleartype is in use. (x_draw_glyph_string_foreground): Draw text transparently when cleartype is in use. --- src/ChangeLog | 5 +++++ src/w32term.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index afddcca381b..dda7a11fdaa 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,10 @@ 2008-02-24 Jason Rumney + * w32term.c: (x_draw_glyph_string_background): Clear the background + manually when cleartype is in use. + (x_draw_glyph_string_foreground): Draw text transparently when + cleartype is in use. + * w32font.c (w32font_text_extents): Avoid getting HDC and selecting a font into it unless we have to. diff --git a/src/w32term.c b/src/w32term.c index 57455303ed5..25ecccfd6ba 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -1846,6 +1846,7 @@ x_draw_glyph_string_background (s, force_p) || s->font_not_found_p || s->extends_to_end_of_line_p || s->font->bdf + || cleartype_active || force_p) { x_clear_glyph_string_rect (s, s->x, s->y + box_line_width, @@ -1874,7 +1875,8 @@ x_draw_glyph_string_foreground (s) else x = s->x; - if (s->for_overlaps || (s->background_filled_p && s->hl != DRAW_CURSOR)) + if (s->for_overlaps || (s->background_filled_p && s->hl != DRAW_CURSOR) + || cleartype_active) SetBkMode (s->hdc, TRANSPARENT); else SetBkMode (s->hdc, OPAQUE); -- 2.39.5