From 682c2849d4685f7d318d7a0d3b5ac7f7d4b6ae96 Mon Sep 17 00:00:00 2001 From: David Byers Date: Sun, 31 Dec 2000 21:47:24 +0000 Subject: [PATCH] Fix for lockups with async messages in own buffer. Fix for kom-move-text. Workaround for Emacs 21.0.94 --- src/ChangeLog | 17 +++++++++++++++++ src/buffers.el | 5 +++-- src/commands1.el | 2 +- src/lyskom-rest.el | 14 +++++++++----- 4 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 43b7482e..f2585588 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,20 @@ +2000-12-22 David Byers + + * lyskom-rest.el (kom-page-next-command): Added (temporary) + workaround for emacs-21.0.94. + (kom-view): Same here. + +2000-12-15 David Byers + + * buffers.el (lyskom-display-buffer): Fixed problem with + displaying windows in iconified frames. This could cause Emacs to + lock up. Maybe. + +2000-12-12 David Byers + + * commands1.el (kom-move-text): Default recipient of kom-move-text + is finally correct. + 2000-12-29 Ulrik Haugen * lyskom-rest.el (j-or-n-p lyskom-j-or-n-p): Rmoved the parameter diff --git a/src/buffers.el b/src/buffers.el index d8458965..835eebbd 100644 --- a/src/buffers.el +++ b/src/buffers.el @@ -446,7 +446,8 @@ Returns the window displaying BUFFER." ;; (while windows - (cond ((eq (frame-visible-p (window-frame (car windows))) 'icon) + (cond ((not (frame-live-p (window-frame (car windows))))) + ((eq (frame-visible-p (window-frame (car windows))) 'icon) (setq iconified-frame (car windows))) ((frame-visible-p (window-frame (car windows))) (setq visible-frame (car windows)) @@ -460,7 +461,7 @@ Returns the window displaying BUFFER." (cond (visible-frame (select-window visible-frame) visible-frame) - (iconified-frame (make-frame-visible iconified-frame) + (iconified-frame (make-frame-visible (window-frame iconified-frame)) (select-window iconified-frame) iconified-frame) diff --git a/src/commands1.el b/src/commands1.el index e957bc9c..cea24463 100644 --- a/src/commands1.el +++ b/src/commands1.el @@ -3313,7 +3313,7 @@ The value of RECIPIENTS should be the result of a call to '(all) nil (cons (if default-to - (conf-stat->name default-from) + (conf-stat->name default-to) "") 0) t))) (when (and source target) diff --git a/src/lyskom-rest.el b/src/lyskom-rest.el index 0e5ea9b4..47c02aa6 100644 --- a/src/lyskom-rest.el +++ b/src/lyskom-rest.el @@ -195,8 +195,10 @@ If the optional argument REFETCH is non-nil, all caches are cleared and (progn (goto-char (point-max)) (recenter 0) + (sit-for 0) ; FIXME: emacs-21.0.94 workaround (lyskom-next-command)) (recenter 0) + (sit-for 0) ; FIXME: emacs-21.0.94 workaround (move-to-window-line -1) (lyskom-set-last-viewed))) @@ -310,9 +312,11 @@ If the optional argument REFETCH is non-nil, all caches are cleared and (setq text-no (lyskom-read-text-no-prefix-arg 'review-text-q))) (cond (text-no - (if (or (not (listp kom-page-before-command)) - (memq 'kom-view kom-page-before-command)) - (recenter 1)) + (when (or (not (listp kom-page-before-command)) + (memq 'kom-view kom-page-before-command)) + (recenter 1) + (sit-for 0) ; FIXME: emacs-21.0.94 workaround + ) (lyskom-tell-internat 'kom-tell-review) (lyskom-format-insert 'review-text-no text-no) (lyskom-view-text text-no)) @@ -882,8 +886,8 @@ is not on screen then doesn't move point." (let ((window (get-buffer-window (current-buffer)))) (if (and window was-at-max) (if (pos-visible-in-window-p (point-max) window) - (goto-char (point-max)) - (and kom-continuous-scrolling (lyskom-scroll))))))) + (goto-char (point-max)) + (and kom-continuous-scrolling (lyskom-scroll))))))) -- GitLab