GNU bug report logs - #19482
Changing to big font cause display problem

Previous Next

Package: emacs;

Reported by: 张海君 <netjune <at> icloud.com>

Date: Thu, 1 Jan 2015 18:52:02 UTC

Severity: normal

Fixed in version 25.1

Done: Alan Third <alan <at> idiocy.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: 张海君 <netjune <at> icloud.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 19482 <at> debbugs.gnu.org
Subject: bug#19482: Changing to big font cause display problem
Date: Sun, 22 Feb 2015 10:57:05 +0800
> 在 2015年2月21日,19:44,martin rudalics <rudalics <at> gmx.at> 写道:
> 
> `frame-inhibit-implied-resize' is defined only in Emacs 25 so you would
> have to test this with the "nightlies" I mentioned earlier.
> 
> Two more questions:
> 
> - After doing your `set-frame-font' how much of the frame do you see?
>  Do you see the upper left corner, the frame's title?  Do you notice
>  that the frame is larger than your display?  For example, if you can
>  see the frame's title, you should not see the frame's echo area.
> 
> - When you "maximize the frame and then restore its normal size" does
>  the frame have the size it had after the `set-frame-font' or did it
>  change in some way?  What does (window--dump-frame) give here?
> 
> martin


I see the doc of the variable 'frame-inhibit-implied-resize'. The new behavior is not what I want.

I like the following behavior:
When setting font, emacs changes frame's size, but the new size is adjusted to keep the whole frame visible.
This is more useful.  


- After setting font:
There's one frame. Frame's height didn't exceed height of display. So I could see both the frame' title and the echo area.
Frame' width exceeded width of display. I could see the upper left corner, but not the right border of the frame.

- When "maximize the frame and then restore its normal size":
Frame's width changed too much. Frame's height changed slightly(less than height of one text line).

Dumped results:
------------------- maximized -------------------------------
frame pixel: 1392 x 840   cols/lines: 77 x 24   units: 18 x 34
frame text pixel: 1370 x 836   cols/lines: 76 x 24
tool: 0  scroll: 0  fringe: 18  border: 2  right: 0  bottom: 0

#<window 3 on *scratch*>   parent: nil
pixel left: 0   top: 0   size: 1388 x 802   new: 802
char left: 0   top: 0   size: 77 x 23   new: 21
normal: 1.0 x 1.0   new: nil
body pixel: 1370 x 769   char: 76 x 22
width left fringe: 9  left margin: 0  right margin: 0
width right fringe: 9  scroll-bar: 0  divider: 0
height header-line: 0  mode-line: 33  divider: 0

#<window 4 on  *Minibuf-0*>   parent: nil
pixel left: 0   top: 802   size: 1388 x 34   new: 0
char left: 0   top: 23   size: 1388 x 1   new: 1
normal: 1.0 x 1.0   new: ignore
body pixel: 1370 x 34   char: 76 x 1
width left fringe: 9  left margin: 0  right margin: 0
width right fringe: 9  scroll-bar: 0  divider: 0
height header-line: 0  mode-line: 0  divider: 0

------------------- restored ----------------------------
frame pixel: 1554 x 840   cols/lines: 86 x 24   units: 18 x 34
frame text pixel: 1532 x 836   cols/lines: 85 x 24
tool: 0  scroll: 0  fringe: 18  border: 2  right: 0  bottom: 0

#<window 3 on *scratch*>   parent: nil
pixel left: 0   top: 0   size: 1550 x 802   new: 646
char left: 0   top: 0   size: 86 x 23   new: 33
normal: 1.0 x 1.0   new: nil
body pixel: 1532 x 769   char: 85 x 22
width left fringe: 9  left margin: 0  right margin: 0
width right fringe: 9  scroll-bar: 0  divider: 0
height header-line: 0  mode-line: 33  divider: 0

#<window 4 on  *Minibuf-0*>   parent: nil
pixel left: 0   top: 802   size: 1550 x 34   new: 0
char left: 0   top: 23   size: 1550 x 1   new: 1
normal: 1.0 x 1.0   new: ignore
body pixel: 1532 x 34   char: 85 x 1
width left fringe: 9  left margin: 0  right margin: 0
width right fringe: 9  scroll-bar: 0  divider: 0
height header-line: 0  mode-line: 0  divider: 0
---------------------------------------------------------------------

Emacs changes its frame size when setting font, but the frame size may be limited by window manager or something else.
So the frame's real size is not expected as emacs. Here emacs may get the real size and use the real size.










This bug report was last modified 9 years and 59 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.