[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#19869: 25.0.50; default-frame-alist: width versus fullheight
From: |
martin rudalics |
Subject: |
bug#19869: 25.0.50; default-frame-alist: width versus fullheight |
Date: |
Sun, 15 Feb 2015 12:35:52 +0100 |
> There is some inconsistent behavior when setting the with of new
> frames depending on whether fullheight is specified:
>
>
> (progn
> (set-face-attribute 'default nil :height 175)
> (setq default-frame-alist
> '((width . 100)
> ;; (fullscreen . fullheight)
> ))
> (frame-width (make-frame))) ==> 100
>
>
> OTOH:
>
> (progn
> (set-face-attribute 'default nil :height 175)
> (setq default-frame-alist
> '((width . 100)
> (fullscreen . fullheight)
> ))
> (frame-width (make-frame))) ==> 63
>
>
> I would expect that the results are equal.
They are here (Gtk+, Lucid, Motif and Windows) so probably your window
manager interferes in some way. I tried with your second form as my
.emacs and by evaluating it in *scratch* with emacs -Q.
> A related bug was #1522, btw.
I'm not sure. Doesn't your behavior depend on doing
`set-face-attribute' first?.
Anyway, this gives us a good case for doing some forensics. Please
evaluate
(setq frame-size-history '(1000))
(defun window-display-history ()
"..."
(interactive)
(with-current-buffer-window
"*history*" nil nil
(let ((history (cdr frame-size-history))
element sizes rest)
(while history
(setq element (car history))
(when (eq (car element) (selected-frame))
(when (setq sizes (nth 2 element))
(insert (format "%sx%s -> %sx%s "
(nth 0 sizes) (nth 1 sizes)
(nth 2 sizes) (nth 3 sizes))))
(insert (format "%s" (nth 1 element)))
(when (setq rest (nth 3 element))
(while rest
(insert (format " %s" (car rest)))
(setq rest (cdr rest))))
(insert "\n"))
(setq history (cdr history)))))
'history)
in *scratch* and evaluate your second form (the one where you set
fullheight). Go to the new frame you created this way, type
M-x: window-display-history
in it and post the contents of the *history* buffer here.
If you want to do the same when that form is in your .emacs we'll have
to proceed in a slightly different way. Let's do that later.
Thanks, martin