Subject: Re: bug#50660: 28.0.50; Text artifacting when the cursor moves over text under mouse face that originally displayed a box

From: Eli Zaretskii <[email-masked]>
Date: Thu, 14 Oct 2021 11:58:19 +0300

> From: Po Lu <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Sat, 02 Oct 2021 20:52:58 +0800
> 
> Thanks for the comments, I'm attaching a rectified patch.

Thanks, I installed this on the master branch with a few minor
stylistic fixes.  In the future, please try posting a patch formatted
with "git format-patch", or at least accompany the patch with a
ChangeLog-style commit log entry.  (I wrote the log message for you
this time.)

It looks like something is still amiss: the cursor blinking display is
incorrect in some cases.  For example, evaluate this in a buffer under
Fundamental mode:

  (insert (propertize "some sample text" 'face '(:box 10) 'mouse-face 'highlight))

and then put the mouse pointer above the text, so it's highlighted,
and move the text cursor to the first 's' or the last 't'.  As long as
the cursor blinks, you will see two characters drawn in the cursor
face, not one as expected.

Also, in your original recipe with list-faces-display, if the text
cursor is at the first character of the "abcdefg..." text of a line
with mode-line-highlight face, moving the mouse pointer to and from
the text, thus intermittently highlighting and de-highlighting it,
leaves artifacts of the 'a' character on display.

So I'm not closing this bug yet, as some work still needs to be
invested to clean up those minor remaining issues.

Thanks.