Subject: bug#41852: 27.0.50; text-scale commands don't scale header of tabulated-list-mode

From: Eli Zaretskii <[email-masked]>
Date: Mon, 19 Oct 2020 22:02:04 +0300

> From: Stefan Kangas <[email-masked]>
> Date: Mon, 19 Oct 2020 18:21:06 +0000
> Cc: [email-masked], [email-masked]
> 
> > This should mention modes that arrange their display in tabular form
> > below the header-line, such as tabulated-list-mode and its
> > descendants.  Otherwise the last sentence and the goal of the feature
> > itself are left on a level that's too abstract.
> 
> I've made an attempt to improve this in the attached.

LGTM, thanks.

> >> -(make-variable-buffer-local 'text-scale-mode-remapping)
> >> +(make-obsolete-variable 'text-scale-mode-remapping "no longer used." "28.1")
> >> +
> >> +(defvar text-scale-mode--remappings nil
> >> +  "List of current remapping cookies for `text-scale-mode'.")
> >
> > Why this change?
> 
> This is to give the variable the correct plural form, and to mark it
> internal by giving it the double dash.

Can we continue supporting text-scale-mode-remapping in
text-scale-mode--remappings?  I'd like to avoid backward-incompatible
changes if possible.

> >> +(defun face-remap--remap-face (sym)
> >> +  (push (face-remap-add-relative sym
> >> +                       :height
> >> +                       (expt text-scale-mode-step
> >> +                             text-scale-mode-amount))
> >> +        text-scale-mode--remappings))
> >
> > I wonder whether this is all there is to it.  The display code doesn't
> > automatically use the remapped face in all cases, we need to code that
> > "by hand" in each and every case.  So far we've been doing that only
> > for the default face; I wonder if we'll have to do something similar
> > for header-line on the C level...  Please be sure to test this in
> > every possible way, including cursor motion around such rescaled
> > header-lines etc.
> 
> I've done my best to test it some more, including cursor motion around
> the adjusted header line, as well as scrolling the window left and right
> and up and down (using mouse and keyboard).  I've not been able to
> produce any failures so far.  Please let me know if you have any more
> ideas for what I could do to try to break it.

Do mouse clicks work well, even if you click close to the edges of a
much-enlarged header-line?

Otherwise the changes look fine to me, thanks.