GNU bug report logs -
#7004
23.2; In fullscreen mode, the echo area takes too much vertical space
Previous Next
Reported by: Dani Moncayo <dmoncayo <at> gmail.com>
Date: Thu, 9 Sep 2010 15:13:02 UTC
Severity: minor
Merged with 15046
Found in versions 23.2, 24.3.50
Fixed in version 24.4
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Eli Zaretskii skrev 2010-09-13 14.37:
>> Date: Sat, 11 Sep 2010 09:50:30 +0200
>> From: Jan Djärv<jan.h.d <at> swipnet.se>
>> Cc: "7004 <at> debbugs.gnu.org"<7004 <at> debbugs.gnu.org>
>>
>> David De La Harpe Golden skrev 2010-09-11 02.10:
>>
>>> has support for displaying only part of a character line, at least at the
>>> bottom edge of a pane [emacs: window] (not sure about the top). It also
>>> supports partial character display at the right/left edge of the pane.
>
> That's right: Emacs does know how to display a partial line at the
> bottom of a window (not at the top, though, IIRC). The question is
> why doesn't it happen in the OP's case.
>
> Perhaps that is some unintended side effect of how a frame is
> maximized on X (I cannot reproduce the problem on MS-Windows). What
> happens if the frame is enlarged (e.g., by the mouse) instead?
The resizing is constrained to increments of the font size, so it is not
possible to resize it manually to a fraction of the font size.
If we remove that constraint by editing the source it will show the same
behavour, extra pixels are unused at the bottom of the frame.
>
>> Windows use code like this all over the place:
>>
>> /* Return the frame y-position before which window W ends.
>> This includes a mode line, if any. */
>>
>> #define WINDOW_BOTTOM_EDGE_Y(W) \
>> (((WINDOW_MENU_BAR_P (W) || WINDOW_TOOL_BAR_P (W)) \
>> ? 0 : FRAME_INTERNAL_BORDER_WIDTH (WINDOW_XFRAME (W))) \
>> + WINDOW_BOTTOM_EDGE_LINE (W) * WINDOW_FRAME_LINE_HEIGHT (W))
>>
>>
>> i.e. pixels = lines * font height.
>
> No, your conclusion is incorrect. See the comment above this macro:
> this is the Y pixel coordinate _before_ which the window ends. If the
> last line is only partially visible, the this macro will return a
> value that is beyond the actual window display area.
>
> IOW, the fact that Emacs counts pixels in increments of the frame's
> default font size does not contradict the ability of displaying
> partially visible lines at the window bottom. When I maximize a frame
> on Windows, that is what I get: the last line is only partially
> visible. Why doesn't this happen for the OP on X?
I know it can dispay partial lines, info does that on its first page, for
example, since the title is in a larger font.
But I don't know of any function that sizes a window by pixels. All the
resizing code does is to calculate rows and columns from the pixel sizes and
the call change_frame_size. That in turn resizes windows, but just based on
lines and columns, not pixels AFAIK.
I see that W32 does that also, so how can it be different?
Jan D.
This bug report was last modified 11 years and 161 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.