Subject: Re: bug#79141: 31.0.50; The tab-bar-format-align-right cache doesn't take face changes and per-frame faces into account

From: Daniel Mendler <[email-masked]>
Date: Wed, 13 Aug 2025 19:19:09 +0200

Juri Linkov <[email-masked]> writes:

>>> How often your tab-bar is updated?  For frequent string-pixel-width calls
>>> using debounce or throttle like from https://github.com/karthink/timeout
>>> could help.
>>
>> It is recomputed completely on every redisplay. It might be possible to
>> throttle the tab bar recomputation, such that it happens only a few
>> times per second. This will lead to other difficulties however, since in
>> some cases the tab bar should react immediately (e.g., when creating new
>> tabs or when toggling some elements).
>
> What I actually meant is more like setting a short cache eviction time,
> for example 1 sec after changing the faces the tab-bar will be
> in a broken state using an old cached value, but later the width
> will be recomputed and updated.

Yes, this would work, but it might also look a bit broken. A
face-modified-tick sounds like a better solution to me.

Daniel