Subject: Re: bug#14233: 24.3; Don't constrain frame size to character multiples

From: Eli Zaretskii <[email-masked]>
Date: Sat, 20 Apr 2013 20:12:42 +0300

> From: "Drew Adams" <[email-masked]>
> Date: Sat, 20 Apr 2013 09:22:05 -0700
> Cc: [email-masked], [email-masked]
> 
> There are other exceptions too, besides tiling WMs and fullscreen.  The "text"
> area can include images, boxed text (which can increase the apparent char
> height/width), fonts of different sizes in the same line, and various other
> display artifacts/properties.

Yes.  But there are no problems with that, and it is unrelated to this
discussion.

> IOW, "Text" and the text area are not just about lines and columns anymore, at
> least when it comes to resizing a window or frame to fit it.

"Lines and columns" are just units of measurement in the context of
this discussion.  No one is saying that Emacs should be able to
display only integral number of characters and lines; that restriction
was removed in Emacs 21, and no one would even dream about going back.

> Users should be able to calculate the needed "text" area to display a given
> buffer portion well (i.e. to fit it).

Users cannot calculate that, because the dimensions of the images and
even characters of non-default fonts are not exposed to Lisp.  Lisp
programs can only guess what the required dimensions will be.  In
"normal" windows that display some buffer, you could perhaps use
posn-at-point and such to find some approximation, but in special
windows like the tool bar you cannot do even that (because they are
produced from strings, not from some buffer, and those strings are
constructed internally by the display engine and not accessible from
Lisp).  And with some modern toolkits, the tool bar is not even built
by Emacs.

The character units dimensions discussed here are for the "canonical"
characters, which means _some_ character from the frame's default
face's font.

IOW, I cannot possibly see how your comments are related to what is
being discussed here.