diff options
author | Richard M. Stallman <rms@gnu.org> | 1995-04-13 07:47:27 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1995-04-13 07:47:27 +0000 |
commit | 885f8820e395ed1b50b6cf320b9aa8765923490c (patch) | |
tree | 824381a3053aded8eec52f6d4cc6f5f6f751040f /src/dispnew.c | |
parent | 1040268bfb231d638b071d9ad81d6e69ed3a7577 (diff) | |
download | emacs-885f8820e395ed1b50b6cf320b9aa8765923490c.tar.gz |
(Fframe_or_buffer_changed_p): Ignore buffers whose names start with space.
(init_desired_glyphs): New function.
Diffstat (limited to 'src/dispnew.c')
-rw-r--r-- | src/dispnew.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/src/dispnew.c b/src/dispnew.c index d2864d44481..60942dadba0 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -502,6 +502,20 @@ clear_frame_records (frame) bzero (FRAME_CURRENT_GLYPHS (frame)->enable, FRAME_HEIGHT (frame)); } +/* Clear out all display lines for a coming redisplay. */ + +void +init_desired_glyphs (frame) + register FRAME_PTR frame; +{ + register struct frame_glyphs *desired_glyphs = FRAME_DESIRED_GLYPHS (frame); + int vpos; + int height = FRAME_HEIGHT (frame); + + for (vpos = 0; vpos < height; vpos++) + desired_glyphs->enable[vpos] = 0; +} + /* Prepare to display on line VPOS starting at HPOS within it. */ void @@ -1887,6 +1901,7 @@ DEFUN ("frame-or-buffer-changed-p", Fframe_or_buffer_changed_p, Sframe_or_buffer_changed_p, 0, 0, 0, "Return non-nil if the frame and buffer state appears to have changed.\n\ The state variable is an internal vector containing all frames and buffers,\n\ +aside from buffers whose names start with space,\n\ along with the buffers' read-only and modified flags, which allows a fast\n\ check to see whether the menu bars might need to be recomputed.\n\ If this function returns non-nil, it updates the internal vector to reflect\n\ @@ -1907,6 +1922,9 @@ the current state.\n") for (tail = Vbuffer_alist; CONSP (tail); tail = XCONS (tail)->cdr) { buf = XCONS (XCONS (tail)->car)->cdr; + /* Ignore buffers that aren't included in buffer lists. */ + if (XSTRING (XBUFFER (buf)->name)->data[0] == ' ') + continue; if (!EQ (*vecp++, buf)) goto changed; if (!EQ (*vecp++, XBUFFER (buf)->read_only)) @@ -1934,6 +1952,9 @@ the current state.\n") for (tail = Vbuffer_alist; CONSP (tail); tail = XCONS (tail)->cdr) { buf = XCONS (XCONS (tail)->car)->cdr; + /* Ignore buffers that aren't included in buffer lists. */ + if (XSTRING (XBUFFER (buf)->name)->data[0] == ' ') + continue; *vecp++ = buf; *vecp++ = XBUFFER (buf)->read_only; *vecp++ = Fbuffer_modified_p (buf); @@ -2290,8 +2311,7 @@ Emacs was built without floating point support.\n\ it does the redisplay. It's also much like Fsit_for, except that it can be used for - waiting for input as well. One differnce is that sit_for - does not call prepare_menu_bars; Fsit_for does call that. */ + waiting for input as well. */ Lisp_Object sit_for (sec, usec, reading, display) |