Subject: Re: bug#42052: 28.0.50; tab-bar-mode should be frame-local

From: James N. V. Cash <[email-masked]>
Date: Sun, 28 Jun 2020 08:15:49 -0400

Juri Linkov <[email-masked]> writes:

>> When setting tab-bar-show to `1`, I expect the tab bar to only show if
>> there is more than one tab in the frame.
>>
> If someone will point out an example of frame-local modes,
> this could help in implementing the same for tab-bar-mode.

Looking at how the tab-bar-mode currently works, the thing that seems
simplest to me would be to change the various functions that
conditionally turn tab-bar-mode on/off (e.g. in tab-bar-new-tab-to)
to have an additional check if (natnump tab-bar-show), in which case
instead of calling (tab-bar-mode 1) or -1, setting the frame parameter
tab-bar-lines for that particular frame to be 1 or 0, as appropriate.

The wrinkle would be, I suppose, having to remove all the frame-local
settings if tab-bar-show changes, but presumably that wouldn't be
happening too often.

A frame-local toggling of the tab bar could work the same way.

If that makes sense (i.e. having the setting be frame local only when
tab-bar-show is 1), I can try submitting a patch later today.

James Cash