aboutsummaryrefslogtreecommitdiffhomepage
path: root/generic
diff options
context:
space:
mode:
authorGravatar Pierre Courtieu <courtieu@lri.fr>2014-12-22 15:29:11 +0000
committerGravatar Pierre Courtieu <courtieu@lri.fr>2014-12-22 15:29:11 +0000
commit5e0855925629694936a0f73936defa20a1758172 (patch)
tree5ac532650b305d1d9b24b49e635b6c2f978da905 /generic
parenteb8bee3157b4300174da08054e50884c8b32ed08 (diff)
Fixing a bug of multiple frame mode (obsolete variable in emacs > 23.4.
Diffstat (limited to 'generic')
-rw-r--r--generic/pg-response.el33
1 files changed, 26 insertions, 7 deletions
diff --git a/generic/pg-response.el b/generic/pg-response.el
index 7afa77a5..009c6492 100644
--- a/generic/pg-response.el
+++ b/generic/pg-response.el
@@ -84,7 +84,8 @@
;;
(defvar pg-response-special-display-regexp nil
- "Regexp for `special-display-regexps' for multiple frame use.
+ "Regexp for `special-display-regexps' (now display-buffer-alist)
+for multiple frame use.
Internal variable, setting this will have no effect!")
(defconst proof-multiframe-parameters
@@ -97,14 +98,33 @@ Internal variable, setting this will have no effect!")
"List of GNU Emacs frame parameters for secondary frames.")
(defun proof-multiple-frames-enable ()
+ ; special-display-regexps is obsolete, let us let it for a while and
+ ; remove it later
(unless (eval-when-compile (boundp 'display-buffer-alist))
(let ((spdres (cons
- pg-response-special-display-regexp
- proof-multiframe-parameters)))
+ pg-response-special-display-regexp
+ proof-multiframe-parameters)))
(if proof-multiple-frames-enable
- (add-to-list 'special-display-regexps spdres)
- (setq special-display-regexps
- (delete spdres special-display-regexps)))))
+ (add-to-list 'special-display-regexps spdres)
+ (setq special-display-regexps
+ (delete spdres special-display-regexps)))))
+ ; This is the current way to do it
+ (when (eval-when-compile (boundp 'display-buffer-alist))
+ (let
+ ((display-buffer-entry
+ (cons pg-response-special-display-regexp
+ `((display-buffer-reuse-window display-buffer-pop-up-frame) .
+ ((reusable-frames . nil)
+ (pop-up-frame-parameters
+ .
+ ,proof-multiframe-parameters))))))
+ (if proof-multiple-frames-enable
+ (add-to-list
+ 'display-buffer-alist
+ display-buffer-entry)
+ ;(add-to-list 'display-buffer-alist (proof-buffer-dislay))
+ (setq display-buffer-alist
+ (delete display-buffer-entry display-buffer-alist)))))
(proof-layout-windows))
(defun proof-three-window-enable ()
@@ -126,7 +146,6 @@ Following POLICY, which can be one of 'smart, 'horizontal,
(setq pol 'hybrid))
(t (setq pol 'vertical)))
(setq pol policy))
- (message "policy = %S , pol = %S" policy pol)
(save-selected-window
(cond
((eq pol 'hybrid)