comparison src/fringe.c @ 107994:5dc04900cbd7

Mirror continuation indicators for R2L lines; fix face extension on TTY. xdisp.c (extend_face_to_end_of_line): Fix face extension at ZV. term.c (produce_special_glyphs): Mirror the backslash continuation character in R2L lines. xdisp.c (set_cursor_from_row, display_line): Use MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of row->continuation_lines_width. fringe.c (update_window_fringes): For R2L rows, swap the bitmaps of continuation indicators on the fringes.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 17 Apr 2010 15:33:05 +0300
parents 74557d25410e
children cda2e3e030af
comparison
equal deleted inserted replaced
107993:7a57ff6ef75c 107994:5dc04900cbd7
1088 left = ((row->indicate_eob_p && EQ (boundary_bot, Qleft)) 1088 left = ((row->indicate_eob_p && EQ (boundary_bot, Qleft))
1089 ? LEFT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p) 1089 ? LEFT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p)
1090 : LEFT_FRINGE (2, Qtop, 0)); 1090 : LEFT_FRINGE (2, Qtop, 0));
1091 else if (row->indicate_eob_p && EQ (boundary_bot, Qleft)) 1091 else if (row->indicate_eob_p && EQ (boundary_bot, Qleft))
1092 left = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p); 1092 left = LEFT_FRINGE (3, Qbottom, row->ends_at_zv_p);
1093 else if (MATRIX_ROW_CONTINUATION_LINE_P (row)) 1093 else if ((!row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row))
1094 || (row->reversed_p && row->continued_p))
1094 left = LEFT_FRINGE (4, Qcontinuation, 0); 1095 left = LEFT_FRINGE (4, Qcontinuation, 0);
1095 else if (row->indicate_empty_line_p && EQ (empty_pos, Qleft)) 1096 else if (row->indicate_empty_line_p && EQ (empty_pos, Qleft))
1096 left = LEFT_FRINGE (5, Qempty_line, 0); 1097 left = LEFT_FRINGE (5, Qempty_line, 0);
1097 else if (row->indicate_top_line_p && EQ (arrow_top, Qleft)) 1098 else if (row->indicate_top_line_p && EQ (arrow_top, Qleft))
1098 left = LEFT_FRINGE (6, Qup, 0); 1099 left = LEFT_FRINGE (6, Qup, 0);
1115 right = ((row->indicate_eob_p && EQ (boundary_bot, Qright)) 1116 right = ((row->indicate_eob_p && EQ (boundary_bot, Qright))
1116 ? RIGHT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p) 1117 ? RIGHT_FRINGE (1, Qtop_bottom, row->ends_at_zv_p)
1117 : RIGHT_FRINGE (2, Qtop, 0)); 1118 : RIGHT_FRINGE (2, Qtop, 0));
1118 else if (row->indicate_eob_p && EQ (boundary_bot, Qright)) 1119 else if (row->indicate_eob_p && EQ (boundary_bot, Qright))
1119 right = RIGHT_FRINGE (3, Qbottom, row->ends_at_zv_p); 1120 right = RIGHT_FRINGE (3, Qbottom, row->ends_at_zv_p);
1120 else if (row->continued_p) 1121 else if ((!row->reversed_p && row->continued_p)
1122 || (row->reversed_p && MATRIX_ROW_CONTINUATION_LINE_P (row)))
1121 right = RIGHT_FRINGE (4, Qcontinuation, 0); 1123 right = RIGHT_FRINGE (4, Qcontinuation, 0);
1122 else if (row->indicate_top_line_p && EQ (arrow_top, Qright)) 1124 else if (row->indicate_top_line_p && EQ (arrow_top, Qright))
1123 right = RIGHT_FRINGE (6, Qup, 0); 1125 right = RIGHT_FRINGE (6, Qup, 0);
1124 else if (row->indicate_bottom_line_p && EQ (arrow_bot, Qright)) 1126 else if (row->indicate_bottom_line_p && EQ (arrow_bot, Qright))
1125 right = RIGHT_FRINGE (7, Qdown, 0); 1127 right = RIGHT_FRINGE (7, Qdown, 0);