Kovid Goyal
af8d44ecab
Refactor screen mode API to use get/setters
2017-01-04 10:24:00 +05:30
Kovid Goyal
b4af2ff314
The cursor visible (DECTCEM) property should be global, not affected by save/restore of cursor or alternate screens
2017-01-04 10:02:39 +05:30
Kovid Goyal
7c76e907c2
When switching to alternate screen always reset cursor
2017-01-04 08:58:49 +05:30
Kovid Goyal
4ccb05d3d3
Also save DECTCEM when saving cursor
2017-01-04 08:29:33 +05:30
Kovid Goyal
5b9aadd135
Simplify conditional
2017-01-04 08:14:47 +05:30
Kovid Goyal
9e2653a55a
Clear the alternate screen when switching to it
2016-12-29 16:40:46 +05:30
Kovid Goyal
39e770a670
Fix cursor position being rendered incorrectly after screen resize
2016-12-18 21:06:54 +05:30
Kovid Goyal
c323e5372c
Fix a memory leak when deleting screens
...
The HistoryBuf object was not being de-allocated
2016-12-18 14:04:42 +05:30
Kovid Goyal
3e1dac97ad
Fix a couple of out of bounds memory reads
2016-12-18 13:58:01 +05:30
Kovid Goyal
3c9d4dfb90
Fix designate_charset without change_charset not taking effect
2016-12-13 12:43:20 +05:30
Kovid Goyal
0797f159ad
Only move the cursor a line down on resize if the cursor line was split
2016-12-12 12:44:33 +05:30
Kovid Goyal
e3ba45d903
Ensure cursor x-coord is correct on resize
2016-12-11 11:48:46 +05:30
Kovid Goyal
a7fce9353a
Fix an off-by-one error when scrolling back
2016-12-10 14:18:27 +05:30
Kovid Goyal
25aaf4331a
Add control code for resetting underline color to default
2016-12-08 18:34:02 +05:30
Kovid Goyal
6e5ceb63f4
Implement escape codes for setting underline color and underline style
...
\E[6m for underline style = curl
\E[58<color spec>m for underline color
<color spec> can be one of 5;i where 0 <= i < 256
or 2;r;g;b where 0 <= r,g,b < 256
2016-12-05 11:03:02 +05:30
Kovid Goyal
7afbfb8349
Reset scroll when toggling screen buffers
2016-12-02 14:35:38 +05:30
Kovid Goyal
d3fd0646fb
Implement the mouse tracking protocol
2016-12-02 14:23:38 +05:30
Kovid Goyal
02fec34629
...
2016-12-01 11:31:06 +05:30
Kovid Goyal
489504cda5
More charset fixes
...
Properly use the G0/G1 charsets only to map characters being drawn to
the screen. And only decode bytes using either Latin-1 or UTF-8,
defaulting to UTF-8 at startup/reset.
2016-11-30 23:36:10 +05:30
Kovid Goyal
9e68cc559a
Implement CBT
2016-11-30 21:50:54 +05:30
Kovid Goyal
b343625b9f
Add a simple test for SGR
2016-11-30 21:16:04 +05:30
Kovid Goyal
ce1514963b
Various charset related fixes
...
Fix changing of charset not taking effect immediately while parsing a
single block of bytes
Fix incorrect mapping of C0 control codes in some of the charsets
2016-11-30 19:44:41 +05:30
Kovid Goyal
c713712f89
Restore support for charsets other than UTF-8
2016-11-30 17:48:52 +05:30
Kovid Goyal
95d3f20832
Do not ignore CUP when y is out of margins, instead clamp to margins
2016-11-30 14:58:34 +05:30
Kovid Goyal
7bf15a0f29
Also save/restore DESCNM state
2016-11-30 11:25:59 +05:30
Kovid Goyal
f71e266764
Implement reverse video and DECSCNM
2016-11-30 11:12:34 +05:30
Kovid Goyal
f0b1af964b
Fix clearing of tab stops
2016-11-30 10:21:37 +05:30
Kovid Goyal
eb3bf71ef7
...
2016-11-30 09:46:33 +05:30
Kovid Goyal
5e8cec0842
DRYer
2016-11-30 09:44:28 +05:30
Kovid Goyal
df704c87c7
Wrap the tab related functions
2016-11-30 09:29:29 +05:30
Kovid Goyal
d132ba5a48
Implement DECALN
2016-11-30 08:34:02 +05:30
Kovid Goyal
f25b2d241f
Support for turning off auto-repeat
2016-11-30 08:03:29 +05:30
Kovid Goyal
2ecc98cdd0
Fix screen not being redrawn after resize
2016-11-29 13:20:48 +05:30
Kovid Goyal
f4e3fbcb2e
Implement rendering of selections
2016-11-29 09:45:14 +05:30
Kovid Goyal
b5000c2ec0
Refactor to support multiple windows/tabs
2016-11-26 17:40:28 +05:30
Kovid Goyal
0ad81ae6fe
Also allow all mouse motion tracking mode
2016-11-25 08:38:22 +05:30
Kovid Goyal
4f5daa94d0
Clean up the mode handling code
2016-11-24 21:18:04 +05:30
Kovid Goyal
d6782d002b
A nicer method name
2016-11-24 20:14:31 +05:30
Kovid Goyal
fc0e785322
Use a different set of tabstops for the alt screen
2016-11-24 19:49:23 +05:30
Kovid Goyal
9a0f057012
Fix crash caused by incorrect re-allocation of tabstops on resize
2016-11-24 16:39:47 +05:30
Kovid Goyal
abd09464f0
Implement control code to change colors
2016-11-24 16:28:08 +05:30
Kovid Goyal
3031d41e72
Start work on supporting changing of entries in the color table
2016-11-24 15:28:52 +05:30
Kovid Goyal
2e3e6d331d
Parse DCS+q
2016-11-24 08:14:29 +05:30
Kovid Goyal
2c3893d8a4
Port parsing of CSI codes
2016-11-23 20:23:37 +05:30
Kovid Goyal
ce8db74154
Port OSC parsing
2016-11-23 17:25:38 +05:30
Kovid Goyal
f14e7037e2
Start work on dumping non-UTF-8 charset support
2016-11-23 15:33:08 +05:30
Kovid Goyal
a0df10d0c2
Start work on handling DCS
2016-11-23 11:08:35 +05:30
Kovid Goyal
aca53d4e2b
Rendering of underline/strikethrough
2016-11-23 09:01:07 +05:30
Kovid Goyal
b426210e38
Implement keyboard shortcuts for scrolling
2016-11-21 20:48:51 +05:30
Kovid Goyal
992aaf96d5
Show a wide cursor when over a wide character
2016-11-21 14:30:08 +05:30