spearzificial
c27c4d903c
chore(dev): merge emoji autocomplete and command preview
2026-10-19 13:56:04 +05:30
spearzificial
778c3c4423
feat(composer): add command preview and autocomplete
2026-10-19 13:46:17 +05:30
spearzificial
af615e4724
feat(composer): add emoji autocomplete and preview
2026-10-19 13:14:07 +05:30
ayn2op
25957fd3fd
refactor(ui): alias the keybinds config in key switches
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
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
d9e9339bf6
feat(chat): confirm before logging out
2026-10-12 13:05:29 -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
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
c3cb114e22
refactor(ui): merge each model's update into Update
2026-10-06 15:42:47 -04:00
ayn2op
c947abdf0e
feat(messageslist): load previews at the terminal's cell size
2026-10-04 19:31:13 -04:00
ayn2op
f9bb10d846
refactor(ui): update to tview's Widget and help style builders
2026-10-03 23:41:25 -04:00
ayn2op
31c5d185ca
refactor(ui): update to tview's layout package and Element methods
2026-10-01 22:45:52 -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
08cdb3645c
refactor(attachmentspicker): use picker.Items directly
2026-09-29 01:13:48 -04:00
ayn2op
acd2fe0050
build(deps): bump arikawa and ningen
2026-09-28 21:19:37 -04:00
ayn2op
08f27eb60d
feat(chat): add members tree
2026-09-28 18:51:38 -04:00
ayn2op
07733bc436
refactor(ui): use tview/inert for dialogs and pickers
2026-09-27 20:46:49 -04:00
ayn2op
24342490e5
refactor(ui)!: make models immutable values
2026-09-27 20:33:19 -04:00
ayn2op
f45dfd58ad
fix(chat): expire typing indicators by deadline instead of timestamp equality
...
On Windows the coarse clock can return the same time for two addTyper
calls, so a stale expiry matched the extended indicator and removed it
early. Compare the stored deadline against the current time instead.
2026-09-27 19:19:07 -04:00
ayn2op
30810afde2
refactor(ui): migrate to declarative tview
2026-09-27 18:12:18 -04:00
ayn2op
219e34aa78
refactor(ui): update tview and migrate to Model.Init
2026-09-24 18:09:16 -04:00
ayn2op
7fb5e8fdf7
feat(config): add sidebar.visible field to hide sidebar (guilds tree) on startup ( #839 )
2026-09-20 11:34:15 -04:00
ayn2op
c38fc3d9c0
refactor(ui): bump tview and adapt to tview.Screen API
2026-09-09 18:34:29 -04:00
ayn2op
091d4711ea
fix(chat): preserve focus without guilds tree
2026-09-02 20:24:03 -04:00
ayn2op
5df8f14d7b
refactor(ui): modularize guilds tree
2026-08-31 22:35:23 -04:00
ayn2op
0509f47775
feat(ui): open and download message attachments
...
Closes #558
2026-08-31 18:57:21 -04:00
ayn2op
94eaf25286
text: migrate to tview text package
2026-08-30 20:06:45 -04:00
ayn2op
811c5e4418
refactor(ui): move focus ownership to containers ( #834 )
2026-08-29 01:10:17 -04:00
ayn2op
f016d62bc5
style: format gateway capabilities
2026-08-18 14:07:57 -04:00
ayn2op
1d441a972a
gateway: enable debounced reactions
2026-08-18 02:56:29 -04:00
ayn2op
a0c2f10c35
gateway: enable modern ready capabilities
2026-08-18 02:11:36 -04:00
ayn2op
c6305c0510
gateway: enable versioned ready fields
2026-08-17 23:19:29 -04:00
ayn2op
3ea0de50f9
refactor: pass *ningen.State to newGuildsTree instead of *chat.Model
2026-08-12 00:50:02 -04:00
ayn2op
1197e4b204
refactor(ui): decouple commands from models
2026-08-10 16:46:21 -04:00
ayn2op
f4621bc321
refactor(chat): simplify typing throttle
2026-08-10 00:13:41 -04:00
ayn2op
f00a66835c
refactor(ui): adopt message-driven focus
2026-08-09 23:23:37 -04:00
ayn2op
71805de597
refactor(chat): extract attachments picker package
2026-08-05 14:54:00 -04:00
ayn2op
7abc3e4003
refactor(chat): extract channels picker package
2026-08-05 00:51:24 -04:00
ayn2op
eab73a3b19
feat: impersonate browser TLS fingerprints ( #824 )
2026-08-04 21:04:22 -04:00
ayn2op
d13ce0ea4a
fix(ui): use dedicated modal model ( #821 )
2026-07-30 14:32:05 -04:00
ayn2op
226936310d
feat(chat): render message reactions ( #819 )
2026-07-30 02:22:21 -04:00
RedSlime.
2501deac82
feat(chat): update dm node on presence update ( #814 )
2026-07-19 04:08:31 -04:00
ayn2op
391f3b974c
refactor(ui): replace tview modal usage
2026-07-09 04:12:33 -04:00
ayn2op
6c3727cb7c
refactor(chat): avoid blocking member chunks
2026-07-03 18:31:49 -04:00
ayn2op
e6c7f26fcd
refactor: use forked arikawa and ningen
2026-06-19 18:00:39 -04:00
ayn2op
6a930ac2ac
refactor(chat): use gateway identifier constructor
2026-06-16 03:53:20 -04:00