]> git.eshelyaron.com Git - emacs.git/commitdiff
(struct it): New element ellipsis_p.
authorRichard M. Stallman <rms@gnu.org>
Sat, 1 Jan 2005 01:36:48 +0000 (01:36 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sat, 1 Jan 2005 01:36:48 +0000 (01:36 +0000)
(struct glyph_row): New element ends_in_ellipsis_p.

src/ChangeLog
src/dispextern.h

index 494f45f9af804a8bed415858f20ff2347b8a6569..6e725eef287b298bdecb10b8aa1a52b3be60e4a3 100644 (file)
@@ -4,6 +4,19 @@
 
 2004-12-31  Richard M. Stallman  <rms@gnu.org>
 
+       * xdisp.c (setup_for_ellipsis, get_next_display_element):
+       Set it->ellipsis_p to 1 or 0.
+       (display_line): Record whether row ends in mid-ellipsis.
+       (set_cursor_from_row): If ends in ellipsis. find start of it.
+       (cursor_row_p): If PT's at the end of the ellipsis the row
+       ends within, don't display cursor on this row.
+
+       * dispextern.h (struct it): New element ellipsis_p.
+       (struct glyph_row): New element ends_in_ellipsis_p.
+
+       * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
+       position if we're reading from something other than the buffer.
+
        * window.c (window_scroll_pixel_based): Only look at
        Vscroll_preserve_screen_position if the old PT can't be kept.
        (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
index c9d85065e78374da444d2a03c0c20fe5ab4978ae..a6f12a04b4518fd890a4457cdb88ef6bce391738 100644 (file)
@@ -817,6 +817,9 @@ struct glyph_row
   /* 1 means this row currently shows the cursor in the right fringe.  */
   unsigned cursor_in_fringe_p : 1;
 
+  /* 1 means the last glyph in the row is part of an ellipsis.  */
+  unsigned ends_in_ellipsis_p : 1;
+
   /* Non-zero means display a bitmap on X frames indicating that this
      the first line of the buffer.  */
   unsigned indicate_bob_p : 1;
@@ -1825,6 +1828,10 @@ struct it
      Don't handle some `display' properties in these strings.  */
   unsigned string_from_display_prop_p : 1;
 
+  /* When METHOD == next_element_from_display_vector,
+     this is 1 if we're doing an ellipsis.  Otherwise meaningless.  */
+  unsigned ellipsis_p : 1;
+
   /* Display table in effect or null for none.  */
   struct Lisp_Char_Table *dp;