diff lisp/frame.el @ 82984:3b1f99f17618

Merged in changes from CVS head Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-5 Add =cvs-sync-make-log script * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-6 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-7 Use absolute tla-tools filenames in =cvs-sync-make-log * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-8 Use proper arch-tag: syntax for lispintro/texinfo.tex * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-9 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-24
author Karoly Lorentey <lorentey@elte.hu>
date Tue, 30 Dec 2003 17:05:05 +0000
parents fe9b37bee5f7 45cc6f8abd8d
children 2ecd1f669db9
line wrap: on
line diff
--- a/lisp/frame.el	Tue Dec 30 17:02:33 2003 +0000
+++ b/lisp/frame.el	Tue Dec 30 17:05:05 2003 +0000
@@ -85,8 +85,9 @@
   :group 'frames)
 
 (setq pop-up-frame-function
-      (function (lambda ()
-		  (make-frame pop-up-frame-alist))))
+      ;; Using `function' here caused some sort of problem.
+      '(lambda ()
+	 (make-frame pop-up-frame-alist)))
 
 (defcustom special-display-frame-alist
   '((height . 14) (width . 80) (unsplittable . t))
@@ -335,10 +336,22 @@
 					   frame-initial-geometry-arguments)))
 		   (top (frame-parameter frame-initial-frame 'top)))
 	      (when (and (consp initial-top) (eq '- (car initial-top)))
-		(setq newparms
-		      (append newparms
-			      `((top . ,(+ top (* lines char-height))))
-			      nil)))
+		(let ((adjusted-top
+		       (cond ((and (consp top)
+				   (eq '+ (car top)))
+			      (list '+
+				    (+ (cadr top)
+				       (* lines char-height))))
+			     ((and (consp top)
+				   (eq '- (car top)))
+			      (list '-
+				    (- (cadr top)
+				       (* lines char-height))))
+			     (t (+ top (* lines char-height))))))
+		  (setq newparms
+			(append newparms
+				`((top . ,adjusted-top))
+				nil))))
 	      (modify-frame-parameters frame-initial-frame newparms)
 	      (tool-bar-mode -1)))))