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

From: Juri Linkov <[email-masked]>
Date: Thu, 18 Mar 2021 21:00:41 +0200

>> I agree with Martin that `tab-bar-height' should return a meaningful value
>> on --without-x builds too.
>
> How do you propose to do that?  The design and implementation of the
> code in tab-bar-height was stolen from the tool bar, and that was
> written for GUI frames.  The text-mode tab bar has an entirely
> different design and implementation, similar to the text-mode menu
> bar.  There's almost nothing in common between these two.

Then the fix is not straightforward, indeed.

>> Please note this should be fixed on the release branch in Emacs 27.2
>> because the change in commit 6c5ddf0e0b was recently made in emacs-27.
>
> Why does it have to be done in Emacs 27.2?
>
> Please be aware that Emacs 27.2 is all but released at this point.

Martin said that the commit 6c5ddf0e0b added recently in emacs-27
should be reverted from Emacs 27.2.

>> I wonder why only tab-bar-height was added to frame-inner-height,
>> why not menu-bar-height as well?  Moreover, such function as
>> menu-bar-height doesn't exist at all.  Why only tab-bar-height is needed?
>
> Maybe tab-bar-height is not needed in this case, either.  We could
> instead modify the code that attempts to call it.

Grepping shows that the only code that calls frame-inner-height
is mouse-drag-frame-resize.