Do not stop drag on double or triple click, GitHub issue 4272.

This commit is contained in:
nicm 2024-11-27 10:10:20 +00:00
parent 6f7db82b18
commit feb090abb3

View File

@ -83,7 +83,7 @@ RB_GENERATE(client_windows, client_window, entry, server_client_window_cmp);
u_int u_int
server_client_how_many(void) server_client_how_many(void)
{ {
struct client *c; struct client *c;
u_int n; u_int n;
n = 0; n = 0;
@ -884,7 +884,11 @@ have_event:
m->wp = -1; m->wp = -1;
/* Stop dragging if needed. */ /* Stop dragging if needed. */
if (type != DRAG && type != WHEEL && c->tty.mouse_drag_flag != 0) { if (type != DRAG &&
type != WHEEL &&
type != DOUBLE &&
type != TRIPLE &&
c->tty.mouse_drag_flag != 0) {
if (c->tty.mouse_drag_release != NULL) if (c->tty.mouse_drag_release != NULL)
c->tty.mouse_drag_release(c, m); c->tty.mouse_drag_release(c, m);
@ -2248,7 +2252,7 @@ server_client_is_bracket_paste(struct client *c, key_code key)
} }
if (key == KEYC_PASTE_END) { if (key == KEYC_PASTE_END) {
c->flags &= ~CLIENT_BRACKETPASTING; c->flags &= ~CLIENT_BRACKETPASTING;
log_debug("%s: bracket paste off", c->name); log_debug("%s: bracket paste off", c->name);
return (0); return (0);
} }
@ -3725,7 +3729,7 @@ const char *
server_client_get_flags(struct client *c) server_client_get_flags(struct client *c)
{ {
static char s[256]; static char s[256];
char tmp[32]; char tmp[32];
*s = '\0'; *s = '\0';
if (c->flags & CLIENT_ATTACHED) if (c->flags & CLIENT_ATTACHED)