Commit Graph

512 Commits

Author SHA1 Message Date
Michael Jumper
225377f197 Fix VT/FF. Implement DEL and CSI. 2013-05-21 00:57:44 -07:00
Michael Jumper
438ac8e9bb VT and FF should behave exactly as LF. 2013-05-21 00:55:46 -07:00
Michael Jumper
4763f029a4 ACTUALLY alphabetize... 2013-05-21 00:47:55 -07:00
Michael Jumper
c1b0e3bb3b Alphabetize CSI handlers. 2013-05-21 00:35:18 -07:00
Michael Jumper
7894346285 Implement Index and Next Line. 2013-05-21 00:29:19 -07:00
Michael Jumper
b38412fd3d Implement save/restore cursor. 2013-05-21 00:19:53 -07:00
Michael Jumper
c220a4875c Properly close pipe file descriptors. Wait for input thread to close in SSH thread. 2013-05-20 10:52:47 -07:00
Michael Jumper
639389ced8 Fix error when no data received (read returns SSH_AGAIN). 2013-05-20 10:44:43 -07:00
Michael Jumper
5fd14b3b4d Handle resize when SSH not connected. Update visible cursor row in resize. 2013-05-20 10:27:53 -07:00
Michael Jumper
80825072fe Reinstate SSH client. 2013-05-20 01:23:21 -07:00
Michael Jumper
0f978393a6 Implement prompts, do not actually redirect real STDIN/STDOUT. 2013-05-20 00:33:17 -07:00
Michael Jumper
0057460c44 Add echo flag. 2013-05-18 22:24:09 -07:00
Michael Jumper
a53a5e2e1b Working input/output. 2013-05-17 22:53:13 -07:00
Michael Jumper
5009d1c280 Revert "Use input/output threads for SSH client."
Should actually have one main thread, which then spawns an input thread after connection successful.

This reverts commit 6a099b4176fb732b7281128100fe66bb0a72da1a.
2013-05-17 20:58:47 -07:00
Michael Jumper
8f0c2f3723 Use input/output threads for SSH client. 2013-05-17 20:53:16 -07:00
Michael Jumper
96edfad7c0 Add stub client thread. 2013-05-17 20:47:05 -07:00
Michael Jumper
0dbcdabe40 General naming cleanup. 2013-05-17 20:28:26 -07:00
Michael Jumper
ec845a812a Remove core SSH client code. Refactor message handler to handle pipe for STDOUT. Refactor key and clipboard handlers to handle pipe for STDIN. 2013-05-17 20:20:51 -07:00
Michael Jumper
791da3dc81 Properly update visible cursor row when terminal scrolled. 2013-05-15 13:55:40 -07:00
Michael Jumper
9b0a210c12 Improve cursor rendering, ensure display not affected if cursor does not move. Repurpose unused "selected" attribute for marking the cursor. 2013-05-15 12:46:26 -07:00
Michael Jumper
337d79721e Do not start selection until mouse moves. 2013-05-15 12:08:05 -07:00
Michael Jumper
b5e3c2e721 Clear with NULL character. Do not include NULLs in copied text. 2013-05-15 10:11:47 -07:00
Michael Jumper
ce21f2c883 Implement range check, fix parameters. 2013-05-14 17:19:08 -07:00
Michael Jumper
d89453e342 Keep highlight displayed until text beneath highlight is touched (low-level logic is stubbed). 2013-05-14 13:26:22 -07:00
Michael Jumper
f73ece4e12 Dead grave and dead acute are not actually wrong here. 2013-05-13 22:03:28 -07:00
Michael Jumper
7d0dfd4425 #250: Implement DSTBLT. 2013-05-13 17:58:19 -07:00
Michael Jumper
8698cfc1cc Fix memblt/scrblt source coordinates. 2013-05-13 17:50:14 -07:00
Michael Jumper
b20aa53843 Wrong coordinate being stored in Y. 2013-05-13 14:40:54 -07:00
Michael Jumper
3af39503c0 Fix clipping calculations. 2013-05-13 14:37:48 -07:00
Michael Jumper
00e44007f5 Do not modify input, initialize bounded flag. 2013-05-13 14:34:24 -07:00
Michael Jumper
960c3e1e4a Implement clipping in software. 2013-05-13 14:27:15 -07:00
Michael Jumper
14bf8dd843 Handle typing of Unicode properly. 2013-05-13 01:51:16 -07:00
Michael Jumper
a7ba3f085f Username parameter should be "username", not "user". 2013-05-09 21:43:46 -07:00
Michael Jumper
c40a9b8994 Actually implement AltGr as a separate code, rather than Ctrl+Alt. 2013-05-09 20:44:56 -07:00
Michael Jumper
03ae1481ea Bump version. 2013-05-09 00:24:04 -07:00
Michael Jumper
af3fafcbd9 Add superscript 2 and 3 to German mapping. 2013-05-09 00:20:09 -07:00
Michael Jumper
5a5a02f99b Fix French keyboard mapping. 2013-05-09 00:19:55 -07:00
Michael Jumper
9557ca05ab Have to not clear both CTRL_ALT as that would prohibit CTRL+ combinations (and ALT+). 2013-05-08 23:09:42 -07:00
Michael Jumper
6241ebcbb2 If clearing SHIFT, should clear ALL_SHIFT. 2013-05-08 23:06:13 -07:00
Michael Jumper
8e5dde0cd8 Remove ALL_MODIFIERS clear for most keys. 2013-05-08 23:03:40 -07:00
Michael Jumper
eb4ab6d383 Fix bar symbol. 2013-05-08 18:28:43 -07:00
Michael Jumper
7fa531cc2e Allow storage of keysyms in the 0x0100xxxx space. Map AltGr to Ctrl+Alt. 2013-05-08 18:24:46 -07:00
Michael Jumper
4cb9b67a6f Allow ctrl/alt on Q/E/M. 2013-05-08 14:32:13 -07:00
Michael Jumper
5427c152ba Fix German keymap, add right/left ctrl/alt keysyms. 2013-05-08 14:21:04 -07:00
Michael Jumper
0d41f4ecde Restore password prompt. 2013-05-06 16:12:37 -07:00
Michael Jumper
547966b63d Add missing newline before last line of copied text. Add Unicode support to copied text. 2013-05-06 12:18:56 -07:00
Michael Jumper
3d1ca93b3a Initial actual support for copying of text. 2013-05-06 11:06:21 -07:00
Michael Jumper
c29c43e056 Initial selection support. 2013-05-06 01:02:23 -07:00
Michael Jumper
cb21322745 Fix wrong location value for collisions. 2013-05-03 12:45:15 -07:00
Michael Jumper
95810fbb76 Clear glyph region before sending PNG. 2013-05-03 12:10:38 -07:00
Michael Jumper
5df2f66fae Remove FIXME status. 2013-05-03 11:53:06 -07:00
Michael Jumper
857498fc19 Fix buffer copy_rows logic. 2013-05-03 11:49:08 -07:00
Michael Jumper
3a32e7084c Implement more console codes and reverse linefeed, de-stub buffer functions. 2013-05-03 02:50:05 -07:00
Michael Jumper
edc4c223bb Restore scroll down. 2013-05-02 22:50:33 -07:00
Michael Jumper
5e51f361ee Fix unicode support (wrong lengths). 2013-05-02 15:06:21 -07:00
Michael Jumper
356e3945e9 Unicode support. 2013-05-02 14:56:20 -07:00
Michael Jumper
de5b945f73 Redraw from buffer as necessary during resize (finish resize support). 2013-05-02 12:35:20 -07:00
Michael Jumper
ac52c8fb64 Proper handling of new rows and removed rows. 2013-05-02 03:18:10 -07:00
Michael Jumper
22ee486019 Remove more FIXME and STUB status. 2013-05-02 01:28:31 -07:00
Michael Jumper
ed777d0a76 Remove stub status - no longer stubs. 2013-05-02 01:22:50 -07:00
Michael Jumper
8c81cae871 Initial screen resize support. 2013-05-01 16:54:29 -07:00
Michael Jumper
ca17560328 Limit display updates to visible area. 2013-04-30 00:20:21 -07:00
Michael Jumper
1af2aa2f03 Probably about time the title changed from SSH TEST. 2013-04-28 01:33:42 -07:00
Michael Jumper
0c99978160 Fix handling of length in buffer. 2013-04-28 01:28:49 -07:00
Michael Jumper
3a50c9572d Clear cells when resizing or scrolling. 2013-04-26 14:52:51 -07:00
Michael Jumper
6092badb3b Handle display size properly, start out empty. 2013-04-26 14:14:19 -07:00
Michael Jumper
dd4862f59a Implement basic terminal scroll. 2013-04-26 10:55:55 -07:00
Michael Jumper
e1b45733a3 Remove old functions, implement display copies. 2013-04-26 10:36:02 -07:00
Michael Jumper
b64aaa72ee Partial restoration of display functionality. Modify get_row to expand row as necessary. 2013-04-26 02:29:30 -07:00
Michael Jumper
d3db89d3b9 Fix compile errors. Add logs to stubs. 2013-04-26 01:53:19 -07:00
Michael Jumper
bed877c2fe Add get_row function. 2013-04-25 12:10:01 -07:00
Michael Jumper
32e6a07f59 Rename delta to display. 2013-04-25 11:55:50 -07:00
Michael Jumper
396bba6ea3 Initial stab at rearchitecting - will not compile as is. Partial. 2013-04-25 11:54:00 -07:00
Michael Jumper
cb4abb9115 Assume UTF-8 for incoming bytes. 2013-04-15 15:24:21 -07:00
Michael Jumper
0dabb97f01 Initial selection support - does not yet affect clipboard, nor work properly when scrolled. 2013-04-15 01:22:05 -07:00
Michael Jumper
2eeb9263c5 Start with blank pointer, show pointer when moving mouse, hide pointer when typing. 2013-04-09 14:09:41 -07:00
Michael Jumper
d3efaeee6e Add blank cursor. 2013-04-09 14:02:52 -07:00
Michael Jumper
a855af8608 Free cursors when done. 2013-04-09 13:58:55 -07:00
Michael Jumper
21f109fdeb Migrate to cacheable cursors. 2013-04-09 13:54:23 -07:00
Michael Jumper
f74c4b851d Implement CSI command 'X', clean up a bit. 2013-04-08 02:14:58 -07:00
Michael Jumper
c20fe79ace Remove scroll logging, reset scroll upon typing. 2013-04-08 00:47:08 -07:00
Michael Jumper
7897be9316 Check write location on rect operations (copy, etc.) 2013-04-08 00:14:25 -07:00
Michael Jumper
342824914a Exclude simultaneous access to the terminal structure by the input and output threads. 2013-04-07 16:55:06 -07:00
Michael Jumper
43f42cbb4c Use pre-allocated scratch area, rather than constantly-reallocated scratch area. 2013-04-05 13:15:19 -07:00
Michael Jumper
b8ec48d179 Offset by scroll amount. 2013-04-05 13:12:18 -07:00
Michael Jumper
77b427a2f0 Pull from buffer if row non-negative. 2013-04-05 12:54:59 -07:00
Michael Jumper
84d45097d0 Simplify scrolling logic. 2013-04-05 11:31:46 -07:00
Michael Jumper
f7143be78b Initial scrollback implementation (missing buffer redraw and several necessary graphical ops). 2013-04-05 01:32:33 -07:00
Michael Jumper
06fb3b5a2e Stub out scroll wheel handling. 2013-04-01 01:59:15 -07:00
Michael Jumper
320255ade1 Partially implement copy for buffers, add logging to simulate scrollback push. 2013-04-01 01:10:47 -07:00
Michael Jumper
3e4199f90a Add missing AUTHORS (apologies to Alex DEVELY for mispelling his last name in his commit), clean up German keymap. 2013-03-29 22:04:46 -07:00
Michael Jumper
80f0b7e1e1 Remove Unicode translation warnings, as the functionality is intentional. 2013-03-29 18:27:27 -07:00
Michael Jumper
1ce5e85939 Rename "layout" to "server-layout" to help reduce confusion. 2013-03-29 13:34:45 -07:00
Michael Jumper
6bf9a0a9e0 Fix comments. 2013-03-29 13:19:25 -07:00
Michael Jumper
7ba047f5a8 Add French and German keymaps to build, add failsafe keymap, parse layout parameter, cleanup contributed keymaps, add missing declarations. 2013-03-29 13:08:14 -07:00
Michael Jumper
b6effd3d4f Merge branch 'french-keymap' into more-keymaps 2013-03-29 12:46:52 -07:00
Michael Jumper
bd45a8e5f6 Hotspot in middle, halve width of I-bar, clean up edges, shade. 2013-03-29 03:20:35 -07:00
Michael Jumper
8140a5cc3d Initial I-bar cursor. 2013-03-29 03:14:08 -07:00
Michael Jumper
c95c51a9c1 Clear with current attributes (not just background color), use real cursor (not layer). 2013-03-29 02:51:31 -07:00
Michael Jumper
95923b2752 Add terminal character buffer, update buffer with each operation. 2013-03-29 01:56:27 -07:00