diff options
| author | Kim F. Storm | 2004-11-22 23:26:36 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2004-11-22 23:26:36 +0000 |
| commit | 26a5d4404c163c51aa98e4cde76025a1fbe5058a (patch) | |
| tree | 1e32bf15bf3560675ae8bf66c7ef76799ea99b0e /src | |
| parent | 1c395ea72dc4cb1c33df32fee064470951982cc7 (diff) | |
| download | emacs-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.c | 34 |
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 | } |