--- Begin Message ---
Subject: |
29.0.50; Wrong global-mode-string position in tab-bar + emacs -nw |
Date: |
Sat, 26 Nov 2022 18:46:08 -0300 |
Severity: bug
Description:
The global-mode-string is wrongly positioned in tab-bar when using
"emacs -nw" and multiple windows. The bug only happens with emacs -nw.
Steps:
1) emacs -Q -nw (master "af545234314601ba3dcd8bf32e0d9b46e1917f79")
2) Eval the following to add display-time-mode right-aligned to tab-bar:
(progn
(display-time-mode 1)
(setopt tab-bar-format '(tab-bar-format-tabs-groups
tab-bar-separator
tab-bar-format-align-right
tab-bar-format-global))
(tab-bar-mode 1))
3) Split window right: C-x 3
Result: the global-mode-string will be wrongly positioned. It expected
to be right-aligned to the current frame, but it's right-aligned to the
left window. The position is correct while minibuffer has focus. See
attached images.
one-window.png
Description: PNG image
bug.png
Description: PNG image
minibuffer-focus.png
Description: PNG image
---
Gabriel
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#59620: 29.0.50; Wrong global-mode-string position in tab-bar + emacs -nw |
Date: |
Fri, 02 Dec 2022 09:59:57 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) |
>> Avoiding the 'right' part in align-to has such a drawback that while
>> resizing the frame the position of the aligned element is not updated
>> immediately. It's updated only when display-time refreshes the time on
>> the tab bar. The position relative to the right edge has no such problem.
>> So better to leave the 'right' part on GUI frames, and switch to counting
>> from the left only on TTY frames where frames are resized less often:
>
> That would require you to make sure this code always runs in the context of
> the tab-bar (pseudo)window. If that can be ensured, fine.
Since this can't be ensured, I pushed a simpler patch to emacs-29,
and closed.
--- End Message ---