Mercurial > emacs
changeset 79050:1a92b80c7fa2
(set-frame-configuration): Assign name parameter only
if it has been set explicitly before.
author | Martin Rudalics <rudalics@gmx.at> |
---|---|
date | Fri, 12 Oct 2007 08:40:56 +0000 |
parents | 257d07b87d1c |
children | 791005d11e25 |
files | lisp/frame.el |
diffstat | 1 files changed, 9 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/frame.el Fri Oct 12 08:36:47 2007 +0000 +++ b/lisp/frame.el Fri Oct 12 08:40:56 2007 +0000 @@ -807,8 +807,15 @@ ;; Since we can't set a frame's minibuffer status, ;; we might as well omit the parameter altogether. (let* ((parms (nth 1 parameters)) - (mini (assq 'minibuffer parms))) - (if mini (setq parms (delq mini parms))) + (mini (assq 'minibuffer parms)) + (name (assq 'name parms)) + (explicit-name (cdr (assq 'explicit-name parms)))) + (when mini (setq parms (delq mini parms))) + ;; Leave name in iff it was set explicitly. + ;; This should fix the behavior reported in + ;; http://lists.gnu.org/archive/html/emacs-devel/2007-08/msg01632.html + (when (and name (not explicit-name)) + (setq parms (delq name parms))) parms)) (set-window-configuration (nth 2 parameters))) (setq frames-to-delete (cons frame frames-to-delete))))))