Commit Graph

796 Commits

Author SHA1 Message Date
Maxime Coste
ea17525b2a Window: sanitize position in set_position 2012-10-31 14:28:47 +01:00
Maxime Coste
c947819154 Fix buffer iterator_at_line_{begin,end}(LineCount) 2012-10-31 14:28:03 +01:00
Maxime Coste
74731b0d0f refactor Client creation 2012-10-31 14:23:44 +01:00
Maxime Coste
6eef68124f use custom Client::operator=(Client&&) to drop safe counts first 2012-10-30 18:13:57 +01:00
Maxime Coste
1ea4b3998a Add a ClientManager for managing client lifetimes 2012-10-30 14:00:44 +01:00
Maxime Coste
bc7dfec44c tweak cpp highlighting 2012-10-29 19:17:48 +01:00
Maxime Coste
945f54daea fix crashes when cycling through menu with an active filter 2012-10-29 19:17:37 +01:00
Maxime Coste
254d43856d NCurses: refactor status line handling, and disambiguate status line from mode line 2012-10-29 19:01:57 +01:00
Maxime Coste
6f2c69a0eb fix adapt_for_linewise for Replace mode 2012-10-29 19:00:28 +01:00
Maxime Coste
cc876f7107 validate key in InputHandler before sending to mode, and minor refactor 2012-10-29 18:59:41 +01:00
Maxime Coste
6b664052b8 Use a Server object instead of just calling setup_server 2012-10-29 13:44:53 +01:00
Maxime Coste
ba244a70a3 NCurses: fix long lines handling 2012-10-28 11:00:23 +01:00
Maxime Coste
d9729cc29e Handle all available input before redrawing 2012-10-28 09:26:54 +01:00
Maxime Coste
13a081ed4a Remote: fix resize handling 2012-10-27 15:49:10 +02:00
Maxime Coste
b24a80a3ec NCurses::draw: maintain current column without using ncurses 2012-10-27 15:48:08 +02:00
Maxime Coste
031ed91ea6 EventManager: handle forced events even when poll return -1 2012-10-27 15:15:34 +02:00
Maxime Coste
b199cfd644 NCursesUI: force input handling reexecution when resizing 2012-10-27 15:02:17 +02:00
Maxime Coste
70cdb7a811 EventManager: add force_signal method to force event execution 2012-10-27 15:01:13 +02:00
Maxime Coste
24b43f91c8 NCurses: rework terminal resize handling 2012-10-27 14:18:52 +02:00
Maxime Coste
ee882d9d02 utf8: use CharCount instead of size_t 2012-10-27 13:26:40 +02:00
Maxime Coste
61c8ef6ce4 remote: send resize message when needed 2012-10-26 16:14:51 +02:00
Maxime Coste
73aa11ac16 remote: check read/write results, detect disconnections 2012-10-26 13:45:32 +02:00
Maxime Coste
1c3f6c314f send actual dimensions of remote client at connection 2012-10-25 12:51:01 +02:00
Maxime Coste
0735c69a92 add initial (and buggy) unix socket based client/server code 2012-10-24 21:44:19 +02:00
Maxime Coste
b9eb939e05 Add some remote client support protocol code 2012-10-23 22:55:44 +02:00
Maxime Coste
b163711963 DisplayBuffer: store lines in a vector, not a list 2012-10-23 22:55:04 +02:00
Maxime Coste
227c66cf61 use Colors and Attributes are char 2012-10-23 22:53:56 +02:00
Maxime Coste
98b6618658 merge contiguous DisplayAtoms after highlighting DisplayBuffer 2012-10-22 13:20:02 +02:00
Maxime Coste
6b2f8ed70c gdb: support ByteCount pretty printing 2012-10-22 13:13:18 +02:00
Maxime Coste
eed8a2a57c add basic utf8 unit test 2012-10-22 01:05:56 +02:00
Maxime Coste
49237a771b some minor cleanups/refactorings in main 2012-10-21 13:09:01 +02:00
Maxime Coste
a0cca31dc1 make UserInterface unaware of Window, only of DisplayBuffer 2012-10-20 20:15:20 +02:00
Maxime Coste
48fe18ff0a memoryview: include cstddef for size_t 2012-10-20 16:40:12 +02:00
Maxime Coste
28c8acf80a assert: throw if launching xmessage fails 2012-10-19 03:53:10 +02:00
Maxime Coste
abf514f305 avoid utf8 errors with invalid keys, like ncurse KEY_RESIZE 2012-10-18 19:56:57 +02:00
Maxime Coste
132c31042e main: prepare for multi client support 2012-10-17 17:49:34 +02:00
Maxime Coste
df400f90ab utf8: replace InvalidBytePolicy::Throw with InvalidBytePolicy::Assert 2012-10-17 17:01:51 +02:00
Maxime Coste
c1387dc592 assert: simplify header 2012-10-17 17:01:08 +02:00
Maxime Coste
4aa3a36102 rename Client to InputHandler 2012-10-17 13:14:03 +02:00
Maxime Coste
878a377673 update README 2012-10-16 18:53:05 +02:00
Maxime Coste
af2b562ebf update TODO 2012-10-16 18:46:06 +02:00
Maxime Coste
1ab486b0d8 verious refactoring 2012-10-16 18:42:51 +02:00
Maxime Coste
f8abbfbb44 assert: use xmessage to block on assert failed 2012-10-16 16:16:32 +02:00
Maxime Coste
214baf4cdd add a _str user defined literal to create String 2012-10-16 15:11:22 +02:00
Maxime Coste
6ff6058ceb create_buffer_from file return nullptr on file not found instead of throwing 2012-10-16 14:59:39 +02:00
Maxime Coste
4be6882bd5 Menu: support searching through choices with /
when hitting / while in a menu, a regex filter can be entered so that only
entries matching it are selectable, <esc> disable filtering while a second
<esc> close the menu as usual.
2012-10-15 12:49:46 +02:00
Maxime Coste
148466c659 Extract basic line editing functionality from PromptMode to LineEditor 2012-10-14 16:24:35 +02:00
Maxime Coste
dfafcdb6e6 utf8::codepoint: configurable invalid byte policy 2012-10-13 19:05:14 +02:00
Maxime Coste
4f1ab5b749 fix Window::scroll_to_keep_cursor_visible_ifn 2012-10-11 14:23:20 +02:00
Maxime Coste
4210a17753 Client: never call substr(CharCount, String::npos); 2012-10-11 14:22:08 +02:00