]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't use previous underline thickness or position if previous underline type is...
authorYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Fri, 4 Jan 2013 02:05:33 +0000 (11:05 +0900)
committerYAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Fri, 4 Jan 2013 02:05:33 +0000 (11:05 +0900)
src/ChangeLog
src/nsterm.m
src/w32term.c
src/xterm.c

index 8699dc12d9b3ecf1ebda05b9100126ebe876c636..9e315700e8acd2149f874e73464f95df67b91876 100644 (file)
@@ -5,6 +5,11 @@
        * xterm.c (x_draw_underwave): Make underwave look more triangular
        and also degrade gracefully for small fonts.  (Bug#13000)
 
+       * nsterm.m (ns_draw_text_decoration):
+       * w32term.c (x_draw_glyph_string):
+       * xterm.c (x_draw_glyph_string): Don't use previous underline
+       thickness and position if previous underline type is underwave.
+
 2012-12-31  Glenn Morris  <rgm@gnu.org>
 
        * keymap.c (Fkey_description): Doc fix.  (Bug#13323)
index fce43587b11dcb85e3b68a4455194e344e03a4f1..a57e744d3c282eee06a1721442cc5094f4a78ab2 100644 (file)
@@ -2634,6 +2634,7 @@ ns_draw_text_decoration (struct glyph_string *s, struct face *face,
 
           /* If the prev was underlined, match its appearance. */
           if (s->prev && s->prev->face->underline_p
+             && s->prev->face->underline_type == FACE_UNDER_LINE
               && s->prev->underline_thickness > 0)
             {
               thickness = s->prev->underline_thickness;
index 84afd8c300b172da745620e2d2ad2eb3bfd2b1d3..8b9414b9cfb04bfad20f70674a0b7b7e28538235 100644 (file)
@@ -2464,7 +2464,8 @@ x_draw_glyph_string (struct glyph_string *s)
               unsigned long thickness, position;
               int y;
 
-              if (s->prev && s->prev->face->underline_p)
+              if (s->prev && s->prev->face->underline_p
+                 && s->prev->face->underline_type == FACE_UNDER_LINE)
                 {
                   /* We use the same underline style as the previous one.  */
                   thickness = s->prev->underline_thickness;
index 32b19b5cffb6cf381e9c156fb079df01864b2842..fb407c876114540e1db7b322167db1e7697609c5 100644 (file)
@@ -2825,7 +2825,8 @@ x_draw_glyph_string (struct glyph_string *s)
               unsigned long thickness, position;
               int y;
 
-              if (s->prev && s->prev->face->underline_p)
+              if (s->prev && s->prev->face->underline_p
+                 && s->prev->face->underline_type == FACE_UNDER_LINE)
                 {
                   /* We use the same underline style as the previous one.  */
                   thickness = s->prev->underline_thickness;