Maxime Coste
0f7948848e
Fix buffer deletion from a client when another is editing it
2012-11-07 14:02:23 +01:00
Maxime Coste
d6923af3c4
server socket filename available through $kak_socket env var
2012-11-06 14:25:25 +01:00
Maxime Coste
3471d795c9
ClientManager: tweak on input event lambda
2012-11-06 13:37:18 +01:00
Maxime Coste
d347223e42
EventManager: store event handlers in an unordered_map instead of a vector
...
If an event handler add or removes an event from the manager, it may then
be moved in the vector, and if after that it access any of it's members
(through this), it results in an invalid memory access.
2012-11-06 13:34:58 +01:00
Maxime Coste
3daac4883e
Move client drawing responsiblity to the ClientManager
2012-11-05 19:58:04 +01:00
Maxime Coste
a41bb34b21
Window: maintain the timestamp of last display buffer update
2012-11-05 19:54:09 +01:00
Maxime Coste
fedabb4176
Rework Window creation, avoid using the same window in multiple clients
2012-11-05 19:15:42 +01:00
Maxime Coste
42315c4b5c
Editor: store a safe_ptr to buffer instead of reference
2012-11-04 23:39:25 +01:00
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