forked from aniani/vim
patch 8.2.2930: when a popup is visible a mouse move my restart Visual mode
Problem: When a popup is visible a mouse move my restart Visual mode. Solution: Reset held_button when ending Visual mode. (closes #8318)
This commit is contained in:
parent
0a808598e4
commit
85eee5b969
@ -2098,6 +2098,14 @@ nv_mouse(cmdarg_T *cap)
|
||||
(void)do_mouse(cap->oap, cap->cmdchar, BACKWARD, cap->count1, 0);
|
||||
}
|
||||
|
||||
static int held_button = MOUSE_RELEASE;
|
||||
|
||||
void
|
||||
reset_held_button()
|
||||
{
|
||||
held_button = MOUSE_RELEASE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Check if typebuf 'tp' contains a terminal mouse code and returns the
|
||||
* modifiers found in typebuf in 'modifiers'.
|
||||
@ -2123,7 +2131,6 @@ check_termcode_mouse(
|
||||
int is_release, release_is_ambiguous;
|
||||
int wheel_code = 0;
|
||||
int current_button;
|
||||
static int held_button = MOUSE_RELEASE;
|
||||
static int orig_num_clicks = 1;
|
||||
static int orig_mouse_code = 0x0;
|
||||
# ifdef CHECK_DOUBLE_CLICK
|
||||
|
@ -1380,6 +1380,7 @@ end_visual_mode(void)
|
||||
#endif
|
||||
|
||||
VIsual_active = FALSE;
|
||||
reset_held_button();
|
||||
setmouse();
|
||||
mouse_dragging = 0;
|
||||
|
||||
|
@ -13,6 +13,7 @@ int mouse_model_popup(void);
|
||||
int jump_to_mouse(int flags, int *inclusive, int which_button);
|
||||
void nv_mousescroll(cmdarg_T *cap);
|
||||
void nv_mouse(cmdarg_T *cap);
|
||||
void reset_held_button(void);
|
||||
int check_termcode_mouse(char_u *tp, int *slen, char_u *key_name, char_u *modifiers_start, int idx, int *modifiers);
|
||||
int mouse_comp_pos(win_T *win, int *rowp, int *colp, linenr_T *lnump, int *plines_cache);
|
||||
win_T *mouse_find_win(int *rowp, int *colp, mouse_find_T popup);
|
||||
|
@ -750,6 +750,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
2930,
|
||||
/**/
|
||||
2929,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user