Mercurial > hg > xemacs-beta
diff lisp/prim/frame.el @ 151:59463afc5666 r20-3b2
Import from CVS: tag r20-3b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 09:37:19 +0200 |
parents | b980b6286996 |
children | 0132846995bd |
line wrap: on
line diff
--- a/lisp/prim/frame.el Mon Aug 13 09:36:20 2007 +0200 +++ b/lisp/prim/frame.el Mon Aug 13 09:37:19 2007 +0200 @@ -837,9 +837,8 @@ (or (get mode 'frame-name) get-frame-for-buffer-default-frame-name))) - -(defun get-frame-for-buffer-make-new-frame (buffer &optional frame-name) - (let* ((fr (make-frame (and frame-name (list (cons 'name frame-name))))) +(defun get-frame-for-buffer-make-new-frame (buffer &optional frame-name plist) + (let* ((fr (make-frame plist)) (w (frame-root-window fr))) ;; ;; Make the one buffer being displayed in this newly created @@ -874,6 +873,7 @@ ;; name. That always takes priority. ;; (let ((limit (get name 'instance-limit)) + (defaults (get name 'frame-defaults)) (matching-frames '()) frames frame already-visible) ;; Sort the list so that iconic frames will be found last. They @@ -911,7 +911,11 @@ ((or (null matching-frames) (eq limit 0) ; means create with reckless abandon (and limit (< (length matching-frames) limit))) - (get-frame-for-buffer-make-new-frame buffer name)) + (get-frame-for-buffer-make-new-frame + buffer + name + (alist-to-plist (acons 'name name + (plist-to-alist defaults))))) (t ;; do not switch any of the window/buffer associations in an ;; existing frame; this function only picks a frame; the