diff options
author | YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 2014-03-21 19:14:10 +0900 |
---|---|---|
committer | YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | 2014-03-21 19:14:10 +0900 |
commit | fef27dc1ad8e5b3fe4d11bf0c7711151d4c8ada8 (patch) | |
tree | b298fb754fe8f8a1d4414d11254f4d4c61f8efa8 /src/w32term.c | |
parent | 21e18b30e2a15b726b9822cb7bb086792465a6d1 (diff) | |
download | emacs-fef27dc1ad8e5b3fe4d11bf0c7711151d4c8ada8.tar.gz |
Fix regression introduced by patch for Bug#10500.
* xterm.c (x_draw_image_relief): Respect Vtool_bar_button_margin.
* w32term.c (x_draw_image_relief): Likewise.
Diffstat (limited to 'src/w32term.c')
-rw-r--r-- | src/w32term.c | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/w32term.c b/src/w32term.c index ac8f9a2092d..15b502b7c1b 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -1892,6 +1892,7 @@ static void x_draw_image_relief (struct glyph_string *s) { int x1, y1, thick, raised_p, top_p, bot_p, left_p, right_p; + int extra_x, extra_y; RECT r; int x = s->x; int y = s->ybase - image_ascent (s->img, s->face, &s->slice); @@ -1925,16 +1926,31 @@ x_draw_image_relief (struct glyph_string *s) x1 = x + s->slice.width - 1; y1 = y + s->slice.height - 1; + + extra_x = extra_y = 0; + if (s->face->id == TOOL_BAR_FACE_ID) + { + if (CONSP (Vtool_bar_button_margin) + && INTEGERP (XCAR (Vtool_bar_button_margin)) + && INTEGERP (XCDR (Vtool_bar_button_margin))) + { + extra_x = XINT (XCAR (Vtool_bar_button_margin)); + extra_y = XINT (XCDR (Vtool_bar_button_margin)); + } + else if (INTEGERP (Vtool_bar_button_margin)) + extra_x = extra_y = XINT (Vtool_bar_button_margin); + } + top_p = bot_p = left_p = right_p = 0; if (s->slice.x == 0) - x -= thick, left_p = 1; + x -= thick + extra_x, left_p = 1; if (s->slice.y == 0) - y -= thick, top_p = 1; + y -= thick + extra_y, top_p = 1; if (s->slice.x + s->slice.width == s->img->width) - x1 += thick, right_p = 1; + x1 += thick + extra_x, right_p = 1; if (s->slice.y + s->slice.height == s->img->height) - y1 += thick, bot_p = 1; + y1 += thick + extra_y, bot_p = 1; x_setup_relief_colors (s); get_glyph_string_clip_rect (s, &r); |