changeset 40241:ed0417fa10cb

(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.
author Gerd Moellmann <gerd@gnu.org>
date Wed, 24 Oct 2001 08:15:55 +0000
parents 68aaada6c450
children 5b5f690e9b9c
files src/xdisp.c
diffstat 1 files changed, 34 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- 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 */
 }