]> git.eshelyaron.com Git - emacs.git/commit
Improve robustness xterm event processing
authorDaniel Colascione <dancol@dancol.org>
Sat, 9 Jun 2018 20:14:11 +0000 (13:14 -0700)
committerDaniel Colascione <dancol@dancol.org>
Sat, 9 Jun 2018 20:18:17 +0000 (13:18 -0700)
commita66a3b7f51792aa2a91c16ed9121d7e9efea4536
treec79ee642c09cb0f964167d034374e28b991a85b3
parent66ad98685afa9ee3bc1ec2aeb116f41a2a7875b3
Improve robustness xterm event processing

We used to treat the start of a focus-in, focus-out, and the start of
a paste sequence as normal events bound in global-map, but this
approach produces problems when we recognize events in the middle of
actions that don't immediately dispatch to the command loop.

Now we handle these events internally inside read-key, translating the
focus events to nothing and paste-start into an xterm-paste event that
neatly encapsulates the entire paste sequence.

* lisp/term/xterm.el:
(xterm-paste): Accept an event argument; insert text from event.
(xterm-translate-focus-in,xterm-translate-focus-out)
(xterm-translate-bracketed-paste): New functions.
(xterm-handle-focus-in,xterm-handle-focus-out): Remove.
(xterm-rxvt-function-map): Bind new translation functions.
lisp/term/xterm.el