Commit Graph

67 Commits

Author SHA1 Message Date
4235ddb4e8 Initial 256 colour support, lightly tested. 2008-09-08 17:40:51 +00:00
3337dfcae5 Support keypad mode, and get rid of SCREEN_DEF*. Meant to commit these separately but forgot :-/. 2008-07-24 21:42:40 +00:00
815b217482 These flags are off by default. 2008-07-24 07:01:57 +00:00
ee8a9d2458 Handle kcursor+kkeypad (switch to OA from [A). 2008-07-24 00:03:15 +00:00
d90d646ca8 Zombie windows, requested by Will Maier. 2008-06-29 07:04:31 +00:00
99df48d70f Trimify. 2008-06-18 22:21:51 +00:00
62d7ad2690 Clear blank area properly on redraw, and add a marker line below it. 2008-06-14 12:05:06 +00:00
9e6090a7a2 Per-session configuration options. 2008-06-03 21:42:37 +00:00
205b78ec58 Some key tweaks, fix status bar to not rely on attr. 2008-01-03 21:32:11 +00:00
e215e177df Filling with the right attr should be done in screen-display.c. 2007-12-06 22:13:14 +00:00
21d10e6894 Use the current attr/colours for filling in new areas, this fixes the echo \\033[35\;46m\\033[2J bug. 2007-12-06 21:57:57 +00:00
103748d6ad Major reorganisation of screen handling. 2007-12-06 09:46:23 +00:00
8419e99789 The tty code already stores attributes and doesn't modify them if unaltered, so the screen drawing code doesn't need to do so too. This probably also fixes bugs when switching screens where the actual tty attributes may not have been what the draw code (erroneously) expected. 2007-12-02 18:23:10 +00:00
3962c5f706 Change window name on \ek...\e\. 2007-11-30 11:08:35 +00:00
77386db04b Turn mouse on/off as appropriate. 2007-11-28 08:20:41 +00:00
c6384a765b Flush data on tty open. Also reset colour before clearing line/screen. 2007-11-27 21:07:38 +00:00
80e30f693c Minor tweaks/missed bits. 2007-11-27 19:32:15 +00:00
76c8a590db Big internal reorganisation to move tty control into parent. 2007-11-27 19:23:34 +00:00
14610569c8 This is better than disabling it. 2007-11-26 22:06:11 +00:00
f903cc9a56 Rv EOL optimisation, it screws up selection. 2007-11-26 20:45:13 +00:00
89db56fb09 Disable this optimisation since cursor can be updated by stuff outside. 2007-11-25 13:03:01 +00:00
9a3dde0f53 Oops, use correct y. 2007-11-25 11:13:46 +00:00
87b418b13e Redo output logging in local.c. Optimise line drawing. 2007-11-25 10:56:22 +00:00
5ad9b31ac5 Scroll region reset homes the cursor, so start at 0,0 when drawing. Also don't set region after DECRC. 2007-11-24 19:29:56 +00:00
b2d78b67d8 Use screen_draw_* to write message, avoids leaving attribute changes around. 2007-11-24 17:58:45 +00:00
4cd1f86359 Only show history size. 2007-11-23 13:02:45 +00:00
9c584432d0 history-limit option. 2007-11-23 12:48:20 +00:00
26c8303733 Tidier code by moving mess into functions. 2007-11-22 19:40:17 +00:00
7b4556946d Make C-space toggle. Fix sel on same line. 2007-11-22 19:26:20 +00:00
7ab0b466fe Text selection with C-space. 2007-11-22 19:17:01 +00:00
18d72e6928 Partial copy mode. Currently does the same as scroll mode but using a cursor. Also fix bug where resizing would leave crap lying around. 2007-11-22 18:09:43 +00:00
df7be0ddab Split SCREEN_BACKGROUND flag into BACKGROUND/NOCURSOR in preparation for copy mode. 2007-11-22 09:11:20 +00:00
c64cf68244 Cut memory consumption by only allocating lines when there is actually data on them, and only as much as the right-most data. Everything else is filled in at runtime. 2007-11-21 22:20:44 +00:00
1e5cb8d2e4 Free entire screen when destroyed. 2007-11-21 21:28:58 +00:00
d0984b890b Sort out cursors with a new flag - BACKGROUND - for window modes. Free text on more exit. 2007-11-21 19:53:57 +00:00
24c39950ff Redo screen.c functions to make them readable and more flexible. Make scroll mode only redraw waht it needs. 2007-11-21 18:24:49 +00:00
d5edaf988e Horizontal history/scrolling. 2007-11-21 15:35:53 +00:00
ef18b7d637 Move from the right place. 2007-11-21 14:55:31 +00:00
08a0c5e661 Use screen_* versions to avoid range checks (s->dy may be wrong), fix miscalculated free. 2007-11-21 14:30:15 +00:00
9a6e47cfa8 Initial history support. 2007-11-21 13:11:41 +00:00
9b9ceac657 Damnit, wrong variable name.. 2007-11-20 21:45:53 +00:00
f53b917367 Oops, mustn't forget this. 2007-11-20 21:45:26 +00:00
ceab127fac Mass screen.c rename/tidy. Add a actual size (ysize) as distinct from display size (now dx,dy). Move functions which work on the displayed area into screen-display.c and tidy. Use macros consistently when accessing screen data (may want to move everything about again later!). This the first step on the road to scrollback. 2007-11-20 21:42:29 +00:00
0be6a3041f Style: ry_* -> r* 2007-11-20 18:46:32 +00:00
514d6fa1ec Accept colours as strings. 2007-10-12 13:51:44 +00:00
1e252b9e9a Wrap lines properly. 2007-10-05 17:51:56 +00:00
f2b18ac417 Don't resize if sx AND sy haven't changed. Also tweak some logging, and reset attrs after clear. 2007-10-04 19:22:26 +00:00
1f9a8e70d9 Incomplete resize support. 2007-10-04 19:03:52 +00:00
872696f781 Pass attributes around as flags rather than as a list of escape codes. 2007-10-01 14:18:42 +00:00
9d563c340b Destroy screens properly. 2007-10-01 14:15:48 +00:00