ec61c4d092
[client] Unfold a node when replying to it
2020-02-19 23:45:54 +00:00
1fd476e585
[client] Fix initial editor contents
2020-02-19 23:37:36 +00:00
385ec894ef
[client] Fix rendering of editor
2020-02-19 23:37:22 +00:00
661c233ce1
[client] Fix cursor becoming invisible
2020-02-19 23:36:14 +00:00
e8b6efcb76
[client] Rewrite client structure
2020-02-19 23:12:53 +00:00
bd06b64699
[docs] Add back inital root node in server hello packet
2020-02-18 12:13:29 +00:00
f2e77b7c03
[server] Implement shared editing module
2020-02-18 00:43:30 +00:00
e917893a9b
[server] Print exceptions encountered during a connection
2020-02-18 00:42:57 +00:00
af8305bfac
[client] Print exceptions encountered while UI is running
2020-02-18 00:42:30 +00:00
8c233ae4e0
[server] Fix fork module
...
Previously, the fork module would return Just () on all actions. This made the
server disconnect any client after a successful action (e. g. editing a node).
2020-02-18 00:41:19 +00:00
d2c6efd6c4
[server] Implement API changes
2020-02-17 23:34:02 +00:00
964b13739a
[server] Add ordered map
...
It works similar to a map, but additionally keeps track of the order of its
keys.
2020-02-17 23:33:50 +00:00
4d06e48a82
[docs] Switch to map of child nodes plus display order
2020-02-16 23:32:33 +00:00
a50338a028
[docs] Add link to status code section of websocket RFC
2020-02-15 14:27:29 +00:00
8bf783b85a
[docs] Add API documentation
2020-02-15 14:27:23 +00:00
2a2b148046
[server] Add return value to tree modules
...
Now, tree modules can't just stop, they can Just stop. Sorry... But they can
return values now, with a tiny bit of type class trickery.
2020-02-13 23:38:26 +00:00
220b5a3234
[server] Adjust TreeModule structure
...
This commit prepares a slighly more powerful TreeModule structure: Now,
TreeModules can finish their execution, which should make some kinds of menus
and transitions possible.
2020-02-13 23:23:15 +00:00
d08f858692
[client] Make websocket connection closing more robust
2020-02-12 13:04:47 +00:00
5e7f90c6d5
[server] Rename tree module files
2020-02-12 11:34:25 +00:00
3656483bc8
[server] Add very simple animation module
...
I mostly used this module for testing the partial tree updates.
2020-02-12 11:07:12 +00:00
b2b34d551a
[server] Send partial updates when possible
2020-02-12 10:58:39 +00:00
45a6d1934e
[server] Fix typo
2020-02-12 00:38:35 +00:00
6d6344d372
[server] Add ForkModule for combining other modules
...
This one has some interesting code in its constructor, using the Cont monad
because of the way the ModuleConstructor is structured.
2020-02-12 00:38:29 +00:00
d5d0fccdaf
[server] Improve readability of project description
2020-02-11 18:04:07 +00:00
7709fc92a9
[server] Write better project description
2020-02-11 17:37:38 +00:00
f101ecdbb4
[client] Adjust padding
2020-02-11 17:35:55 +00:00
a546ce0334
Fix order of nodes in client
2020-02-11 17:35:55 +00:00
ae28d79b46
Scroll so editor cursor is always visible
...
This took a bit to figure out. Also, this is the only point in this project
where I use lenses.
2020-02-11 12:59:36 +00:00
70bbc3a69a
Scroll so focused element is always visible
2020-02-11 12:14:51 +00:00
9f507b5b9e
Add help to command line parser
2020-02-11 12:14:25 +00:00
1dfce4a93d
Wrap node text in client
2020-02-11 11:48:10 +00:00
4c24430c07
Display custom node in ConstModule
...
Also wrote a short introductory node explaining node permissions.
2020-02-11 11:48:10 +00:00
29e19ec1b2
Add very basic logging to client
2020-02-11 11:38:28 +00:00
92f4804b40
Allow all actions on ConstModule node
2020-02-10 23:49:46 +00:00
70e3386cb5
Implement client actions properly
2020-02-10 23:49:34 +00:00
5902421872
Add very basic logging to server
2020-02-10 23:48:44 +00:00
fb6cfdefd7
Add ConstModule loading delay
2020-02-10 23:14:25 +00:00
5e7c2952a1
Hook up WS connection to client UI
2020-02-10 23:14:20 +00:00
9f5d1c5684
Parse client command line options
2020-02-10 23:07:55 +00:00
fc35f3bf64
Receive and interpret node updates
2020-02-10 01:42:02 +00:00
c3dafbaf63
Remove example tree
2020-02-10 01:40:32 +00:00
efd33ff05e
Implement replacing subnodes via path
2020-02-09 22:43:03 +00:00
db1287aff3
Clean up editor key handling
...
Now, newlines can be inserted via C-n.
2020-02-09 22:40:14 +00:00
62874a6d3f
Remove debugging UI
2020-02-09 22:34:21 +00:00
e0e23367c8
Allow multiline editing
...
Also adds editor key bindings for the home and end keys
2020-02-09 21:49:37 +00:00
817b0a34c4
Make editor always start at the end of the first line
2020-02-09 21:21:41 +00:00
769bd02658
Toggle editing and replying to messages
2020-02-09 21:20:45 +00:00
235620d8c1
Fix widget tree
...
This fix took way too long. Something like this shouldn't be that difficult, but
it apparently is. :/
2020-02-09 21:19:28 +00:00
5d132b91c5
Restructure client application
2020-02-09 20:05:14 +00:00
3ee771e536
Resize and rearrange tree and debug boxes
2020-02-09 19:28:32 +00:00