diff src/fringe.c @ 66622:cf3d316b4bc0

(update_window_fringes): Undo 2005-10-27 change. Instead, rotate the bottom angle bitmap 180 degrees to indicate that the bottom row does not end in a newline.
author Kim F. Storm <storm@cua.dk>
date Tue, 01 Nov 2005 22:32:24 +0000
parents 430485ba3d28
children 3bd95f4f2941 693e794b57bf 7beb78bc1f8e
line wrap: on
line diff
--- a/src/fringe.c	Tue Nov 01 21:34:43 2005 +0000
+++ b/src/fringe.c	Tue Nov 01 22:32:24 2005 +0000
@@ -860,7 +860,7 @@
 
 	      if (!done_bot)
 		{
-		  if (row->ends_at_zv_p
+		  if (MATRIX_ROW_END_CHARPOS (row) >= BUF_ZV (XBUFFER (w->buffer))
 		      && !MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P (w, row))
 		    row->indicate_eob_p = !NILP (boundary_bot), done_bot = 1;
 		  else if (y + row->height >= yb)
@@ -906,9 +906,12 @@
 	left = LEFT_TRUNCATION_BITMAP;
       else if (row->indicate_bob_p && EQ (boundary_top, Qleft))
 	left = ((row->indicate_eob_p && EQ (boundary_bot, Qleft))
-		? LEFT_BRACKET_BITMAP : TOP_LEFT_ANGLE_BITMAP);
+		? (row->ends_at_zv_p
+		   ? TOP_RIGHT_ANGLE_BITMAP : LEFT_BRACKET_BITMAP)
+		: TOP_LEFT_ANGLE_BITMAP);
       else if (row->indicate_eob_p && EQ (boundary_bot, Qleft))
-	left = BOTTOM_LEFT_ANGLE_BITMAP;
+	left = (row->ends_at_zv_p
+		? TOP_RIGHT_ANGLE_BITMAP : BOTTOM_LEFT_ANGLE_BITMAP);
       else if (MATRIX_ROW_CONTINUATION_LINE_P (row))
 	left = CONTINUATION_LINE_BITMAP;
       else if (row->indicate_empty_line_p && EQ (empty_pos, Qleft))
@@ -932,9 +935,12 @@
 	right = RIGHT_TRUNCATION_BITMAP;
       else if (row->indicate_bob_p && EQ (boundary_top, Qright))
 	right = ((row->indicate_eob_p && EQ (boundary_bot, Qright))
-		 ? RIGHT_BRACKET_BITMAP : TOP_RIGHT_ANGLE_BITMAP);
+		 ? (row->ends_at_zv_p
+		    ? TOP_LEFT_ANGLE_BITMAP : RIGHT_BRACKET_BITMAP)
+		 : TOP_RIGHT_ANGLE_BITMAP);
       else if (row->indicate_eob_p && EQ (boundary_bot, Qright))
-	right = BOTTOM_RIGHT_ANGLE_BITMAP;
+	right = (row->ends_at_zv_p
+		 ? TOP_LEFT_ANGLE_BITMAP : BOTTOM_RIGHT_ANGLE_BITMAP);
       else if (row->continued_p)
 	right = CONTINUED_LINE_BITMAP;
       else if (row->indicate_top_line_p && EQ (arrow_top, Qright))