Commit graph

41 commits

Author SHA1 Message Date
a4b79d4e81 Move cursor to prev/next sibling 2022-08-09 15:44:35 +02:00
0ad3432141 Fold subtrees 2022-08-09 15:00:12 +02:00
bfc221106d Move to prev/next unseen message 2022-08-08 21:31:12 +02:00
cee91695e0 Mark older messages as seen instead 2022-08-08 21:31:12 +02:00
573f231466 Mark all messages as seen 2022-08-08 21:31:12 +02:00
43247e2a5c Mark all visible messages as seen 2022-08-08 21:31:12 +02:00
6166c5e366 Toggle messages' seen status 2022-08-08 21:31:09 +02:00
bfbdec4396 Move editor key handling to one place 2022-08-06 23:39:56 +02:00
c4d3f5ba4d Move cursor in message editor vertically 2022-08-06 23:39:56 +02:00
6c1ce49236 Show available key bindings with F1/? 2022-08-04 17:02:54 +02:00
20ea96f83e Match key events using macros 2022-08-04 01:05:08 +02:00
042f0ab78d Move cursor chronologically 2022-08-03 02:02:12 +02:00
cbe2b2e10e Add some todos 2022-08-03 00:12:14 +02:00
f70d0c25cf Clear editor contents with ctrl+l 2022-08-02 23:14:27 +02:00
f14e9b8998 Enter newlines via modifier+enter
As long as the modifier doesn't get swallowed by the terminal, the
editor will insert a newline at the current cursor location. My own
terminal emulator swallows ctrl and shift but not alt, so alt+enter
works for me.
2022-08-02 22:35:18 +02:00
76352f9b6b Fix scrolling when sending a message 2022-08-02 22:34:36 +02:00
3ab73668ba Fix editor cursor not being made visible 2022-08-02 22:09:41 +02:00
cfcc663169 Remove pseudo message after server replied 2022-08-02 21:43:35 +02:00
402b79eb31 Scroll larger amounts via ctrl+u/d/b/f 2022-08-02 02:28:36 +02:00
26d953395b Edit messages in the tree view 2022-08-02 01:08:02 +02:00
415da3afd8 Render editor and pseudo message 2022-08-01 23:38:46 +02:00
816bf5be1c Fix cursor appearing on rerender when at bottom
When sitting at the bottom of a room with cursor = Cursor::Bottom, a
rerender would make the cursor jump to the lowest visible message. This
of course should only happen when the screen is scrolled, not on almost
every rerender.
2022-08-01 22:51:43 +02:00
4ac0b5f074 Make new ChatMsg trait for Chat message rendering 2022-08-01 19:57:05 +02:00
c11325aa8b Move cursor so it is visible when scrolling 2022-08-01 01:18:28 +02:00
cb2fc22c5a Scroll with ctrl+e and ctrl+d 2022-07-31 23:10:49 +02:00
d23d7b155c Reorganize widgets and render indent 2022-07-31 22:55:22 +02:00
5d3e0ef73c Reenable cursor movement
This also moves the Cursor definition back to the cursor module, and
modifies it to include info about the last non-editor/non-pseudo
position in editor/pseudo cursors (to be used when editing or waiting
for the server reply is aborted via Escape)
2022-07-31 20:33:46 +02:00
ae8ec70e5e Layout using new algorithm and new blocks 2022-07-31 20:03:14 +02:00
6f4d94afa5 Render time via widget 2022-07-31 19:21:54 +02:00
82fce0430d Disable old chat rendering 2022-07-31 15:18:00 +02:00
73cb568702 Fix not being able to close nick dialog 2022-07-23 23:45:01 +02:00
066ea0cb07 Port message sending 2022-07-20 20:37:54 +02:00
34e7af684b Hook up simple cursor movement 2022-07-20 17:34:32 +02:00
48943f2316 Port most of cursor movement logic 2022-07-20 14:07:02 +02:00
3af1193869 Port rendering logic 2022-07-19 21:47:40 +02:00
7da5ba04a5 Implement remaining layouting logic 2022-07-19 21:23:47 +02:00
47aa99bb26 Port majority of layouting logic 2022-07-19 18:09:30 +02:00
2beb44a17c Structure tree widget state around cursors 2022-07-19 09:51:58 +02:00
21d908874d Adapt blocks to include markers 2022-07-15 11:10:19 +02:00
26e988114c Start restructuring chat as widget 2022-07-15 11:10:19 +02:00
446e3e885a Move chat to ui module 2022-07-05 19:37:29 +02:00
Renamed from src/chat/tree.rs (Browse further)