Subject: Re: bug#23574: 24.5; Overzealous underlining in emacs-nox

From: martin rudalics <[email-masked]>
Date: Fri, 10 Jun 2016 09:16:02 +0200

>> OK.  But with my property list approach a once calculated bitmap would
 >> have simply overridden the face of the iterator object.
 >
 > Your suggestion included a function, which could well return different
 > values on each call.
 >
 > And creating new faces from arbitrary sets of attributes is no fun,
 > either.

OK.  I was not fond of my proposal anyway.

 >> Suppose a user wants to use the same background for all spaces at the
 >> ends of all lines of a buffer regardless of "the last face used on the
 >> line".  How would she specify that?
 >
 > By putting the proper face property on the newline.

Which gets me back to my initial concern: If our user does that eagerly
for the entire buffer, the overhead might be non-negligible.  A more
lazy solution would require to hook into ‘pre-redisplay-functions’ or
something the like in order to know which lines get displayed.  Would
‘pre-redisplay-functions’ be a suitable place for that?

martin

A loosely related question: Does for R2L text row->pixel_width for each
glyph row indicate the width of that row occupied by text as it does for
L2R text?  Suppose we have a L2R line with dots indicating the empty
space at the end of that line:

TTTTTTTTTTTTT....

R2L this line would appear as

....TTTTTTTTTTTTT

Would these two lines have the same row->pixel_width?  Or, would the
length of the stretch glyph added at the left of the R2L line be that of
‘window-text-width’ minus row->pixel_width?