mirror of
https://github.com/vim/vim.git
synced 2025-09-29 04:34:16 -04:00
patch 8.0.0628: cursor disappears after silent mapping
Problem: Cursor disappears after silent mapping. (Ramel Eshed) Solution: Do restore the cursor when it was changed, but don't change it in the first place for a silent mapping.
This commit is contained in:
@@ -2583,7 +2583,7 @@ vgetorpeek(int advance)
|
|||||||
* get a character: 3. from the user - handle <Esc> in Insert mode
|
* get a character: 3. from the user - handle <Esc> in Insert mode
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
* special case: if we get an <ESC> in insert mode and there
|
* Special case: if we get an <ESC> in insert mode and there
|
||||||
* are no more characters at once, we pretend to go out of
|
* are no more characters at once, we pretend to go out of
|
||||||
* insert mode. This prevents the one second delay after
|
* insert mode. This prevents the one second delay after
|
||||||
* typing an <ESC>. If we get something after all, we may
|
* typing an <ESC>. If we get something after all, we may
|
||||||
@@ -2617,8 +2617,8 @@ vgetorpeek(int advance)
|
|||||||
mode_deleted = TRUE;
|
mode_deleted = TRUE;
|
||||||
}
|
}
|
||||||
#ifdef FEAT_GUI
|
#ifdef FEAT_GUI
|
||||||
/* may show different cursor shape */
|
/* may show a different cursor shape */
|
||||||
if (gui.in_use)
|
if (gui.in_use && State != NORMAL && !cmd_silent)
|
||||||
{
|
{
|
||||||
int save_State;
|
int save_State;
|
||||||
|
|
||||||
@@ -2913,16 +2913,8 @@ vgetorpeek(int advance)
|
|||||||
}
|
}
|
||||||
#ifdef FEAT_GUI
|
#ifdef FEAT_GUI
|
||||||
/* may unshow different cursor shape */
|
/* may unshow different cursor shape */
|
||||||
if (gui.in_use)
|
if (gui.in_use && shape_changed)
|
||||||
{
|
gui_update_cursor(TRUE, FALSE);
|
||||||
if (cmd_silent)
|
|
||||||
gui_dont_update_cursor(TRUE);
|
|
||||||
else
|
|
||||||
gui_can_update_cursor();
|
|
||||||
|
|
||||||
if (shape_changed)
|
|
||||||
gui_update_cursor(TRUE, FALSE);
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
--vgetc_busy;
|
--vgetc_busy;
|
||||||
|
@@ -764,6 +764,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
628,
|
||||||
/**/
|
/**/
|
||||||
627,
|
627,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user