aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/man.el
diff options
context:
space:
mode:
authorKarl Heuer <[email protected]>1994-03-15 05:12:14 +0000
committerKarl Heuer <[email protected]>1994-03-15 05:12:14 +0000
commit75db9a6429d9a1f17f8ec5321ba80ef3f2366f18 (patch)
tree342326f15300dee3df3e3230c9007d5dca4bb42a /lisp/man.el
parentb09d7aa2a2dd02af0c106c5b21c8827ab2684cb7 (diff)
(Man-original-frame): New variable.
(Man-getpage-in-background): Save the frame that man was invoked in. (Man-notify-when-ready): Restore it, if appropriate.
Diffstat (limited to 'lisp/man.el')
-rw-r--r--lisp/man.el10
1 files changed, 10 insertions, 0 deletions
diff --git a/lisp/man.el b/lisp/man.el
index b18612ec8f..0000a0d9a6 100644
--- a/lisp/man.el
+++ b/lisp/man.el
@@ -231,6 +231,7 @@ This regular expression should start with a `^' character.")
(make-variable-buffer-local 'Man-page-list)
(make-variable-buffer-local 'Man-current-page)
(make-variable-buffer-local 'Man-page-mode-string)
+(make-variable-buffer-local 'Man-original-frame)
(setq-default Man-sections-alist nil)
(setq-default Man-refpages-alist nil)
@@ -457,6 +458,9 @@ start a background process even if a buffer already exists and
(require 'env)
(message "Invoking man %s in background..." man-args)
(setq buffer (generate-new-buffer bufname))
+ (save-excursion
+ (set-buffer buffer)
+ (setq Man-original-frame (selected-frame)))
(let ((process-environment (copy-sequence process-environment)))
;; Prevent any attempt to use display terminal fanciness.
(setenv "TERM" "dumb")
@@ -474,11 +478,17 @@ See the variable `Man-notify' for the different notification behaviors."
(set-buffer man-buffer)
(new-frame Man-frame-parameters))
((eq Man-notify 'bully)
+ (and (frame-live-p Man-original-frame)
+ (select-frame Man-original-frame))
(pop-to-buffer man-buffer)
(delete-other-windows))
((eq Man-notify 'aggressive)
+ (and (frame-live-p Man-original-frame)
+ (select-frame Man-original-frame))
(pop-to-buffer man-buffer))
((eq Man-notify 'friendly)
+ (and (frame-live-p Man-original-frame)
+ (select-frame Man-original-frame))
(display-buffer man-buffer 'not-this-window))
((eq Man-notify 'polite)
(beep)