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
|
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
|
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
|
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
|
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 |
|
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
|
dd2e690c34
|
feat(login): configure tabs with [ui.tabs]
|
2026-09-30 20:08:20 -04:00 |
|
ayn2op
|
837e615d1a
|
fix(composer): expand every mention around code spans
|
2026-09-30 18:07:33 -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 |
|
ayn2op
|
54e7aabb68
|
refactor(messageslist): drop redundant empty check in selectedMessage
|
2026-09-30 17:50:37 -04:00 |
|
ayn2op
|
a205c17854
|
refactor(messageslist): build prefixed embed lines inline
|
2026-09-30 17:49:52 -04:00 |
|
ayn2op
|
467af33b01
|
refactor(messageslist): add embed fields without a switch
|
2026-09-30 17:49:45 -04:00 |
|
ayn2op
|
02ca5019c7
|
refactor(config): share the tree status style
|
2026-09-30 17:34:43 -04:00 |
|
ayn2op
|
32aed22618
|
refactor(chat): log raw events inline
|
2026-09-30 17:32:00 -04:00 |
|
ayn2op
|
74f8438bc1
|
refactor(ui): simplify models and messages
|
2026-09-30 16:45:13 -04:00 |
|
ayn2op
|
151eb89a1a
|
feat(messageslist): draw previews with kitty graphics protocol
|
2026-09-29 20:22:46 -04:00 |
|
ayn2op
|
1e675f10cf
|
feat(messageslist): preview images
|
2026-09-29 16:59:34 -04:00 |
|
ayn2op
|
48a12551aa
|
fix(qr): close the gateway connection on errors
|
2026-09-29 01:28:12 -04:00 |
|
ayn2op
|
5022ed3d93
|
refactor(qr): drop errMsg in favor of error
|
2026-09-29 01:28:12 -04:00 |
|
ayn2op
|
0ae90e6b02
|
refactor(mentionslist): build rows from items on demand
|
2026-09-29 01:28:12 -04:00 |
|
ayn2op
|
08cdb3645c
|
refactor(attachmentspicker): use picker.Items directly
|
2026-09-29 01:13:48 -04:00 |
|
ayn2op
|
ce576a42d4
|
refactor: drop redundant return nil before trailing return nil
|
2026-09-29 01:13:48 -04:00 |
|
ayn2op
|
129ded84c0
|
refactor: drop tautological tls tests, password.ErrMsg, and go-cmp
|
2026-09-29 01:13:48 -04:00 |
|