Subject: Re: bug#47234: 28.0.50; frame-inner-height fails without window system on tab-bar-height

From: "Basil L. Contovounesios" <[email-masked]>
Date: Thu, 18 Mar 2021 15:22:48 +0000

Eli Zaretskii <[email-masked]> writes:

>> From: "Basil L. Contovounesios" <[email-masked]>
>> Cc: [email-masked],  [email-masked]
>> Date: Thu, 18 Mar 2021 14:57:52 +0000
>> 
>> > TRT is to teach Emacs to return the tab-bar height on TTY frames as
>> > well.  But I don't think defining tab-bar-height on TTY frames is the
>> > right way: the tab-bar is always 1 line high on those frames, so we
>> > could simply use that hardcoded value instead of signaling an error, I
>> > think.
>> 
>> I'm not familiar with the tab bar, but I get the impression it's not
>> that simple.
>
> To be sure, I didn't mean to use just the number 1 there.

I assumed you meant something like:

  (cond ((fboundp 'tab-bar-height) (tab-bar-height frame t))
        (tab-bar-mode 1)
        (0))

(At least that was my first thought.)

>> IIUC no lines should be subtracted if tab-bar-mode is off,
>> and even if it's on, the tab bar can be hidden subject to tab-bar-show.
>> That's why I was wondering whether this logic can/should be packed into
>> a single place (whether Ftab_bar_height or other I don't know).
>> 
>> Is the following close to TRT?
>
> If it produces the right result under all of the complications you
> mentioned, sure.

Thanks, it does AFAICT.  Hopefully Juri can confirm/deny for certain.
(For example, I don't know when one would pick Ftab_bar_height over the
frame property tab-bar-lines - maybe the latter can be used
unconditionally?)

-- 
Basil