ayn2op
878d2d2ca0
build: upgrade deps to latest
2026-07-02 20:44:49 -04:00
ayn2op
e211bd8807
feat(http): go generate client build number
2026-07-02 18:09:08 -04:00
ayn2op
c7edbc3947
fix(markdown): apply combined inline styles
2026-06-30 17:27:55 -04:00
ayn2op
e6f0f21fae
build: upgrade tcell to latest
...
Closes #675
2026-06-29 01:29:11 -04:00
ayn2op
8a7eb16c18
build: upgrade tview to latest
...
Closes #808
2026-06-28 23:03:58 -04:00
ayn2op
1004909633
build: update deps to latest
2026-06-26 20:56:51 -04:00
ayn2op
70584c7694
http: go generate client build number
2026-06-25 13:03:31 -04:00
ayn2op
e6c7f26fcd
refactor: use forked arikawa and ningen
2026-06-19 18:00:39 -04:00
ayn2op
695576c5b1
refactor: switch to upstream clipboard
2026-06-19 12:34:59 -04:00
ayn2op
6a930ac2ac
refactor(chat): use gateway identifier constructor
2026-06-16 03:53:20 -04:00
ayn2op
a8e9aa92f8
fix(chat): omit large threshold
2026-06-16 02:35:54 -04:00
ayn2op
5e8bbe1351
fix(http): update priority header
2026-06-16 02:30:31 -04:00
ayn2op
493b8c2409
refactor(http): split discord client properties
2026-06-16 01:35:46 -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
6a2a5fa7fb
feat(http): generate client build number instead of hardcoding it
2026-06-14 22:10:25 -04:00
ayn2op
30ee90a8ef
refactor(ui): match tview getter api
2026-06-13 18:29:52 -04:00
ayn2op
85ce6cae34
refactor(ui): match tview.InputField api
2026-06-12 21:07:42 -04:00
ayn2op
7556744eca
fix(chat): make composer text selection visible
2026-06-11 16:37:07 -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
3591ca43c3
build(deps): upgrade tview
2026-06-04 21:43:04 -04:00
ayn2op
c96474bc9c
refactor(ui,chat,markdown): use tview.MergeStyle and uniseg.StringWidth
2026-06-04 19:48:46 -04:00
ayn2op
3cbbce6aeb
refactor(chat): drive guilds tree navigation through tree keybinds
2026-06-04 17:41:19 -04:00
ayn2op
3089000935
refactor(chat): migrate guilds tree to tview tree package
2026-06-02 23:53:44 -04:00
ayn2op
ecaf28b7e5
build(deps): upgrade
2026-06-02 16:34:35 -04:00
ayn2op
e413a3bda2
ci: switch to macos-26-intel for macos intel builds
2026-05-28 04:13:48 -04:00
ayn2op
318bf731ec
feat(chat): auto-expanding message input with shift+enter newline ( #799 )
2026-05-27 16:03:25 -04:00
ayn2op
19907d7889
feat(chat): forward Tab to textarea when mentions list is hidden ( #800 )
2026-05-27 15:57:38 -04:00
ayn2op
a4464bb678
build(deps): upgrade chroma to 2.25.0
2026-05-26 17:01:32 -04:00
ayn2op
15f95fb617
refactor(chat): add isMe helper to dedupe self-author checks
2026-05-24 19:25:27 -04:00
ayn2op
83f9c049cf
refactor(chat): return comma-ok from selectedMessage and SelectedChannel
2026-05-24 19:10:19 -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
d3b5c21263
refactor(qr): match QR pixel pairs to half-block glyphs
2026-05-21 21:27:08 -04:00
ayn2op
2d027f54c3
refactor(chat): collapse forum-thread filtering with isThread
2026-05-21 21:21:25 -04:00
ayn2op
1760b13f3c
refactor(chat): drop redundant comments in onReady
2026-05-21 21:17:24 -04:00
ayn2op
fcf6c01c39
refactor(markdown): separate code-block header choice from rendering
2026-05-21 20:48:07 -04:00
ayn2op
7f34127560
refactor(chat): flatten open() into a switch
2026-05-21 20:42:01 -04:00
ayn2op
309f24e728
refactor(chat): extract isMentionChar predicate
2026-05-21 20:37:28 -04:00
ayn2op
bcac58c7cf
refactor(chat): extract pure cursorAfterDelete helper
2026-05-21 20:35:37 -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
6a0ab74411
refactor(chat): flatten event-handler guards with early returns
2026-05-21 20:34:12 -04:00
ayn2op
bd4b5f9866
fix(cache): avoid panic in Invalidate and collapse double lookup
2026-05-21 20:34:12 -04:00
ayn2op
7d08cdcdef
docs(README): add picker preview
2026-05-18 03:43:32 -04:00
ayn2op
e6048b4b79
build: go mod tidy
2026-05-18 03:31:07 -04:00
ayn2op
fab3ae2812
perf(chat): render each message once, drop redundant embed parse
2026-05-17 22:38:16 -04:00
ayn2op
5fae84533d
refactor: dedupe attach-files check, drop redundant wrappers
2026-05-17 20:52:10 -04:00
ayn2op
4bc49c52c5
refactor: deduplicate guilds tree help, simplify date separator default
2026-05-17 19:58:17 -04:00
ayn2op
a02c541df3
refactor(chat): remove dead code
2026-05-17 19:37:48 -04:00
ayn2op
c1bf40184a
fix(chat): synchronize typing timer access
2026-05-17 19:26:27 -04:00