ayn2op
|
f9bb10d846
|
refactor(ui): update to tview's Widget and help style builders
|
2026-10-03 23:41:25 -04:00 |
|
ayn2op
|
1604231f6d
|
refactor(ui): update to tview's ActionNone keybinds
|
2026-10-02 15:33:03 -04:00 |
|
ayn2op
|
31c5d185ca
|
refactor(ui): update to tview's layout package and Element methods
|
2026-10-01 22:45:52 -04:00 |
|
ayn2op
|
dd2e690c34
|
feat(login): configure tabs with [ui.tabs]
|
2026-09-30 20:08:20 -04:00 |
|
ayn2op
|
74f8438bc1
|
refactor(ui): simplify models and messages
|
2026-09-30 16:45:13 -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
|
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 |
|
ayn2op
|
708b9d0357
|
fix(qr): serialize websocket I/O and keep reading past heartbeat_ack
|
2026-09-29 00:36:22 -04:00 |
|
ayn2op
|
9dc509e300
|
refactor(ui): adopt tview Change and Keybind APIs
|
2026-09-28 18:51:16 -04:00 |
|
ayn2op
|
24342490e5
|
refactor(ui)!: make models immutable values
|
2026-09-27 20:33:19 -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
|
c38fc3d9c0
|
refactor(ui): bump tview and adapt to tview.Screen API
|
2026-09-09 18:34:29 -04:00 |
|
ayn2op
|
1750d7dfb6
|
test: use identifier-based names and subtests
|
2026-09-06 19:38:11 -04:00 |
|
ayn2op
|
8b9c28ce56
|
test(markdown,guildstree,qr,root): use identifier-based names and subtests
|
2026-09-02 18:09:21 -04:00 |
|
ayn2op
|
94eaf25286
|
text: migrate to tview text package
|
2026-08-30 20:06:45 -04:00 |
|
ayn2op
|
774e4059df
|
build(deps): update to latest
|
2026-08-21 23:28:51 -04:00 |
|
ayn2op
|
cf6c343fd5
|
refactor: use encoding/json/v2
|
2026-08-21 19:59:40 -04:00 |
|
ayn2op
|
26dc8cf748
|
refactor: adopt generic options
|
2026-08-18 03:42:17 -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
|
be5aebdd14
|
refactor(ui): adapt to tview input changes
|
2026-08-07 21:45:38 -04:00 |
|
ayn2op
|
228bfaeb05
|
feat(ui): add password login
|
2026-08-06 21:45:16 -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
|
84c6615956
|
fix(login): forward token submit
|
2026-07-09 15:38:28 -04:00 |
|
ayn2op
|
391f3b974c
|
refactor(ui): replace tview modal usage
|
2026-07-09 04:12:33 -04:00 |
|
ayn2op
|
235cecb3eb
|
clipboard: ignore Write return value
|
2026-07-08 05:13:17 -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
|
85ce6cae34
|
refactor(ui): match tview.InputField api
|
2026-06-12 21:07:42 -04:00 |
|
ayn2op
|
d3b5c21263
|
refactor(qr): match QR pixel pairs to half-block glyphs
|
2026-05-21 21:27:08 -04:00 |
|
ayn2op
|
5fae84533d
|
refactor: dedupe attach-files check, drop redundant wrappers
|
2026-05-17 20:52:10 -04:00 |
|
ayn2op
|
00d259fc67
|
build(deps): upgrade tview to latest
|
2026-04-29 18:21:24 -04:00 |
|
ayn2op
|
5f6d0296c3
|
fix(ui): use value messages instead of pointers
Closes #791
|
2026-04-20 13:53:51 -04:00 |
|
ayn2op
|
c998580e0e
|
refactor(ui): use value messages in models
|
2026-04-13 18:49:26 -04:00 |
|
ayn2op
|
cefc0cbf31
|
refactor(qr): replace fmt.Sprintf with concatenation
|
2026-04-09 00:14:02 -04:00 |
|
ayn2op
|
6807e194c4
|
refactor(internal): rename Event to Msg
|
2026-04-05 18:11:34 -04:00 |
|
ayn2op
|
f342768d3d
|
build(deps): upgrade tview to latest
|
2026-04-05 15:37:04 -04:00 |
|
ayn2op
|
51beca67e9
|
build(deps): upgrade deps to latest
|
2026-04-03 00:18:50 -04:00 |
|
ayn2op
|
6167d7d3d8
|
refactor(ui,picker)!: upgrade tview to latest and use newer api (#771)
|
2026-03-17 21:09:33 -04:00 |
|
ayn2op
|
abf8a09177
|
refactor(ui): upgrade tview to latest and adopt new API
|
2026-03-15 03:49:51 -04:00 |
|
ayn2op
|
8b99036acf
|
refactor(ui): inline command event literals
|
2026-03-14 20:28:54 -04:00 |
|
ayn2op
|
2d79e45f6f
|
refactor(ui): remove redraw commands and inline command events
|
2026-03-14 05:06:21 -04:00 |
|
ayn2op
|
5917a460d3
|
feat(ui/login): switch to tabs for token and qr login methods
|
2026-03-10 18:05:36 -04:00 |
|
ayn2op
|
f0b7dd5e78
|
refactor(login): remove redundant ctx parameter from exchangeTicket func
|
2026-03-08 18:17:58 -04:00 |
|
ayn2op
|
b02803906d
|
build(deps): upgrade clipboard to latest
|
2026-03-08 17:35:21 -04:00 |
|
ayn2op
|
643946fe64
|
feat(clipboard): add support for freebsd (#768)
|
2026-03-08 04:40:46 -04:00 |
|