diff options
| author | Richard M. Stallman | 1994-05-19 05:54:26 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1994-05-19 05:54:26 +0000 |
| commit | c91c739e64db76a4682df0bff1c5583ee2492d7c (patch) | |
| tree | 8d272b041c11a4099867972052e38151168c536d | |
| parent | 268466edbe1e807739cc6e1a9e07b5b9650c68fa (diff) | |
| download | emacs-c91c739e64db76a4682df0bff1c5583ee2492d7c.tar.gz emacs-c91c739e64db76a4682df0bff1c5583ee2492d7c.zip | |
(menu-bar-update-buffers): Record buffers' mod and
read-only flags, and recompute if they change.
| -rw-r--r-- | lisp/menu-bar.el | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 8b33d7d08c3..c89a356b6af 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el | |||
| @@ -264,11 +264,19 @@ A large number or nil slows down menu responsiveness.") | |||
| 264 | (defun menu-bar-update-buffers () | 264 | (defun menu-bar-update-buffers () |
| 265 | (let ((buffers (buffer-list)) | 265 | (let ((buffers (buffer-list)) |
| 266 | (frames (frame-list)) | 266 | (frames (frame-list)) |
| 267 | buffers-info | ||
| 267 | buffers-menu frames-menu) | 268 | buffers-menu frames-menu) |
| 268 | (if (and (equal buffers menu-bar-update-buffers-last-buffers) | 269 | (setq buffers-info |
| 270 | (mapcar (function (lambda (buffer) | ||
| 271 | (list buffer (buffer-modified-p buffer) | ||
| 272 | (save-excursion | ||
| 273 | (set-buffer buffer) | ||
| 274 | buffer-read-only)))) | ||
| 275 | buffers)) | ||
| 276 | (if (and (equal buffers-info menu-bar-update-buffers-last-buffers) | ||
| 269 | (equal frames menu-bar-update-buffers-last-frames)) | 277 | (equal frames menu-bar-update-buffers-last-frames)) |
| 270 | nil | 278 | nil |
| 271 | (setq menu-bar-update-buffers-last-buffers buffers) | 279 | (setq menu-bar-update-buffers-last-buffers buffers-info) |
| 272 | (setq menu-bar-update-buffers-last-frames frames) | 280 | (setq menu-bar-update-buffers-last-frames frames) |
| 273 | ;; If requested, list only the N most recently selected buffers. | 281 | ;; If requested, list only the N most recently selected buffers. |
| 274 | (if (and (integerp buffers-menu-max-size) | 282 | (if (and (integerp buffers-menu-max-size) |