mirror of
https://github.com/tmux/tmux.git
synced 2025-04-26 23:18:50 +00:00
Merge branch 'obsd-master'
This commit is contained in:
commit
789cb91f31
@ -74,7 +74,7 @@ cmd_send_keys_inject_key(struct cmdq_item *item, struct cmdq_item *after,
|
|||||||
if (tc == NULL)
|
if (tc == NULL)
|
||||||
return (item);
|
return (item);
|
||||||
event = xmalloc(sizeof *event);
|
event = xmalloc(sizeof *event);
|
||||||
event->key = key;
|
event->key = key|KEYC_SENT;
|
||||||
memset(&event->m, 0, sizeof event->m);
|
memset(&event->m, 0, sizeof event->m);
|
||||||
if (server_client_handle_key(tc, event) == 0)
|
if (server_client_handle_key(tc, event) == 0)
|
||||||
free(event);
|
free(event);
|
||||||
|
@ -462,6 +462,8 @@ out:
|
|||||||
strlcat(out, "B", sizeof out);
|
strlcat(out, "B", sizeof out);
|
||||||
if (saved & KEYC_EXTENDED)
|
if (saved & KEYC_EXTENDED)
|
||||||
strlcat(out, "E", sizeof out);
|
strlcat(out, "E", sizeof out);
|
||||||
|
if (saved & KEYC_SENT)
|
||||||
|
strlcat(out, "S", sizeof out);
|
||||||
strlcat(out, "]", sizeof out);
|
strlcat(out, "]", sizeof out);
|
||||||
}
|
}
|
||||||
return (out);
|
return (out);
|
||||||
|
@ -1887,7 +1887,9 @@ server_client_key_callback(struct cmdq_item *item, void *data)
|
|||||||
goto forward_key;
|
goto forward_key;
|
||||||
|
|
||||||
/* Treat everything as a regular key when pasting is detected. */
|
/* Treat everything as a regular key when pasting is detected. */
|
||||||
if (!KEYC_IS_MOUSE(key) && server_client_assume_paste(s))
|
if (!KEYC_IS_MOUSE(key) &&
|
||||||
|
(~key & KEYC_SENT) &&
|
||||||
|
server_client_assume_paste(s))
|
||||||
goto forward_key;
|
goto forward_key;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
11
tmux.h
11
tmux.h
@ -132,13 +132,14 @@ struct winlink;
|
|||||||
#define KEYC_SHIFT 0x00400000000000ULL
|
#define KEYC_SHIFT 0x00400000000000ULL
|
||||||
|
|
||||||
/* Key flag bits. */
|
/* Key flag bits. */
|
||||||
#define KEYC_LITERAL 0x01000000000000ULL
|
#define KEYC_LITERAL 0x01000000000000ULL
|
||||||
#define KEYC_KEYPAD 0x02000000000000ULL
|
#define KEYC_KEYPAD 0x02000000000000ULL
|
||||||
#define KEYC_CURSOR 0x04000000000000ULL
|
#define KEYC_CURSOR 0x04000000000000ULL
|
||||||
#define KEYC_IMPLIED_META 0x08000000000000ULL
|
#define KEYC_IMPLIED_META 0x08000000000000ULL
|
||||||
#define KEYC_BUILD_MODIFIERS 0x10000000000000ULL
|
#define KEYC_BUILD_MODIFIERS 0x10000000000000ULL
|
||||||
#define KEYC_VI 0x20000000000000ULL
|
#define KEYC_VI 0x20000000000000ULL
|
||||||
#define KEYC_EXTENDED 0x40000000000000ULL
|
#define KEYC_EXTENDED 0x40000000000000ULL
|
||||||
|
#define KEYC_SENT 0x80000000000000ULL
|
||||||
|
|
||||||
/* Masks for key bits. */
|
/* Masks for key bits. */
|
||||||
#define KEYC_MASK_MODIFIERS 0x00f00000000000ULL
|
#define KEYC_MASK_MODIFIERS 0x00f00000000000ULL
|
||||||
|
Loading…
Reference in New Issue
Block a user