ayn2op
|
871f36759c
|
perf(messageslist): stop copying the model and message to the heap per item build
|
2026-10-15 19:38:27 -04:00 |
|
ayn2op
|
60aa5f52f1
|
feat(messageslist)!: group consecutive messages by the same author
|
2026-10-15 18:02:59 -04:00 |
|
ayn2op
|
3562b4d546
|
fix(messageslist): fetch older messages once on scrolling to the top
|
2026-10-15 16:50:37 -04:00 |
|
ayn2op
|
fa82fad291
|
docs(README): update previews
|
2026-10-14 23:48:51 -04:00 |
|
ayn2op
|
b042d6f6b8
|
build(deps): bump arikawa and ningen
|
2026-10-14 13:32:54 -04:00 |
|
ayn2op
|
91c954df27
|
build(deps): fix the arikawa and ningen versions
|
2026-10-13 22:13:02 -04:00 |
|
ayn2op
|
4b3e457e7c
|
fix(composer): check the thread send permission in a thread
|
2026-10-13 21:22:24 -04:00 |
|
ayn2op
|
d54c2eb23f
|
build(deps): bump arikawa and ningen
|
2026-10-13 21:20:28 -04:00 |
|
ayn2op
|
95f5fb91a1
|
refactor(ui): hold widget state as plain values in the models
|
2026-10-13 19:03:59 -04:00 |
|
ayn2op
|
7e5c3dc62c
|
feat(messageslist): play voice messages by click and seek by dragging
|
2026-10-13 18:10:59 -04:00 |
|
ayn2op
|
bba502cba8
|
feat(messageslist): show avatar preview
|
2026-10-12 22:21:50 -04:00 |
|
ayn2op
|
5d518d7521
|
feat(messageslist): add compact and gap layout options
Closes #735
|
2026-10-12 19:38:49 -04:00 |
|
ayn2op
|
d9e9339bf6
|
feat(chat): confirm before logging out
|
2026-10-12 13:05:29 -04:00 |
|
ayn2op
|
71f2928ecd
|
fix(messageslist): focus No first when confirming a delete
|
2026-10-12 13:00:30 -04:00 |
|
ayn2op
|
ac05d55da9
|
fix(chat): show a dialog when the token is rejected
Closes #685
|
2026-10-12 12:53:49 -04:00 |
|
ayn2op
|
817306b1ad
|
fix(gateway): show the login when the token is rejected
Closes #843
|
2026-10-12 12:42:20 -04:00 |
|
ayn2op
|
4534f130b3
|
fix(messageslist): open only http and https links
|
2026-10-12 12:24:42 -04:00 |
|
ayn2op
|
6465a1c5f2
|
feat: play voice messages
Closes #493
|
2026-10-12 12:21:12 -04:00 |
|
ayn2op
|
95f247def8
|
feat(config): select up and down with the arrow keys
|
2026-10-11 18:58:34 -04:00 |
|
ayn2op
|
e57542c44c
|
ci: install an arm64 C compiler on windows-11-arm and merge the test steps
|
2026-10-11 18:35:26 -04:00 |
|
ayn2op
|
d0f53d0722
|
feat: implement voice support
Closes #166
|
2026-10-11 18:16:53 -04:00 |
|
ayn2op
|
be53bfd21a
|
build(deps): upgrade deps to latest
|
2026-10-11 13:36:41 -04:00 |
|
ayn2op
|
688cb05f67
|
refactor(ui): move help keybinds to keymap.go
|
2026-10-09 18:29:39 -04:00 |
|
ayn2op
|
2e6fa88608
|
fix(ui): hide the tree's up and down keybinds at its ends
|
2026-10-09 18:29:39 -04:00 |
|
ayn2op
|
6449f7d470
|
refactor(ui): scroll the trees and lists with a viewport
|
2026-10-08 19:10:20 -04:00 |
|
ayn2op
|
715ed5aaeb
|
feat(config): add keybinds to scroll the trees
|
2026-10-08 17:42:35 -04:00 |
|
ayn2op
|
84835018c9
|
feat(config): generate docs/config.md from the config structs (#842)
|
2026-10-07 18:06:07 -04:00 |
|
ayn2op
|
534c4e3c64
|
refactor(config)!: move non-style theme options to [ui]
|
2026-10-07 15:37:03 -04:00 |
|
ayn2op
|
37cd42c811
|
build: bump client build number
|
2026-10-06 18:46:04 -04:00 |
|
ayn2op
|
d7e1077392
|
refactor(composer): derive whether the mentions list is shown from its items and the focus
|
2026-10-06 18:15:30 -04:00 |
|
ayn2op
|
0dc3f21501
|
refactor(ui): give command methods value receivers
|
2026-10-06 17:19:42 -04:00 |
|
ayn2op
|
c3cb114e22
|
refactor(ui): merge each model's update into Update
|
2026-10-06 15:42:47 -04:00 |
|
ayn2op
|
c8b024eb0e
|
fix(messageslist): fetch older messages once as the cursor reaches the top
|
2026-10-06 15:34:54 -04:00 |
|
ayn2op
|
fca6ea5c1d
|
test(qr): wait for the client to close after the gateway cancels
|
2026-10-04 23:55:44 -04:00 |
|
ayn2op
|
c947abdf0e
|
feat(messageslist): load previews at the terminal's cell size
|
2026-10-04 19:31:13 -04:00 |
|
ayn2op
|
d1867ee14c
|
refactor(messageslist): pass the render width as a parameter
|
2026-10-04 16:03:36 -04:00 |
|
ayn2op
|
a94a791174
|
refactor(messageslist): read a separator's date from the next message
|
2026-10-04 15:53:04 -04:00 |
|
ayn2op
|
94ae1f277c
|
refactor(qr): render the code in the view
|
2026-10-04 15:53:04 -04:00 |
|
ayn2op
|
b41a7594ea
|
refactor(composer): derive the placeholder in the view
|
2026-10-04 15:53:04 -04:00 |
|
ayn2op
|
757655ce3b
|
refactor(messageslist): build the scroll bar in the view
|
2026-10-04 15:53:04 -04:00 |
|
ayn2op
|
39ef4c93cc
|
refactor(messageslist): track end with the list builder
|
2026-10-04 15:51:03 -04:00 |
|
ayn2op
|
f9bb10d846
|
refactor(ui): update to tview's Widget and help style builders
|
2026-10-03 23:41:25 -04:00 |
|
ayn2op
|
f7180f8767
|
feat(guildstree): select the previous or next unread guild or channel
Closes #665
|
2026-10-03 14:45:34 -04:00 |
|
ayn2op
|
0b68476086
|
fix(messageslist): keep the scroll position when the selection is cleared
|
2026-10-03 14:22:18 -04:00 |
|
ayn2op
|
1e42e7783d
|
feat(mentionslist): configure the selected style with [theme.mentions_list]
|
2026-10-02 15:34:44 -04:00 |
|
ayn2op
|
1604231f6d
|
refactor(ui): update to tview's ActionNone keybinds
|
2026-10-02 15:33:03 -04:00 |
|
ayn2op
|
dae8467a58
|
fix(messageslist): do not style the space after the author name
|
2026-10-02 00:26:41 -04:00 |
|
ayn2op
|
8acb19a2ff
|
build: upgrade tview to latest
|
2026-10-01 23:39:46 -04:00 |
|
ayn2op
|
25c3aff301
|
refactor(ui): update to tview's scroll bar symbols
|
2026-10-01 23:24:22 -04:00 |
|
ayn2op
|
39c803eef9
|
refactor(config): drop the unicode scroll bar glyph set
|
2026-10-01 22:58:48 -04:00 |
|