Commit graph

255 commits

Author SHA1 Message Date
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
de569211f6 Display seen status of messages 2022-08-08 21:31:12 +02:00
6166c5e366 Toggle messages' seen status 2022-08-08 21:31:09 +02:00
a2b9f57a09 Fix room and nick dialog padding 2022-08-07 00:55:54 +02:00
d114857abd Update changelog 2022-08-07 00:55:54 +02:00
de095e74ae Change binding for external editor
In order to avoid collisions with ctrl+e, we need a new binding. In
bash/readline, ctrl+x is used as a sort of leader key to initiate
multi-key bindings. I don't think I'll implement multi-key combinations
any time soon, so now ctrl+x stands for 'edit in eXternal editor'.
2022-08-07 00:30:36 +02:00
9ebe2361a9 Move cursor one word left/right 2022-08-07 00:25:53 +02:00
51d03c6fe2 Fix moving to end of last line 2022-08-07 00:01:27 +02:00
4bf6d80988 Move to start/end of editor line 2022-08-06 23:54:53 +02:00
ba35a606a8 Increase F1 key binding column width 2022-08-06 23:54:43 +02:00
0d3131facd Add more readline-like key bindings 2022-08-06 23:54:22 +02:00
bfbdec4396 Move editor key handling to one place 2022-08-06 23:39:56 +02:00
f48a4a6416 Remove trailing newline of externally edited text 2022-08-06 23:39:56 +02:00
c4d3f5ba4d Move cursor in message editor vertically 2022-08-06 23:39:56 +02:00
d97dff07e4 Add note about F1 to empty rooms list 2022-08-04 17:16:44 +02:00
a0f2f9500c Fix ? not working in normal room view 2022-08-04 17:03:38 +02:00
6c1ce49236 Show available key bindings with F1/? 2022-08-04 17:02:54 +02:00
a51bb60342 Add Resize widget 2022-08-04 16:53:05 +02:00
8374552715 Fix cursor moving out of bounds
On a long line ending with whitespace, the cursor would be able to move
out of bounds if there was enough whitespace.
2022-08-04 02:22:20 +02:00
20ea96f83e Match key events using macros 2022-08-04 01:05:08 +02:00
a3327a7a2c Fix HJoin/VJoin available space calculations 2022-08-03 21:38:54 +02:00
70e8755e6a Align nicks in nick list vertically 2022-08-03 19:57:06 +02:00
2dfdbbb4d2 Fix scrolling when composing a new thread
When composing a new thread and writing more than one line, the chat
wouldn't scroll to make the editor cursor visible again. My original
guess for when the scrolling code should run was a bit too restrictive.
2022-08-03 03:08:00 +02:00
4d1a42427a Add scrolloff 2022-08-03 02:52:53 +02:00
042f0ab78d Move cursor chronologically 2022-08-03 02:02:12 +02:00
01ee4b4ce8 Use new highlight colors for editor and pseudo messages 2022-08-03 01:12:31 +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
806200b799 Remove old editor code 2022-08-02 22:56:33 +02:00
64c64884e4 Fix cursor position after trailing newline 2022-08-02 22:54:52 +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
00bcdddc62 Enable some warnings 2022-08-02 02:17:37 +02:00
baa49107f1 Remove unused files 2022-08-02 01:42:10 +02:00
18573e5a37 Fix rendering of editor and pseudo message 2022-08-02 01:22:34 +02:00
26d953395b Edit messages in the tree view 2022-08-02 01:08:02 +02:00
fe0f6c7520 Edit editor contents externally 2022-08-02 00:42:52 +02:00
415da3afd8 Render editor and pseudo message 2022-08-01 23:38:46 +02:00
4ead592e59 Add back vertical line for multi-line messages 2022-08-01 23:00:01 +02:00
781655c41b Fix initial scroll at bottom not moving screen
When pressing ctrl+y while cursor = Cursor::Bottom, the screen would
not scroll. Instead, the cursor would only jump to the lowest message on
the screen. This was caused because the blocks were re-layouted after
scrolling, starting from the Cursor::Bottom, thus resetting the scroll
to the bottom of the screen.
2022-08-01 22:53:30 +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
ac2602c4b8 Rename second euph Message to SmallMessage 2022-08-01 20:05:50 +02:00
4ac0b5f074 Make new ChatMsg trait for Chat message rendering 2022-08-01 19:57:05 +02:00
5c9c6e9d98 Fix word wrapping inside VJoins 2022-08-01 19:13:54 +02:00
2d1c953250 Update toss 2022-08-01 19:13:06 +02:00
a50f81f9b3 Add priorities to VJoin/HJoin Segments 2022-08-01 17:11:13 +02:00