Commit graph

187 commits

Author SHA1 Message Date
ayn2op
dd2e690c34 feat(login): configure tabs with [ui.tabs] 2026-09-30 20:08:20 -04:00
ayn2op
02ca5019c7 refactor(config): share the tree status style 2026-09-30 17:34:43 -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
129ded84c0 refactor: drop tautological tls tests, password.ErrMsg, and go-cmp 2026-09-29 01:13:48 -04:00
ayn2op
08f27eb60d feat(chat): add members tree 2026-09-28 18:51:38 -04:00
ayn2op
05e622e753 refactor(ui): share tree and picker widgets 2026-09-28 18:51:16 -04:00
ayn2op
9dc509e300 refactor(ui): adopt tview Change and Keybind APIs 2026-09-28 18:51:16 -04:00
ayn2op
30810afde2 refactor(ui): migrate to declarative tview 2026-09-27 18:12:18 -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
8390e9773a
feat(chat): edit latest own message with configurable Up keybind (#837) 2026-09-05 01:56:23 -04:00
ayn2op
c5692cac29 style(config): improve theme option spacing 2026-09-02 21:30:53 -04:00
ayn2op
8f38996b8a feat(chat): toggle reply mentions from composer 2026-09-02 20:03:49 -04:00
ayn2op
5e4018a742 refactor(config): simplify MIME type lookup 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
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
764a9b3775 refactor(ui,config): flatten embedded literals 2026-08-21 20:10:38 -04:00
ayn2op
89513df829 fix(config): reject invalid theme values 2026-08-07 01:06:33 -04:00
ayn2op
50850f5e13
feat(chat)!: use terminal notifications (#823) 2026-07-31 21:03:02 -04:00
ayn2op
ec0e68ef54
feat(markdown): mask spoilers (#820) 2026-07-30 14:32:26 -04:00
ayn2op
226936310d
feat(chat): render message reactions (#819) 2026-07-30 02:22:21 -04:00
ayn2op
aa27aea627 refactor(config): cache config directory 2026-07-20 21:19:10 -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
Evan Genske
ab731f06fd
feat(chat): add sidebar.width_percent field for guilds tree width (#805)
Co-authored-by: ayn2op <ayn2op@gmail.com>
2026-06-15 21:46:25 -04:00
ayn2op
5f72acbfeb
refactor(config)!: replace NavigationKeybinds with SelectionKeybinds (#802) 2026-06-10 21:22:21 -04:00
ayn2op
6eb4b56122
refactor!: rename message input to composer (#801) 2026-06-08 22:45:51 -04:00
ayn2op
318bf731ec
feat(chat): auto-expanding message input with shift+enter newline (#799) 2026-05-27 16:03:25 -04:00
ayn2op
b9152f8b21 refactor(config): make config.toml the sole source of keybind keys
defaultKeybinds() now supplies only help descriptions; the actual keys
are read from the embedded config.toml at load time, eliminating the
duplicate key definitions that could drift out of sync.

Add a test that walks every keybind after loading the defaults and fails
if any is missing a key (config.toml) or description (defaultKeybinds).
2026-05-22 23:12:15 -04:00
ayn2op
5bcd124361 refactor(config): flatten config-file load into a switch 2026-05-21 20:34:32 -04:00
ayn2op
4d59013a71 refactor(config): collapse multi-line slog call 2026-05-21 20:34:12 -04:00
ayn2op
4bc49c52c5 refactor: deduplicate guilds tree help, simplify date separator default 2026-05-17 19:58:17 -04:00
ayn2op
164795e39a feat(config): add keybinds.guilds_tree.collapse_all keybind 2026-05-04 16:11:24 -04:00
ayn2op
01fc26612a
refactor!: move indents config to sidebar table (#793) 2026-04-19 20:14:35 -04:00
ayn2op
73dbd1b315 fix(config): remove outdated keybinds.picker.toggle (use keybinds.toggle_channels_picker instead)
Closes #790
2026-04-14 16:45:07 -04:00
ayn2op
48f3b5316c
feat(chat): style DM channel nodes based on recipients presence (#784) 2026-03-29 21:53:38 -04:00
ayn2op
8d31a80d0c feat(config): increase default picker height 2026-03-15 20:56:41 -04:00
ayn2op
9ec330ba38 build(deps): upgrade tview to latest 2026-03-15 03:14:31 -04:00
ayn2op
082c018f53 style: run golangci-lint run --fix 2026-03-08 18:40:59 -04:00
ayn2op
1ce19eccc9 fix(config): sync help key labels with remapped keybinds 2026-03-04 15:25:29 -05:00
ayn2op
9dcd43475b
feat(ui/chat): render embeds (#766) 2026-03-03 19:17:02 -05:00
xqrs
bab0ee8856
feat(ui/chat): add configurable indentation for guilds tree (#617)
Signed-off-by: xqrs <3bd3bdr@gmail.com>
Co-authored-by: ayn2op <ayn2op@gmail.com>
2026-03-01 04:31:28 -05:00
xqrs
66b81b765d
fix(config): reset style instead of merging for StyleWrapper (#759)
Co-authored-by: ayn2op <ayn2op@gmail.com>
2026-03-01 09:28:43 +03:00
xqrs
745706b5d5
feat(config/StyleWrapper): Add underline support (#763) 2026-03-01 09:23:50 +03:00
Ayyan
7b585d7548
feat(ui/chat): add tree markers (#752) 2026-02-23 18:20:04 -05:00
Ayyan
76532a9dba
feat: add suspend keybind (#751) 2026-02-23 17:51:22 -05:00