From: Juanma Barranquero Date: Thu, 25 Jul 2013 00:37:56 +0000 (+0200) Subject: lisp/desktop.el: Add workaround for bug#14949. X-Git-Tag: emacs-24.3.90~173^2^2~42^2~45^2~387^2~1698^2~53 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=cb3a56d2389eb6fe0635bd28b863c3a0734279c6;p=emacs.git lisp/desktop.el: Add workaround for bug#14949. (desktop--make-frame): Do not pass the `fullscreen' parameter to modify-frame-parameters if the value has not changed. (desktop--make-frame): On cl-delete-if call, check parameter name, not full parameter. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 587c9b921c9..85c68323cfe 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2013-07-25 Juanma Barranquero + + * desktop.el (desktop--make-frame): Do not pass the `fullscreen' + parameter to modify-frame-parameters if the value has not changed; + this is a workaround for bug#14949. + (desktop--make-frame): On cl-delete-if call, check parameter name, + not full parameter. + 2013-07-24 Juanma Barranquero * desktop.el (desktop-restoring-frames-p): Return a true boolean. diff --git a/lisp/desktop.el b/lisp/desktop.el index f4622ae4961..291f28a79db 100644 --- a/lisp/desktop.el +++ b/lisp/desktop.el @@ -1289,7 +1289,7 @@ its window state. Internal use only." (visible (assq 'visibility filtered-cfg))) (setq filtered-cfg (cl-delete-if (lambda (p) (memq p '(visibility fullscreen width height))) - filtered-cfg)) + filtered-cfg :key #'car)) (when width (setq filtered-cfg (append `((user-size . t) (width . ,width)) filtered-cfg))) @@ -1302,7 +1302,11 @@ its window state. Internal use only." ;; Time to select or create a frame an apply the big bunch of parameters (if (setq frame (desktop--select-frame display filtered-cfg)) - (modify-frame-parameters frame filtered-cfg) + (modify-frame-parameters frame + (if (eq (frame-parameter frame 'fullscreen) fullscreen) + ;; Workaround for bug#14949 + (assq-delete-all 'fullscreen filtered-cfg) + filtered-cfg)) (setq frame (make-frame-on-display display filtered-cfg))) ;; Let's give the finishing touches (visibility, tool-bar, maximization).