Commit graph

126 commits

Author SHA1 Message Date
a084b6e1b6 fix: sleep to avoid bugs... 2023-11-17 06:02:55 +01:00
67b9389c5b fix: apply received changes granularly 2023-11-17 03:55:45 +01:00
f69d91b9f6 fix: insert at index 0, locked dep 2023-11-17 03:44:57 +01:00
f5a2412113 fix: proper text events handling
this works properly but only now that codemp lib sends whole buffer as
text change every time
2023-11-16 22:07:09 +01:00
b59086bda6 fix: make it work with new api 2023-11-16 06:54:32 +01:00
140dd0ff4c feat: initial broken attempt with early woot api 2023-11-10 05:35:18 +01:00
bcbb7a7455 feat: add lua logger to collect tracing msgs 2023-11-10 05:33:20 +01:00
00aee70fc3 feat: allow setting debug log level 2023-09-06 00:15:36 +02:00
1998ee986c fix: need reverse mapping.. also they arent tuples 2023-09-06 00:09:38 +02:00
a19beb2f1a feat: show cursors on correct buffers
also made proper bindings for CursorEvent and CursorPosition
2023-09-05 23:59:20 +02:00
6791055f9e feat: add ability to log to file 2023-09-05 23:58:58 +02:00
e526d874f9 feat: distinct cursors, some different colors 2023-09-05 03:05:20 +02:00
b4ac11bade feat: only send cursor updates in shared buffers
also put correct buffer in cursor updates
2023-09-05 02:51:15 +02:00
d0da62f6fd fix: if cursor is long 0, add 1
idk how to display a bar in vim since it's a terminal
2023-09-04 22:31:29 +02:00
2b5fd19a0e fix: make it work cheating 2023-09-04 18:35:24 +02:00
ec873ee8b4 feat: more capillar but broken text changes
requires more help from codemp lib
2023-09-04 03:22:57 +02:00
773d76e7f8 feat: implemented crude buffer joining and synching 2023-08-22 12:51:35 +02:00
d6b9e21836 feat: added get_buffer, renamed recv -> try_recv 2023-08-22 12:51:17 +02:00
23b4adafcb feat: lua impl for cursors, tweaks to bindings 2023-08-21 04:07:25 +02:00
480becf588 feat: initial work on mlua bindings 2023-08-21 04:06:10 +02:00
6fa161c0d5 chore: removed rest of the project 2023-08-16 23:32:19 +02:00
f8e77f0827 feat: reworked client, added static instance 2023-08-16 23:09:47 +02:00
96217d1a1a feat: standardized Controller and ControllerWorker 2023-08-16 18:58:42 +02:00
74faca0f25 chore: cleaned up server and lib after split 2023-08-16 18:58:11 +02:00
9a1d84bc64 chore: split cursor and buffer protos 2023-08-16 17:08:53 +02:00
8595d0c927 fix: imports, Arc<T> 2023-08-11 15:50:17 +02:00
98cae0969d fix: remove workspace trait, add channel error 2023-08-11 15:34:04 +02:00
37e6268f0c chore: buffer(controller->handle, client->controller) 2023-08-11 15:33:40 +02:00
5cddb27b98 feat: initial features splitting, added singleton 2023-07-30 22:58:24 +02:00
02b2588073 feat: major restructure, workspace rework, tweaks
all controllers use internal mutability so that they can all be put
behind Arcs
2023-07-30 17:48:55 +02:00
041acdbb94 feat: initial barebones structure for workspace 2023-07-13 01:35:18 +02:00
59a0f71754 fix: better names for delta operation args 2023-07-12 00:23:41 +02:00
ca42874590 feat: refactored and improved operation controller
now polling for changes returns span and text so that it's possible to
edit just the changed region. greatly improved controller internal api
with crate-level traits keeping error handling localized
2023-07-09 03:44:27 +02:00
d086997053 feat!: start+end in cursor, merged cursor structs 2023-07-05 00:09:09 +02:00
38911bdc31 feat: reworked cursor handle mechanism
instead of storing cursors it just streams them as they happen. instead
of just getting cursors from the controller, now you also send your
operations into it, mimicking more the behavior used for text ops
2023-07-04 22:54:25 +02:00
06523b2325 fix: factory delta with abs index and not skips 2023-07-04 00:58:56 +02:00
43634acc2c fix: remove unnecessary async, re-exported ot, refactor 2023-07-02 23:59:04 +02:00
365811d963 chore: thanks clippy 2023-07-01 20:22:39 +02:00
b9ab3403dd chore: aligned match case, renamed to unwrap_or_warn 2023-07-01 14:12:33 +02:00
2c695a41f6 fix: ignore errors better, unified op processing 2023-07-01 14:00:50 +02:00
107c4673ef chore: separated modules in a cargo workspace 2023-04-21 18:47:10 +02:00
c5d171a641 feat: add delta (replace with offset) in factory 2023-04-20 04:36:04 +02:00
97be3cf4ce fix: send mock values to unlock and stop workers 2023-04-20 04:27:11 +02:00
6fe92b9e8e chore: better logging of workers stopping 2023-04-20 04:26:59 +02:00
ebf25fee44 feat: cleaner way to detach and stop workers
actually the stopping channel doesn't fit super well inside the
OperationController itself since the tasks are handled above that
abstraction layer, but storing it inside makes my life incredibly
simpler so im gonna do that for now
2023-04-20 03:47:35 +02:00
1bde0d414e chore: separated op processor and controller 2023-04-20 03:25:07 +02:00
243f23a04b feat: propagate range of buffer affected by change
added some const functions to calculate leading and tailing noops, made
apply() and process() return Range<u64>. actors implementation is still
awful but will do them properly in the future
2023-04-19 20:13:36 +02:00
7f41127f8b chore: import fixes 2023-04-19 19:18:48 +02:00
3e95ff9971 chore: at least log ignored errors 2023-04-19 19:18:31 +02:00
a843cf6cb9 fix: force unix fileformat 2023-04-19 18:18:13 +02:00