(struct it): Add face_before_selective_p.
authorGerd Moellmann <gerd@gnu.org>
Tue, 5 Dec 2000 21:36:18 +0000 (21:36 +0000)
committerGerd Moellmann <gerd@gnu.org>
Tue, 5 Dec 2000 21:36:18 +0000 (21:36 +0000)
src/ChangeLog
src/dispextern.h

index 48d3a88..93022a9 100644 (file)
 
 2000-12-05  Gerd Moellmann  <gerd@gnu.org>
 
+       * xdisp.c (next_element_from_ellipsis): Save face before selective
+       display in saved_face_id, and set face_before_selective_p.
+       (reseat_1): Reset face_before_selective_p.
+       (append_space, extend_face_to_end_of_line): If iterator's
+       face_before_selective_p is set, use the face from saved_face_id.
+       (extend_face_to_end_of_line): For tty frames, make sure to
+       use the right face id when producing spaces at the end of
+       the line.
+
+       * dispextern.h (struct it): Add face_before_selective_p.
+
        * keyboard.c (record_char): Don't record identical help-echo
        events in recent_keys.
 
index 9b899c2..6c31396 100644 (file)
@@ -19,7 +19,7 @@ along with GNU Emacs; see the file COPYING.  If not, write to
 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
-/* New redisplay written by Gerd Moellmann <gerd@acm.org>.  */
+/* New redisplay written by Gerd Moellmann <gerd@gnu.org>.  */
 
 #ifndef DISPEXTERN_H_INCLUDED
 #define DISPEXTERN_H_INCLUDED
@@ -1663,9 +1663,12 @@ struct it
      character have been put on the previous line.  */
   unsigned starts_in_middle_of_char_p : 1;
 
+  /* If 1, saved_face_id contains the id of the face in front of text
+     skipped due to selective display.  */
+  unsigned face_before_selective_p : 1;
+
   /* The ID of the default face to use.  One of DEFAULT_FACE_ID,
-     MODE_LINE_FACE_ID, or TOOL_BAR_FACE_ID, depending on what we
-     are displaying.  */
+     MODE_LINE_FACE_ID, etc, depending on what we are displaying.  */
   int base_face_id;
 
   /* If what == IT_CHARACTER, character and length in bytes.  This is