comparison src/w32term.c @ 92154:285c3036c037

(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.
author Jason Rumney <jasonr@gnu.org>
date Sun, 24 Feb 2008 15:44:59 +0000
parents 4d9fc08769fa
children ff7a3592c48b
comparison
equal deleted inserted replaced
92153:37d6263f580b 92154:285c3036c037
1844 #endif 1844 #endif
1845 if (FONT_HEIGHT (s->font) < s->height - 2 * box_line_width 1845 if (FONT_HEIGHT (s->font) < s->height - 2 * box_line_width
1846 || s->font_not_found_p 1846 || s->font_not_found_p
1847 || s->extends_to_end_of_line_p 1847 || s->extends_to_end_of_line_p
1848 || s->font->bdf 1848 || s->font->bdf
1849 || cleartype_active
1849 || force_p) 1850 || force_p)
1850 { 1851 {
1851 x_clear_glyph_string_rect (s, s->x, s->y + box_line_width, 1852 x_clear_glyph_string_rect (s, s->x, s->y + box_line_width,
1852 s->background_width, 1853 s->background_width,
1853 s->height - 2 * box_line_width); 1854 s->height - 2 * box_line_width);
1872 && s->first_glyph->left_box_line_p) 1873 && s->first_glyph->left_box_line_p)
1873 x = s->x + eabs (s->face->box_line_width); 1874 x = s->x + eabs (s->face->box_line_width);
1874 else 1875 else
1875 x = s->x; 1876 x = s->x;
1876 1877
1877 if (s->for_overlaps || (s->background_filled_p && s->hl != DRAW_CURSOR)) 1878 if (s->for_overlaps || (s->background_filled_p && s->hl != DRAW_CURSOR)
1879 || cleartype_active)
1878 SetBkMode (s->hdc, TRANSPARENT); 1880 SetBkMode (s->hdc, TRANSPARENT);
1879 else 1881 else
1880 SetBkMode (s->hdc, OPAQUE); 1882 SetBkMode (s->hdc, OPAQUE);
1881 1883
1882 SetTextColor (s->hdc, s->gc->foreground); 1884 SetTextColor (s->hdc, s->gc->foreground);