comparison lisp/subr.el @ 83488:f47495b26508

Fix ediff problems. (Reported by Dan Nicolaescu.) * lisp/subr.el (with-selected-frame): Make sure the current buffer is restored as well. * src/xfns.c (Fx_create_frame): Use `store_frame_param' to set `window-system' frame parameter, and make sure it overrides any user-supplied setting. * src/xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'. (Also applied in CVS.) * lisp/faces.el (x-create-frame-with-faces): Don't make frame visible until we are done setting up all its parameters. * lisp/ediff-wind.el (ediff-setup-windows-automatic): New function. (ediff-window-setup-function): Use it as default. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-528
author Karoly Lorentey <lorentey@elte.hu>
date Sun, 12 Mar 2006 04:12:31 +0000
parents 8976b9f5eda1
children 81f2d90dee68
comparison
equal deleted inserted replaced
83487:414faf8dce4e 83488:f47495b26508
2128 (defmacro with-selected-frame (frame &rest body) 2128 (defmacro with-selected-frame (frame &rest body)
2129 "Execute the forms in BODY with FRAME as the selected frame. 2129 "Execute the forms in BODY with FRAME as the selected frame.
2130 The value returned is the value of the last form in BODY. 2130 The value returned is the value of the last form in BODY.
2131 See also `with-temp-buffer'." 2131 See also `with-temp-buffer'."
2132 (declare (indent 1) (debug t)) 2132 (declare (indent 1) (debug t))
2133 `(let ((save-selected-frame (selected-frame))) 2133 (let ((old-frame (make-symbol "old-frame"))
2134 (unwind-protect 2134 (old-buffer (make-symbol "old-buffer")))
2135 (progn (select-frame ,frame) 2135 `(let ((,old-frame (selected-frame))
2136 ,@body) 2136 (,old-buffer (current-buffer)))
2137 (if (frame-live-p save-selected-frame) 2137 (unwind-protect
2138 (select-frame save-selected-frame))))) 2138 (progn (select-frame ,frame)
2139 ,@body)
2140 (if (frame-live-p ,old-frame)
2141 (select-frame ,old-frame))
2142 (if (buffer-live-p ,old-buffer)
2143 (set-buffer ,old-buffer))))))
2139 2144
2140 (defmacro with-temp-file (file &rest body) 2145 (defmacro with-temp-file (file &rest body)
2141 "Create a new buffer, evaluate BODY there, and write the buffer to FILE. 2146 "Create a new buffer, evaluate BODY there, and write the buffer to FILE.
2142 The value returned is the value of the last form in BODY. 2147 The value returned is the value of the last form in BODY.
2143 See also `with-temp-buffer'." 2148 See also `with-temp-buffer'."