bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: underline color of non-ASCII chars


From: Gerd Moellmann
Subject: Re: underline color of non-ASCII chars
Date: 31 Oct 2001 12:14:50 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1.50

Kenichi Handa <handa@m17n.org> writes:

> The color of underline is overridden by a foregournd color for
> non-ASCII characters.

Thanks, Kenichi.  This should fix it:

Index: dispextern.h
===================================================================
RCS file: /cvsroot/emacs/emacs/src/dispextern.h,v
retrieving revision 1.115
retrieving revision 1.116
diff -c -r1.115 -r1.116
*** dispextern.h        2001/10/31 11:02:19     1.115
--- dispextern.h        2001/10/31 11:10:50     1.116
***************
*** 1313,1318 ****
--- 1313,1323 ----
    unsigned tty_reverse_p : 1;
    unsigned tty_blinking_p : 1;
  
+   /* 1 means that colors of this face may not be freed because they
+      have been copied bitwise from a base face (see
+      realize_x_face).  */
+   unsigned colors_copied_bitwise_p : 1;
+ 
    /* Next and previous face in hash collision list of face cache.  */
    struct face *next, *prev;
  
Index: xfaces.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xfaces.c,v
retrieving revision 1.237
retrieving revision 1.238
diff -c -r1.237 -r1.238
*** xfaces.c    2001/10/31 01:52:59     1.237
--- xfaces.c    2001/10/31 11:10:25     1.238
***************
*** 1664,1669 ****
--- 1664,1672 ----
       struct face *face;
  {
  #ifdef HAVE_X_WINDOWS
+   if (face->colors_copied_bitwise_p)
+     return;
+ 
    BLOCK_INPUT;
  
    if (!face->foreground_defaulted_p)
***************
*** 6350,6361 ****
        face->gc = 0;
  
        /* Don't try to free the colors copied bitwise from BASE_FACE.  */
!       face->foreground_defaulted_p = 1;
!       face->background_defaulted_p = 1;
!       face->underline_defaulted_p = 1;
!       face->overline_color_defaulted_p = 1;
!       face->strike_through_color_defaulted_p = 1;
!       face->box_color_defaulted_p = 1;
  
        /* to force realize_face to load font */
        face->font = NULL;
--- 6353,6359 ----
        face->gc = 0;
  
        /* Don't try to free the colors copied bitwise from BASE_FACE.  */
!       face->colors_copied_bitwise_p = 1;
  
        /* to force realize_face to load font */
        face->font = NULL;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]