aboutsummaryrefslogtreecommitdiff
path: root/tty-keys.c
Commit message (Collapse)AuthorAge
...
| * Unused variable. Aargh.Nicholas Marriott2009-11-05
| |
| * Switch the tty key tree over to an (unbalanced) ternary tree which allowsNicholas Marriott2009-11-05
| | | | | | | | | | | | | | partial matches to be done (they wait for further data or a timer to expire, like a naked escape). Mouse and xterm-style keys still expect to be atomic.
| * Key flags are only used for initialisation so they are not needed in the mainNicholas Marriott2009-11-05
| | | | | | | | tty_key struct.
| * Switch tty key input over to happen on a read event. This is a bit moreNicholas Marriott2009-11-05
| | | | | | | | | | | | | | | | | | | | complicated because of escape input, but in that case instead of processing a key immediately, schedule a timer and reprocess the bufer when it expires. This currently assumes that keys will be atomic (ie that if eg F1 is pressed the entire sequence is present in the buffer). This is usually but not always true, a change in the tree format so it can differentiate potential (partial) key sequences will happens soon and will allow this to be fixed.
| * Switch tty fds over to a bufferevent.Nicholas Marriott2009-11-04
| |
| * Not all terminals swap CSI and SS3 on ctrl, so remove that.Nicholas Marriott2009-10-26
| | | | | | | | | | Also mark the rxvt special-cases as such until terminfo is updated to have kLFT5, kRIT5 etc.
| * Rewrite xterm-keys code (both input and output) so that works (doesn't alwaysNicholas Marriott2009-10-26
| | | | | | | | | | output the same modifiers, accepts all the possible input keys) and is more understandable.
| * Support the (mostly new) function key+modifier caps (kIC-kIC7). Most of theseNicholas Marriott2009-10-26
| | | | | | | | | | will be caught (soon) by the xterm keys code in xterm itself but some other descriptions such as rxvt define them as well.
| * As we always put the cursor keys into application mode, assume keys sentNicholas Marriott2009-10-26
| | | | | | | | | | | | with CSI have ctrl. Also add a couple of comments.
| * Tidy up table.Nicholas Marriott2009-10-26
| |
| * Rename keypad keys to something more useful.Nicholas Marriott2009-10-26
| |
| * Remove the xterm-keys code which is broken (a replacement is coming but someNicholas Marriott2009-10-26
| | | | | | | | more cleanup is needed first).
| * Clean up by introducing a wrapper struct for mouse clicks rather than passingNicholas Marriott2009-10-11
| | | | | | | | | | | | | | three u_chars around. As a side-effect this fixes incorrectly rejecting high cursor positions (because it was comparing them as signed char), reported by Tom Doherty.
| * Regularise some fatal messages.Nicholas Marriott2009-09-20
| |
| * Detect backspace by looking at termios VERASE and translate it into \177 (whichNicholas Marriott2009-07-26
| | | | | | | | | | | | matches screen's behaviour if not its termcap/terminfo entry). The terminfo kbs cap is often wrong or missing so it can't be used, and just assuming \177 may be wrong.
| * Tidy up keys: use an enum for the key codes, and remove the macros which justNicholas Marriott2009-07-21
| | | | | | | | wrap flag sets/clears/tests.
| * Import tmux, a terminal multiplexor allowing (among other things) a singleNicholas Marriott2009-06-01
| | | | | | | terminal to be switched between several different windows and programs displayed on one terminal be detached from one terminal and moved to another. ok deraadt pirofti
* Can't call evtimer_pending on uninitialized events, callNicholas Marriott2012-09-04
| | | | | evtimer_initialized first. Reported by Vladimir Lomov, fix from Thomas Adam slightly modified by me.
* Sync OpenBSD patchset 1166:Tiago Cunha2012-08-31
| | | | | xterm won't reach version 500 for a while so set that as the upper limit.
* Sync OpenBSD patchset 1150:Tiago Cunha2012-07-11
| | | | | xfree is not particularly helpful, remove it. From Thomas Adam.
* Sync OpenBSD patchset 1121:Tiago Cunha2012-05-22
| | | | | | Store client in tty struct directly instead of using a callback function pointer.
* Sync OpenBSD patchset 1120:Tiago Cunha2012-05-22
| | | | | Store mouse data in tty structure not on the stack.
* Sync OpenBSD patchset 1094:Tiago Cunha2012-04-24
| | | | | | Handle partial keys properly by making sure the timer has actually expired, fixes problems with mintty reported by Michael Simpson.
* Sync OpenBSD patchset 1078:Tiago Cunha2012-03-29
| | | | | | Some terminals respond to secondary DA with primary (they ignore the intermediate character). So ignore the possible responses to primary DA.
* Sync OpenBSD patchset 1070:Tiago Cunha2012-03-18
| | | | | | | On xterm 271 and later, put the terminal into SCL 5 and use DECCRA for scrolling the region in panes (if the large region check isn't hit). With help from Ailin Nemui.
* Sync OpenBSD patchset 1057:Tiago Cunha2012-03-18
| | | | | | Check event_initialized before event_del if event may not have been set up; libevent2 complains about this. Reported by Moriyoshi Koizumi.
* Sync OpenBSD patchset 1054:Tiago Cunha2012-03-18
| | | | | | Send secondary DA to terminals with XT in terminfo when starting up and parse it to work out the xterm version.
* Expand the Id keyword. Tiago Cunha2011-07-09
|
* Make sure non-UTF8 mouse coordinates are kept to 8-bit values.Micah Cowan2011-03-04
|
* Sync OpenBSD patchset 828:Tiago Cunha2011-01-07
| | | | | | | | | | | | Support for UTF-8 mouse input (\033[1005h). This was added in xterm 262 and supports larger terminals than the older way. If the new mouse-utf8 option is on, UTF-8 mouse input is enabled for all UTF-8 terminals. The option defaults to on if LANG etc are set in the same manner as the utf8 option. With help and based on code from hsim at gmx.li.
* Sync OpenBSD patchset 821:Tiago Cunha2011-01-03
| | | | | Key table should be const.
* Sync OpenBSD patchset 710:Tiago Cunha2010-06-06
| | | | | | | | | | When the mode-mouse option is on, support dragging to make a selection in copy mode. Also support the scroll wheel, although xterm strangely does not ignore it in application mouse mode, causing redraw artifacts when scrolling up (other terminals appear to be better behaved).
* Accept a full key match (not a partial) even if there is data left inNicholas Marriott2010-03-15
| | | | | the buffer.
* Sync OpenBSD patchset 590:Tiago Cunha2009-12-18
| | | | | | Allow keys to be replaced and reorder the table so that terminfo-defined keys (or terminal-overrides) take precedence over internally defined.
* Sync OpenBSD patchset 587:Tiago Cunha2009-12-16
| | | | | | New server option, escape-time, to set the timeout used to detect if escapes are alone or part of a function key or meta sequence.
* Sync OpenBSD patchset 581:Tiago Cunha2009-12-04
| | | | | | | Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last time now I've configured emacs to make them displayed in really annoying colours...
* Sync OpenBSD patchset 576:Tiago Cunha2009-12-02
| | | | | | Look for mice and xterm keys before standard function keys as they are less likely to be partial versions.
* Sync OpenBSD patchset 575:Tiago Cunha2009-12-02
| | | | | Handle partial xterm function key sequences.
* Sync OpenBSD patchset 568:Tiago Cunha2009-11-28
| | | | | | Continue rather than returning if not a mouse key, to avoid hanging on any function key...
* Sync OpenBSD patchset 567:Tiago Cunha2009-11-28
| | | | | | Remove a couple of unused arguments where possible, and add /* ARGSUSED */ to the rest to reduce lint output.
* Sync OpenBSD patchset 564:Tiago Cunha2009-11-28
| | | | | Handle the possibility of partial mouse reads, and fix a comment while here.
* Sync OpenBSD patchset 531:Tiago Cunha2009-11-13
| | | | | | | Support rxvt-style keys again, but this time: support all the variations, put them in as raw escape sequences rather than fiddling with the values from terminfo, put them /after/ the terminfo values so the latter take precedence.
* Sync OpenBSD patchset 524:Tiago Cunha2009-11-10
| | | | | | Twiddling the last bit is an rxvtism, so do not support it in the table by default.
* Sync OpenBSD patchset 519:Tiago Cunha2009-11-10
| | | | | | The input key should be a u_char. Fixes top-bit-set input problem reported by ajacoutot@.
* Sync OpenBSD patchset 518:Tiago Cunha2009-11-10
| | | | | Constify buf.
* Sync OpenBSD patchset 514:Tiago Cunha2009-11-08
| | | | | Unused variable. Aargh.
* Sync OpenBSD patchset 513:Tiago Cunha2009-11-08
| | | | | | | | | Switch the tty key tree over to an (unbalanced) ternary tree which allows partial matches to be done (they wait for further data or a timer to expire, like a naked escape). Mouse and xterm-style keys still expect to be atomic.
* Sync OpenBSD patchset 511:Tiago Cunha2009-11-08
| | | | | | Key flags are only used for initialisation so they are not needed in the main tty_key struct.
* Sync OpenBSD patchset 508:Tiago Cunha2009-11-08
| | | | | | | | | | | | Switch tty key input over to happen on a read event. This is a bit more complicated because of escape input, but in that case instead of processing a key immediately, schedule a timer and reprocess the bufer when it expires. This currently assumes that keys will be atomic (ie that if eg F1 is pressed the entire sequence is present in the buffer). This is usually but not always true, a change in the tree format so it can differentiate potential (partial) key sequences will happens soon and will allow this to be fixed.
* Sync OpenBSD patchset 495:Tiago Cunha2009-11-08
| | | | | Switch tty fds over to a bufferevent.