aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKim F. Storm2004-11-22 23:26:36 +0000
committerKim F. Storm2004-11-22 23:26:36 +0000
commit26a5d4404c163c51aa98e4cde76025a1fbe5058a (patch)
tree1e32bf15bf3560675ae8bf66c7ef76799ea99b0e /src
parent1c395ea72dc4cb1c33df32fee064470951982cc7 (diff)
downloademacs-26a5d4404c163c51aa98e4cde76025a1fbe5058a.tar.gz
emacs-26a5d4404c163c51aa98e4cde76025a1fbe5058a.zip
(update_window_fringes): Show top row indicator if
window has header-line. Don't show arrow at bob and eob if the boundary indicators are not used. (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
Diffstat (limited to 'src')
-rw-r--r--src/fringe.c34
1 files changed, 20 insertions, 14 deletions
diff --git a/src/fringe.c b/src/fringe.c
index 48974805c3c..a3e95c390e1 100644
--- a/src/fringe.c
+++ b/src/fringe.c
@@ -815,7 +815,7 @@ update_window_fringes (w, force_p)
815 815
816 if (!NILP (ind)) 816 if (!NILP (ind))
817 { 817 {
818 int do_eob = 1, do_bob = 1; 818 int done_top = 0, done_bot = 0;
819 819
820 for (y = 0, rn = 0; 820 for (y = 0, rn = 0;
821 y < yb && rn < nrows; 821 y < yb && rn < nrows;
@@ -836,19 +836,25 @@ update_window_fringes (w, force_p)
836 row->indicate_bob_p = row->indicate_top_line_p = 0; 836 row->indicate_bob_p = row->indicate_top_line_p = 0;
837 row->indicate_eob_p = row->indicate_bottom_line_p = 0; 837 row->indicate_eob_p = row->indicate_bottom_line_p = 0;
838 838
839 if (!NILP (boundary_top) 839 if (!row->mode_line_p)
840 && MATRIX_ROW_START_CHARPOS (row) <= BUF_BEGV (XBUFFER (w->buffer))) 840 {
841 row->indicate_bob_p = do_bob, do_bob = 0; 841 if (!done_top)
842 else if (!NILP (arrow_top) 842 {
843 && (WINDOW_WANTS_HEADER_LINE_P (w) ? 1 : 0) == rn) 843 if (MATRIX_ROW_START_CHARPOS (row) <= BUF_BEGV (XBUFFER (w->buffer)))
844 row->indicate_top_line_p = 1; 844 row->indicate_bob_p = !NILP (boundary_top);
845 else
846 row->indicate_top_line_p = !NILP (arrow_top);
847 done_top = 1;
848 }
845 849
846 if (!NILP (boundary_bot) 850 if (!done_bot)
847 && MATRIX_ROW_END_CHARPOS (row) >= BUF_ZV (XBUFFER (w->buffer))) 851 {
848 row->indicate_eob_p = do_eob, do_eob = 0; 852 if (MATRIX_ROW_END_CHARPOS (row) >= BUF_ZV (XBUFFER (w->buffer)))
849 else if (!NILP (arrow_bot) 853 row->indicate_eob_p = !NILP (boundary_bot), done_bot = 1;
850 && y + row->height >= yb) 854 else if (y + row->height >= yb)
851 row->indicate_bottom_line_p = 1; 855 row->indicate_bottom_line_p = !NILP (arrow_bot), done_bot = 1;
856 }
857 }
852 858
853 if (indicate_bob_p != row->indicate_bob_p 859 if (indicate_bob_p != row->indicate_bob_p
854 || indicate_top_line_p != row->indicate_top_line_p 860 || indicate_top_line_p != row->indicate_top_line_p
@@ -1347,7 +1353,7 @@ If FACE is nil, reset face to default fringe face. */)
1347 1353
1348 if (!NILP (face)) 1354 if (!NILP (face))
1349 { 1355 {
1350 face_id = lookup_named_face (SELECTED_FRAME (), face, 'A'); 1356 face_id = lookup_named_face (SELECTED_FRAME (), face, 'A', 1);
1351 if (face_id < 0) 1357 if (face_id < 0)
1352 error ("No such face"); 1358 error ("No such face");
1353 } 1359 }