From 956880460f313d8184f70e98ebdb46b3b0f13610 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Wed, 21 Aug 2002 23:49:28 +0000 Subject: [PATCH] Synch with Oort Gnus. --- lisp/ChangeLog | 4 ++++ lisp/gnus.el | 48 ++++++++++++++++++++++++------------------------ 2 files changed, 28 insertions(+), 24 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6a8553c..8fb74a3 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2002-08-21 Katsumi Yamaoka + * gnus.el (gnus-other-frame): Trivial fix. + +2002-08-21 Katsumi Yamaoka + * gnus.el (gnus-other-frame-parameters): New user option. (gnus-other-frame-object): New variable. (gnus-other-frame): Make it search for existing Gnus frame; don't diff --git a/lisp/gnus.el b/lisp/gnus.el index a045479..4651234 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -3475,30 +3475,30 @@ the variable `toolbar-news-frame-plist' will be refered instead." "Pop up a frame to read news." (interactive "P") (let ((alive (gnus-alive-p))) - (or (and alive - (catch 'found - (walk-windows - (lambda (window) - (when (with-current-buffer (window-buffer window) - (string-match "\\`gnus-.+-mode\\'" - (symbol-name major-mode))) - (gnus-select-frame-set-input-focus - (setq gnus-other-frame-object (window-frame window))) - (select-window window) - (throw 'found t))) - 'ignore t))) - (gnus-select-frame-set-input-focus - (setq gnus-other-frame-object - (make-frame gnus-other-frame-parameters))) - (if alive - (switch-to-buffer gnus-group-buffer) - (gnus arg) - (add-hook 'gnus-exit-gnus-hook - (lambda nil - (when (and (frame-live-p gnus-other-frame-object) - (cdr (frame-list))) - (delete-frame gnus-other-frame-object)) - (setq gnus-other-frame-object nil))))))) + (unless (and alive + (catch 'found + (walk-windows + (lambda (window) + (when (with-current-buffer (window-buffer window) + (string-match "\\`gnus-.+-mode\\'" + (symbol-name major-mode))) + (gnus-select-frame-set-input-focus + (setq gnus-other-frame-object (window-frame window))) + (select-window window) + (throw 'found t))) + 'ignore t))) + (gnus-select-frame-set-input-focus + (setq gnus-other-frame-object + (make-frame gnus-other-frame-parameters))) + (if alive + (switch-to-buffer gnus-group-buffer) + (gnus arg) + (add-hook 'gnus-exit-gnus-hook + (lambda nil + (when (and (frame-live-p gnus-other-frame-object) + (cdr (frame-list))) + (delete-frame gnus-other-frame-object)) + (setq gnus-other-frame-object nil))))))) ;;;###autoload (defun gnus (&optional arg dont-connect slave) -- 1.7.10.4