]> git.ipfire.org Git - thirdparty/vim.git/commit
patch 9.1.0856: mouseshape might be wrong on r and gr v9.1.0856
authorYee Cheng Chin <ychin.git@gmail.com>
Mon, 11 Nov 2024 20:57:27 +0000 (21:57 +0100)
committerChristian Brabandt <cb@256bit.org>
Mon, 11 Nov 2024 20:57:27 +0000 (21:57 +0100)
commita1b654ff36a9d3a22d632d7eeaddb8224e621928
treee5bd97260a24cb05665289bde697663254bdd5e3
parent2e48567007f2becd484a3c3dd0706bf3a0beeae7
patch 9.1.0856: mouseshape might be wrong on r and gr

Problem:  mouseshape might be wrong on r and gr
Solution: call update_mousesape(-1) immediately
          (Yee Cheng Chin)

Currently, when entering the "pretend" or single character replace modes
using `r` or `gr`, the mouse cursor doesn't immediately update until you
have re-focused the window or moved the mouse. This is because it's not
calling `update_mouseshape(-1)` immediately, so the cursor will only be
updated when it's called by other functions like `gui_mouse_focus`.

To fix this, just make sure we call this `update_mouseshape(-1)`. It's
what we do when entering Insert or Replace modes for example.

I noticed this when trying to figure out why MacVim CI is failing in
`Test_mouse_shape_after_cancelling_gr` (introduced in #12110), but I
think that test is only passing in Vim GTK CI by accident, since this
issue happens there too. I think the window captured focus after the
mouse `gr` call which triggers a mouse shape change but it probably
would have failed under other circumstances.

fixes: #14660
closes: #12157

Signed-off-by: Yee Cheng Chin <ychin.git@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
src/normal.c
src/version.c