GNU bug report logs - #37774
27.0.50; new :extend attribute broke visuals of all themes and other packages

Previous Next

Package: emacs;

Reported by: Andrey Orst <andreyorst <at> gmail.com>

Date: Wed, 16 Oct 2019 07:32:01 UTC

Severity: normal

Found in version 27.0.50

Done: Dmitry Gutov <dgutov <at> yandex.ru>

Bug is archived. No further changes may be made.

Full log


Message #377 received at 37774 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Dmitry Gutov <dgutov <at> yandex.ru>
Cc: 37774 <at> debbugs.gnu.org, juri <at> linkov.net
Subject: Re: bug#37774: 27.0.50;
 new :extend attribute broke visuals of all themes and other packages
Date: Mon, 25 Nov 2019 18:00:33 +0200
> From: Dmitry Gutov <dgutov <at> yandex.ru>
> Date: Mon, 25 Nov 2019 02:29:26 +0200
> 
> > At least, I see that even though diff-refine-added and diff-refine-removed
> > faces have no :extend face attribute, but still extend to the window edge.
> 
> Indeed. I'm attaching a screenshot to illustrate.

Thanks.  Face merging didn't work correctly with faces some of which
have :extend non-nil and some don't, when face inheritance was
involved.

Should be fixed now.

> BTW, the diff-context needs ':extend t' as well.

Feel free to make that change (although when did you last see a
context diff?).

> But that's of little importance since as soon as I load a custom
> theme, whatever defaults were there don't seem to matter.

We need to modify all the themes we provide to specify :extend for
faces where we do that by default.  It seems there's no way around
that, since the semantics of custom-theme-set-faces is clearly to
reset all face attributes to 'unspecified' before applying the face
spec, so keeping some attributes from the default face spec is out of
the question, unfortunately.  It's clear that the faces stuff was not
designed to accommodate addition of attributes easily.




This bug report was last modified 5 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.