emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Question about display engine


From: Eli Zaretskii
Subject: Re: Question about display engine
Date: Wed, 28 Aug 2019 20:21:45 +0300

> Cc: address@hidden, address@hidden
> From: martin rudalics <address@hidden>
> Date: Wed, 28 Aug 2019 14:19:03 +0200
> 
>  > I think we should simply not merge the background color of the region
>  > face when its extend bit is reset.  Then the merged face will not have
>  > that background color.
> 
> Then which background color would we use?  That of the comment was
> lost when setting up the current face for the iterator.

The one that was there before the region was activated.  Which one is
that will be determined by the order in which the merging process
merges the faces, and by the faces themselves -- whether they do or
don't define a background color, and whether they do or don't have the
:extend bit set.

>  > I don't see a problem here.  A user who doesn't want the region face's
>  > background extend to the end of line wants only text (as opposed to
>  > whitespace after the newline) to have the region's background, and
>  > that's true both to regions that cross line boundaries and regions that
>  > end at a newline.
> 
> I agree that we don't want to extend the region's background.  But the
> question I raised above still stands.

Did I answer it now?

> We could make :extend sticky in the sense that once an :extend for the
> background has been defined, it will apply to all higher priority faces
> as well.  This would make specifying a nil :extend value idempotent to
> not specifying a value at all as you (IIRC) proposed earlier.  But the
> mechanism then becomes considerably less powerful.

I don't think this will be needed, or even desirable.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]