Commit graph

62 commits

Author SHA1 Message Date
spearzificial
3e62efe1ac chore(dev): merge user status on messages feature 2026-10-19 14:31:46 +05:30
spearzificial
f68958f75c feat(messageslist): add option to show user status on messages (#454) 2026-10-19 14:29:40 +05:30
spearzificial
7b435ce937 feat(messageslist): add emoji reaction picker and toggle (#827) 2026-10-19 14:16:20 +05:30
ayn2op
eb4028957d
feat(messageslist): draw kitty images in Rio (#851) 2026-10-19 00:55:37 -04:00
ayn2op
cb4c82d3e1
perf(messageslist): keep each message's built view instead of rebuilding it on every draw (#850) 2026-10-18 22:40:59 -04:00
ayn2op
b46624796d refactor(messageslist): draw embeds and the date separator as boxes 2026-10-18 19:11:30 -04:00
ayn2op
f25149a05e build: update tview and tcell, with titles and footers as widgets styled by ui.Label 2026-10-18 19:11:30 -04:00
ayn2op
b860df0a25 feat(messageslist): show custom emoji images in messages, with options to show their names 2026-10-17 17:52:12 -04:00
ayn2op
997a77c033 feat(messageslist): show custom emoji images in reactions, wrapped with a separator 2026-10-17 16:00:54 -04:00
ayn2op
805621bc2e refactor: move to the tview text widget and go-uucode 2026-10-16 22:13:15 -04:00
ayn2op
78c26e88fb refactor: drop unused receivers and exports 2026-10-16 19:04:04 -04:00
ayn2op
f7bd6ef441 refactor: replace magic numbers with named constants 2026-10-16 18:52:34 -04:00
ayn2op
e38b7490ad refactor(messageslist): split model into files by concern 2026-10-16 18:52:27 -04:00
ayn2op
25957fd3fd refactor(ui): alias the keybinds config in key switches 2026-10-16 18:52:15 -04:00
ayn2op
12a4a6af48 refactor(ui): share one clipboard write command 2026-10-16 18:52:15 -04:00
ayn2op
f8141b8f8d refactor: break up long inline expressions 2026-10-16 18:52:15 -04:00
ayn2op
3b28429a37 build(deps): migrate to goldmark v2 2026-10-16 00:32:26 -04:00
ayn2op
39222f1073 ci: add golangci-lint 2026-10-15 21:00:02 -04:00
ayn2op
9320e20983 refactor(config)!: move the image protocol to the messages list for avatars and attachments 2026-10-15 19:58:45 -04:00
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
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
71f2928ecd fix(messageslist): focus No first when confirming a delete 2026-10-12 13:00:30 -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
d0f53d0722 feat: implement voice support
Closes #166
2026-10-11 18:16:53 -04:00
ayn2op
688cb05f67 refactor(ui): move help keybinds to keymap.go 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
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
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
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
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
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
25c3aff301 refactor(ui): update to tview's scroll bar symbols 2026-10-01 23:24:22 -04:00
ayn2op
31c5d185ca refactor(ui): update to tview's layout package and Element methods 2026-10-01 22:45:52 -04:00
ayn2op
cf06327e01 perf(messageslist): append a new message without rebuilding the items 2026-10-01 14:16:52 -04:00
ayn2op
91c0ee1a97 refactor(messageslist): write the pinned notice in one call 2026-09-30 17:51:12 -04:00
ayn2op
4d4b6289ee refactor(messageslist): drop redundant reply comments 2026-09-30 17:51:03 -04:00