summaryrefslogtreecommitdiff
path: root/src/xdisp.c
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>2001-10-24 08:17:14 +0000
committerGerd Moellmann <gerd@gnu.org>2001-10-24 08:17:14 +0000
commit76cb5e0695429155f95f43d63846005c32ccb58f (patch)
tree3d2c9bda58af5224374fcec35e0e224a6fd5b04f /src/xdisp.c
parentc9e6062043bfd116f0f52b4a3472a673ec4ccd7d (diff)
downloademacs-76cb5e0695429155f95f43d63846005c32ccb58f.tar.gz
(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.
Diffstat (limited to 'src/xdisp.c')
-rw-r--r--src/xdisp.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index f39f9ec387d..14413ca8f45 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -550,6 +550,11 @@ int current_mode_line_height, current_header_line_height;
#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 @@ try_cursor_movement (window, startp, scroll_step)
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 @@ try_window_reusing_current_matrix (w)
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 @@ try_window_id (w)
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 @@ Can be used to update submenus whose contents should vary. */);
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 */
}