]> git.eshelyaron.com Git - emacs.git/commitdiff
(modify-all-frames-parameters): Reinstall (copyright papers received).
authorJuanma Barranquero <lekktu@gmail.com>
Sun, 13 Jul 2003 17:48:58 +0000 (17:48 +0000)
committerJuanma Barranquero <lekktu@gmail.com>
Sun, 13 Jul 2003 17:48:58 +0000 (17:48 +0000)
lisp/frame.el

index 8ed5776550e9286671e2c95d8536d7adb6330f6a..f8df2c7a2ec114191e558e24abf8018117fed24b 100644 (file)
@@ -505,6 +505,26 @@ React to settings of `default-frame-alist', `initial-frame-alist' there."
 
 ;;;; Creation of additional frames, and other frame miscellanea
 
+(defun modify-all-frames-parameters (alist)
+  "modify all current and future frames parameters according to ALIST.
+This changes `default-frame-alist' and possibly `initial-frame-alist'.
+See help of `modify-frame-parameters' for more information."
+  (let (element)                       ;; temp
+    (dolist (frame (frame-list))
+      (modify-frame-parameters frame alist))
+
+    (dolist (pair alist)               ;; conses to add/replace
+      ;; initial-frame-alist needs setting only when
+      ;; frame-notice-user-settings is true
+      (and frame-notice-user-settings
+          (setq element (assoc (car pair) initial-frame-alist))
+          (setq initial-frame-alist (delq element initial-frame-alist)))
+      (and (setq element (assoc (car pair) default-frame-alist))
+          (setq default-frame-alist (delq element default-frame-alist)))))
+  (and frame-notice-user-settings
+       (setq initial-frame-alist (append initial-frame-alist alist)))
+  (setq default-frame-alist (append default-frame-alist alist)))
+
 (defun get-other-frame ()
   "Return some frame other than the current frame.
 Create one if necessary.  Note that the minibuffer frame, if separate,