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
|
de2f2c94f0
|
test(config): use method call for applyDefaults in test
|
2026-09-21 20:14:43 -04:00 |
|
ayn2op
|
9d914c280e
|
refactor(config): move MIMETypes to top and make applyDefaults a method
|
2026-09-21 18:57:22 -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
|
bbb8cf0d65
|
refactor(config): use shellwords to parse editor commands (#838)
|
2026-09-12 14:23:32 -07:00 |
|
ayn2op
|
c38fc3d9c0
|
refactor(ui): bump tview and adapt to tview.Screen API
|
2026-09-09 18:34:29 -04:00 |
|
ayn2op
|
24ced4d8bf
|
fix(chat): keep original attachment extension and surface open errors
|
2026-09-06 23:03:07 -04:00 |
|
ayn2op
|
1750d7dfb6
|
test: use identifier-based names and subtests
|
2026-09-06 19:38:11 -04:00 |
|
ayn2op
|
39cb1b5698
|
refactor(chat): unify message list items
|
2026-09-06 19:38:11 -04:00 |
|
ayn2op
|
8390e9773a
|
feat(chat): edit latest own message with configurable Up keybind (#837)
|
2026-09-05 01:56:23 -04:00 |
|
ayn2op
|
bdea99d4f9
|
refactor(chat): simplify member search cache
|
2026-09-05 01:17:15 -04:00 |
|
ayn2op
|
b7ddfdc050
|
refactor(ui): simplify picker keybind setup
|
2026-09-04 16:20:26 -04:00 |
|
ayn2op
|
358ccd546d
|
refactor(guildstree): simplify model initialization
|
2026-09-04 14:59:24 -04:00 |
|
ayn2op
|
c5692cac29
|
style(config): improve theme option spacing
|
2026-09-02 21:30:53 -04:00 |
|
ayn2op
|
091d4711ea
|
fix(chat): preserve focus without guilds tree
|
2026-09-02 20:24:03 -04:00 |
|
ayn2op
|
8f38996b8a
|
feat(chat): toggle reply mentions from composer
|
2026-09-02 20:03:49 -04:00 |
|
ayn2op
|
5122bdea4a
|
fix(root): do not block quit on session cleanup
|
2026-09-02 18:17:08 -04:00 |
|
ayn2op
|
8b9c28ce56
|
test(markdown,guildstree,qr,root): use identifier-based names and subtests
|
2026-09-02 18:09:21 -04:00 |
|
ayn2op
|
9d38982a8f
|
feat(tls): update browser profile to Chrome 152
|
2026-09-02 16:49:50 -04:00 |
|
ayn2op
|
7972504293
|
refactor: use default markdown link parser
|
2026-09-02 00:23:11 -04:00 |
|
ayn2op
|
5003a15cc8
|
refactor: migrate markdown parser to arikawa
|
2026-09-01 22:54:32 -04:00 |
|
ayn2op
|
5df8f14d7b
|
refactor(ui): modularize guilds tree
|
2026-08-31 22:35:23 -04:00 |
|
ayn2op
|
5e4018a742
|
refactor(config): simplify MIME type lookup
|
2026-08-31 18:57:21 -04:00 |
|
ayn2op
|
0509f47775
|
feat(ui): open and download message attachments
Closes #558
|
2026-08-31 18:57:21 -04:00 |
|
ayn2op
|
86c1fd6a77
|
feat(config): add attachment MIME allowlist and keybinds
|
2026-08-31 18:57:21 -04:00 |
|
ayn2op
|
52e7d6ed0e
|
fix(ui): sort dms on message create (#835)
|
2026-08-30 21:10:37 -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
|
fb39147eae
|
feat: toggle keybind help at runtime (#833)
|
2026-08-27 20:31:52 -04:00 |
|
ayn2op
|
e53354a738
|
feat: allow disabling keybind help (#832)
|
2026-08-27 15:06:10 -04:00 |
|
ayn2op
|
774e4059df
|
build(deps): update to latest
|
2026-08-21 23:28:51 -04:00 |
|
ayn2op
|
764a9b3775
|
refactor(ui,config): flatten embedded literals
|
2026-08-21 20:10:38 -04:00 |
|
ayn2op
|
cf6c343fd5
|
refactor: use encoding/json/v2
|
2026-08-21 19:59:40 -04:00 |
|
ayn2op
|
36a4c05dd4
|
refactor(http): use standard uuid package
|
2026-08-21 19:52:08 -04:00 |
|
ayn2op
|
f880378568
|
fix: acknowledge current channel cursor
|
2026-08-19 01:51:01 -04:00 |
|
ayn2op
|
801f951ccb
|
style: format TLS client options
|
2026-08-19 00:44:23 -04:00 |
|
ayn2op
|
e0aa1e857d
|
refactor: adopt standard slice helpers
|
2026-08-18 17:53:17 -04:00 |
|
ayn2op
|
f016d62bc5
|
style: format gateway capabilities
|
2026-08-18 14:07:57 -04:00 |
|
ayn2op
|
26dc8cf748
|
refactor: adopt generic options
|
2026-08-18 03:42:17 -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
|
58fbfb467d
|
gateway: use capability-aware event registry
|
2026-08-17 22:54:42 -04:00 |
|
ayn2op
|
19bbde3b2c
|
feat(http): add Chromium client hints
|
2026-08-12 02:08:43 -04:00 |
|
ayn2op
|
75bf1169ba
|
fix(tls): randomize TLS extension order
|
2026-08-12 01:40:27 -04:00 |
|
ayn2op
|
3ea0de50f9
|
refactor: pass *ningen.State to newGuildsTree instead of *chat.Model
|
2026-08-12 00:50:02 -04:00 |
|
ayn2op
|
8f5e923fe1
|
refactor(ui): simplify login error handling
|
2026-08-10 21:02:51 -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 |
|