diff options
author | Karoly Lorentey <lorentey@elte.hu> | 2004-04-16 15:03:58 +0000 |
---|---|---|
committer | Karoly Lorentey <lorentey@elte.hu> | 2004-04-16 15:03:58 +0000 |
commit | 385ed61f9d0bffef8a3f037e8cdc85d0de71bf15 (patch) | |
tree | f731aec43c0fd28ae4c35f4102d1d2dd21ab735c /src/scroll.c | |
parent | 5ffa0039d41813857b4442d435ad4f65123737c5 (diff) | |
download | emacs-385ed61f9d0bffef8a3f037e8cdc85d0de71bf15.tar.gz emacs-385ed61f9d0bffef8a3f037e8cdc85d0de71bf15.tar.bz2 emacs-385ed61f9d0bffef8a3f037e8cdc85d0de71bf15.zip |
Eliminated updating_frame.
src/termhooks.h (cursor_to_hook, raw_cursor_to_hook)
(clear_to_end_hook, clear_end_of_line_hook, clear_frame_hook)
(ins_del_lines_hook, insert_glyphs_hook, write_glyphs_hook)
(delete_glyphs_hook, ring_bell_hook, set_terminal_window_hook):
Added frame parameter.
src/term.c (ring_bell, tty_ring_bell, set_terminal_window)
(tty_set_terminal_window, set_scroll_region, cursor_to)
(tty_cursor_to, raw_cursor_to, tty_raw_cursor_to, clear_to_end)
(tty_clear_to_end, clear_frame, tty_clear_frame, clear_end_of_line)
(tty_clear_end_of_line, write_glyphs, tty_write_glyphs, insert_glyphs)
(tty_insert_glyphs, delete_glyphs, tty_delete_glyphs, ins_del_lines)
(tty_ins_del_lines): Added frame parameter.
src/xterm.c (x_delete_glyphs, x_clear_frame, x_ins_del_lines):
Added frame parameter.
src/scroll.c (do_direct_scrolling, do_scrolling): Added frame parameter.
src/term.c (update_begin, update_end): Don't set updating_frame.
src/xfns.c (x_set_tool_bar_lines): Ditto.
src/term.c (updating_frame): Removed.
src/dispextern.h: Updated prototypes.
src/dispnew.c (Fredraw_frame, direct_output_for_insert)
(direct_output_forward_char, update_frame_1, update_frame_line)
(ding, bitch_at_user): Added frame parameter to calls to redisplay.
src/xdisp.c (try_window_id): Ditto.
src/scroll.c (do_scrolling, do_direct_scrolling, scrolling_1): Ditto.
src/fileio.c (auto_save_error): Ditto.
src/term.c (tty_ring_bell): Flush the output stream after beeping.
src/dispnew.c (ding, bitch_at_user): Don't fflush CURTTY.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-140
Diffstat (limited to 'src/scroll.c')
-rw-r--r-- | src/scroll.c | 39 |
1 files changed, 22 insertions, 17 deletions
diff --git a/src/scroll.c b/src/scroll.c index 8f83851a2e0..5991fec004a 100644 --- a/src/scroll.c +++ b/src/scroll.c @@ -58,10 +58,12 @@ struct matrix_elt unsigned char writecount; }; -static void do_direct_scrolling P_ ((struct glyph_matrix *, +static void do_direct_scrolling P_ ((struct frame *, + struct glyph_matrix *, struct matrix_elt *, int, int)); -static void do_scrolling P_ ((struct glyph_matrix *, +static void do_scrolling P_ ((struct frame *, + struct glyph_matrix *, struct matrix_elt *, int, int)); @@ -242,7 +244,8 @@ calculate_scrolling (frame, matrix, window_size, lines_below, of lines. */ static void -do_scrolling (current_matrix, matrix, window_size, unchanged_at_top) +do_scrolling (frame, current_matrix, matrix, window_size, unchanged_at_top) + struct frame *frame; struct glyph_matrix *current_matrix; struct matrix_elt *matrix; int window_size; @@ -309,12 +312,12 @@ do_scrolling (current_matrix, matrix, window_size, unchanged_at_top) /* Set the terminal window, if not done already. */ if (! terminal_window_p) { - set_terminal_window (window_size + unchanged_at_top); + set_terminal_window (frame, window_size + unchanged_at_top); terminal_window_p = 1; } /* Delete lines on the terminal. */ - ins_del_lines (j + unchanged_at_top, - p->deletecount); + ins_del_lines (frame, j + unchanged_at_top, - p->deletecount); } else { @@ -339,7 +342,7 @@ do_scrolling (current_matrix, matrix, window_size, unchanged_at_top) /* Set the terminal window if not yet done. */ if (!terminal_window_p) { - set_terminal_window (window_size + unchanged_at_top); + set_terminal_window (frame, window_size + unchanged_at_top); terminal_window_p = 1; } @@ -348,7 +351,7 @@ do_scrolling (current_matrix, matrix, window_size, unchanged_at_top) --queue; /* Do the deletion on the terminal. */ - ins_del_lines (queue->pos, queue->count); + ins_del_lines (frame, queue->pos, queue->count); /* All lines in the range deleted become empty in the glyph matrix. Assign to them glyph rows that are not retained. @@ -381,7 +384,7 @@ do_scrolling (current_matrix, matrix, window_size, unchanged_at_top) CHECK_MATRIX (current_matrix); if (terminal_window_p) - set_terminal_window (0); + set_terminal_window (frame, 0); } @@ -652,8 +655,9 @@ calculate_direct_scrolling (frame, matrix, window_size, lines_below, the cost matrix for this approach is constructed. */ static void -do_direct_scrolling (current_matrix, cost_matrix, window_size, - unchanged_at_top) +do_direct_scrolling (frame, current_matrix, cost_matrix, + window_size, unchanged_at_top) + struct frame *frame; struct glyph_matrix *current_matrix; struct matrix_elt *cost_matrix; int window_size; @@ -744,9 +748,9 @@ do_direct_scrolling (current_matrix, cost_matrix, window_size, if (i > j) { /* Immediately insert lines */ - set_terminal_window (i + unchanged_at_top); + set_terminal_window (frame, i + unchanged_at_top); terminal_window_p = 1; - ins_del_lines (j - n_to_write + unchanged_at_top, i - j); + ins_del_lines (frame, j - n_to_write + unchanged_at_top, i - j); } else if (i < j) { @@ -776,9 +780,9 @@ do_direct_scrolling (current_matrix, cost_matrix, window_size, --queue; if (queue->count) { - set_terminal_window (queue->window); + set_terminal_window (frame, queue->window); terminal_window_p = 1; - ins_del_lines (queue->pos, queue->count); + ins_del_lines (frame, queue->pos, queue->count); } else { @@ -801,7 +805,7 @@ do_direct_scrolling (current_matrix, cost_matrix, window_size, copy_from, retained_p); if (terminal_window_p) - set_terminal_window (0); + set_terminal_window (frame, 0); } @@ -827,7 +831,7 @@ scrolling_1 (frame, window_size, unchanged_at_top, unchanged_at_bottom, unchanged_at_bottom, draw_cost, old_draw_cost, old_hash, new_hash, free_at_end); - do_direct_scrolling (frame->current_matrix, + do_direct_scrolling (frame, frame->current_matrix, matrix, window_size, unchanged_at_top); } else @@ -835,7 +839,8 @@ scrolling_1 (frame, window_size, unchanged_at_top, unchanged_at_bottom, calculate_scrolling (frame, matrix, window_size, unchanged_at_bottom, draw_cost, old_hash, new_hash, free_at_end); - do_scrolling (frame->current_matrix, matrix, window_size, + do_scrolling (frame, + frame->current_matrix, matrix, window_size, unchanged_at_top); } } |