Subject: Re: bug#76394: mouse-face property not working in tab-bar

From: Juri Linkov <[email-masked]>
Date: Thu, 27 Feb 2025 21:15:43 +0200

> My patch is all in xdisp.c so I don't follow. 

I see now that even when tab-bar-mode is enabled,
the settings take effect after refreshing the tab-bar.
So I just needed more time to test ;-)

>     > I assumed you knew how to use tab-bar :) I rarely use emojis but this
>     one I
>     > couldn't help myself.
>     >
>     > It also works with mouse-face on any spans of glyphs embedded in the
>     name
>     > string.
>
>     But this doesn't look normal, don't you think so?
>     tab-bar-mode enabled, then later disabled,
>     code evaluated, enabled again, and no effect.
>     Something is wrong here?  There are no other settings
>     that behave that way.
>
>     >     > (defun my/tab-bar-tab-name-format-function (tab i)
>     >     >   (propertize
>     >     >    (tab-bar-tab-name-format-default tab i)
>     >     >    'mouse-face '(:inverse-video t))) ; or a named face
>     >     > (setopt tab-bar-tab-name-format-function
>     >     > #'my/tab-bar-tab-name-format-function)
>     >     >
>     >     > And move the mouse over the tab. It should invert. It does for
>     me.
>     >
>     >     Thanks, now it works.  The requirement is that the tab-bar-mode
>     >     should be disabled before evaluating the above code.  Otherwise,
>     >     with already enabled tab-bar-mode it has no effect.