Commit Graph

135 Commits

Author SHA1 Message Date
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
34eb154617 Grr missed one. 2007-09-29 18:57:15 +00:00
e30a3478f5 Whoooops. lower not upper. 2007-09-29 18:51:26 +00:00
32f177038f Dl/Il should follow scrolling region. 2007-09-29 18:48:04 +00:00
3d6c324405 Spc fix. 2007-09-29 18:07:18 +00:00
a777c060dc Nuke CLEAR_SCREEN/ENDOFSCREEN and assert scroll region when drawing. These will be reqd for status line(s). 2007-09-29 10:57:39 +00:00
aafee17de6 New input parser via state machine. 2007-09-28 22:47:22 +00:00
1fefbb7a85 Pass through backspace for now. 2007-09-21 19:24:37 +00:00
24b978adb7 Don't resize unless size changed. 2007-09-21 18:00:58 +00:00
48ab20871b Tweak comment; use sizeof. 2007-08-28 09:26:07 +00:00
fc63750d30 Scrolling region. 2007-08-28 09:19:50 +00:00
565ba002e9 Don't scroll screen until trying to write beyond limits. 2007-08-27 11:21:05 +00:00
b9de906ad9 We use screen now, not ansi. 2007-08-27 10:08:44 +00:00
73d7b70479 Update to be more readable and hopefully lose memory problems. 2007-08-27 09:53:38 +00:00
98642e907a +. 2007-08-27 08:15:39 +00:00
4b62b1d16c Sync with fdm. 2007-07-25 23:13:18 +00:00
a3bfe208b3 Some code tidying, use macros in a few more places. 2007-07-10 10:21:58 +00:00
a41ece5ff0 Initial import to CVS. Basic functions are working, albeit with a couple of showstopper memory bugs and many missing features. Detaching, reattaching, creating new sessions, listing sessions work acceptably for using with shells. Simple curses programs (top, systat, tetris) and more complicated ones (mutt, emacs) that don't require scrolling regions (ESC[r) mostly work fine (including mutt, emacs). No status bar yet and no key remapping or other customisation. 2007-07-09 19:04:12 +00:00