GNU bug report logs -
#79141
31.0.50; The tab-bar-format-align-right cache doesn't take face changes and per-frame faces into account
Previous Next
Full log
View this message in rfc822 format
> From: Daniel Mendler <mail <at> daniel-mendler.de>
> Cc: Steven Allen <steven <at> stebalien.com>, juri <at> linkov.net,
> 79141 <at> debbugs.gnu.org
> Date: Wed, 06 Aug 2025 21:47:57 +0200
>
> Eli Zaretskii <eliz <at> gnu.org> writes:
>
> >> 1. Have a per-frame cache.
> >> 2. Update a global `face-modification-tick' (similar to
> >> `buffer-modification-tick') whenever faces are updated, invalidating the
> >> cache whenever this changes.
> >
> > Please be advised that the current code invalidates the frame's face
> > cache and frees all the faces whenever some face is changed. That's
> > because we don't currently track face dependencies, and so have no
> > idea what other faces will change as result of changing some face. So
> > if you want a more efficient face cache, you first need to solve this
> > dependency-tracking issue.
>
> Couldn't this face cache invalidation logic be used here? Whenever such
> a face cache invalidation happens, the proposed `face-modification-tick'
> variable would be incremented.
I don't quite understand what would that tick be used for, but we
already have in Emacs indications that the face cache was invalidated,
so maybe there's no need for introducing that tick.
This bug report was last modified 2 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.