Subject: bug#39649: 27.0.60; tab-line doesn't scroll

From: Juri Linkov <[email-masked]>
Date: Thu, 27 Feb 2020 01:33:00 +0200

> I suspect that the problem comes from the tab-line fontified differently
> by core and when fontified manually in the buffer.

Eli, could you explain why there no wrapper around the C function
display_mode_element exposed to Lisp.  The closest function is
format-mode-line but still its formatting is different from what
display_mode_element really displays in the tab-line.

Steps to reproduce the problem:

1. emacs -Q
2. M-x global-tab-line-mode

3. C-x b test1
4. M-: (insert (format-mode-line (tab-line-format)))
5. Note how the tab uses the face tab-line-tab
   with released-button box style, but the tab-line
   doesn't use the face tab-line

6. C-x b test2
7. M-: (insert (format-mode-line (tab-line-format) 'tab-line))
8. Note how the the tab-line now uses the face tab-line,
   but this face overrides the faces of individual tabs that
   should have the face tab-line-tab with released-button box style.

I can't find a function that would insert to the current buffer
a string formatted exactly as the tab-line displayed
above the window.