Draw relief (if any) before
drawing glyph string.
This commit is contained in:
parent
3a990b67be
commit
858a55c1e1
2 changed files with 21 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2001-08-14 Andrew Innes <andrewi@gnu.org>
|
||||
|
||||
* w32term.c (x_draw_glyph_string): Draw relief (if any) before
|
||||
drawing glyph string.
|
||||
|
||||
2001-08-14 Eli Zaretskii <eliz@is.elta.co.il>
|
||||
|
||||
* s/hiuxwe2.h: New file, for the HITACHI SR2001/SR2201 series
|
||||
|
|
|
@ -4300,6 +4300,8 @@ static void
|
|||
x_draw_glyph_string (s)
|
||||
struct glyph_string *s;
|
||||
{
|
||||
int relief_drawn_p = 0;
|
||||
|
||||
/* If S draws into the background of its successor, draw the
|
||||
background of the successor first so that S can draw into it.
|
||||
This makes S->next use XDrawString instead of XDrawImageString. */
|
||||
|
@ -4315,6 +4317,19 @@ x_draw_glyph_string (s)
|
|||
x_set_glyph_string_gc (s);
|
||||
x_set_glyph_string_clipping (s);
|
||||
|
||||
/* Draw relief (if any) in advance for char/composition so that the
|
||||
glyph string can be drawn over it. */
|
||||
if (!s->for_overlaps_p
|
||||
&& s->face->box != FACE_NO_BOX
|
||||
&& (s->first_glyph->type == CHAR_GLYPH
|
||||
|| s->first_glyph->type == COMPOSITE_GLYPH))
|
||||
|
||||
{
|
||||
x_draw_glyph_string_background (s, 1);
|
||||
x_draw_glyph_string_box (s);
|
||||
relief_drawn_p = 1;
|
||||
}
|
||||
|
||||
switch (s->first_glyph->type)
|
||||
{
|
||||
case IMAGE_GLYPH:
|
||||
|
@ -4403,7 +4418,7 @@ x_draw_glyph_string (s)
|
|||
}
|
||||
|
||||
/* Draw relief. */
|
||||
if (s->face->box != FACE_NO_BOX)
|
||||
if (!relief_drawn_p && s->face->box != FACE_NO_BOX)
|
||||
x_draw_glyph_string_box (s);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue