I reported this issue because I once wanted to search the Emacs codebase for a string, such as "mouse-1: some tips" on mouse hover, but couldn't find it. Later I realized that it was automatically mapped to "mouse-2". Emacs seems to recognize some keywords (e.g. "mouse-1", "mouse-2") at the beginning of the string on help-echo.

Anyway, now I know what happened there.

Thanks.

Best regards,
Siyuan Chen

On Mon, Jun 17, 2024 at 3:03 AM Eli Zaretskii <eliz@gnu.org> wrote:
tags 71598 notabug
thanks

> From: Siyuan Chen <chansey97@gmail.com>
> Date: Mon, 17 Jun 2024 00:34:35 +0800
>
> 1. Open Emacs with -Q
>
> 2. Copy the following code to *scratch*
>
> ```
> (with-current-buffer (get-buffer-create "*TestBuffer*")
>   (let ((inhibit-read-only t))
>     (insert (propertize "aaaa"
>                         'mouse-face 'highlight
>                         'follow-link t
>                         'help-echo "mouse-2: some tips"))
>     ))
> ```
>
> 3. Put the cursor after the last parenthesis and M-x `eval-last-sexp`
>
> 4. M-x `switch-to-buffer` "*TestBuffer*"
>
> 5. Put the mouse over "aaaa".
>
> The Expected Behavior: shows "mouse-2: some tips".
>
> The Actual Behavior: shows "mouse-1: some tips".

This is not a bug, but the intended behavior.  It is triggered by the
follow-link text property and the default value of
mouse-1-click-follows-link.  If you don't like this behavior, set
mouse-1-click-follows-link to nil.