# HG changeset patch # User Gerd Moellmann # Date 1003911355 0 # Node ID ed0417fa10cb263b467e16a802e2ba5cb934316f # Parent 68aaada6c4508158079c36199a42ed19b976b785 (inhibit_try_window_id, inhibit_try_window_reusing) (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables. (try_window_id, try_window_reusing_current_matrix) (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited. (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables. diff -r 68aaada6c450 -r ed0417fa10cb src/xdisp.c --- a/src/xdisp.c Wed Oct 24 07:10:09 2001 +0000 +++ b/src/xdisp.c Wed Oct 24 08:15:55 2001 +0000 @@ -550,6 +550,11 @@ #if GLYPH_DEBUG +/* Variables to turn off display optimizations from Lisp. */ + +int inhibit_try_window_id, inhibit_try_window_reusing; +int inhibit_try_cursor_movement; + /* Non-zero means print traces of redisplay if compiled with GLYPH_DEBUG != 0. */ @@ -9678,6 +9683,11 @@ struct frame *f = XFRAME (w->frame); int rc = CURSOR_MOVEMENT_CANNOT_BE_USED; +#ifdef GLYPH_DEBUG + if (inhibit_try_cursor_movement) + return rc; +#endif + /* Handle case where text has not changed, only point, and it has not moved off the frame. */ if (/* Point may be in this window. */ @@ -10614,6 +10624,11 @@ struct glyph_row *start_row; int start_vpos, min_y, max_y; +#ifdef GLYPH_DEBUG + if (inhibit_try_window_reusing) + return 0; +#endif + if (/* This function doesn't handle terminal frames. */ !FRAME_WINDOW_P (f) /* Don't try to reuse the display if windows have been split @@ -11280,6 +11295,11 @@ struct text_pos start; int first_changed_charpos, last_changed_charpos; +#ifdef GLYPH_DEBUG + if (inhibit_try_window_id) + return 0; +#endif + /* This is handy for debugging. */ #if 0 #define GIVE_UP(X) \ @@ -14876,6 +14896,20 @@ DEFVAR_BOOL ("inhibit-eval-during-redisplay", &inhibit_eval_during_redisplay, doc: /* Non-nil means don't eval Lisp during redisplay. */); inhibit_eval_during_redisplay = 0; + +#ifdef GLYPH_DEBUG + DEFVAR_BOOL ("inhibit-try-window-id", &inhibit_try_window_id, + doc: /* Inhibit try_window_id display optimization. */); + inhibit_try_window_id = 0; + + DEFVAR_BOOL ("inhibit-try-window-reusing", &inhibit_try_window_reusing, + doc: /* Inhibit try_window_reusing display optimization. */); + inhibit_try_window_reusing = 0; + + DEFVAR_BOOL ("inhibit-try-cursor-movement", &inhibit_try_cursor_movement, + doc: /* Inhibit try_cursor_movement display optimization. */); + inhibit_try_cursor_movement = 0; +#endif /* GLYPH_DEBUG */ }