v0.28.0 3cb3770

history of internal/ui/app.go at v0.28.0

2026-03-25

2aad925refactor: migrate from jwijenbergh to bnema/puregotk + ebitengine/purego GPG Verifiedbrice

2026-03-18

5b9fd74fix: address second round of code review findings GPG Verifiedbrice
4eef5c1fix: resolve all golangci-lint issues to zero GPG Verifiedbrice
f5762b8fix: address code review findings across engine abstraction GPG Verifiedbrice
dbd974erefactor(port): rename GTKEntryInputTarget and improve engine-neutral doc comments GPG Verifiedbrice
54ea5e7feat(engine): wire SettingsApplier and FilterApplier into content coordinator GPG Verifiedbrice

2026-03-17

9591200fix: restore async webview pool prewarming lost during engine abstraction GPG Verifiedbrice
1dcf50cfix: address CodeRabbit review findings GPG Verifiedbrice
3489869refactor(M7): decouple coordinators and UI subsystems from infrastructure GPG Verifiedbrice
10854a9refactor(M6): remove infrastructure imports from ui/app.go GPG Verifiedbrice
5163049refactor(M2): replace any with typed interfaces in Engine port GPG Verifiedbrice
d0d5c96refactor(M1+M5): decouple handlers from usecase/config, deps.go from infrastructure GPG Verifiedbrice
cfe4a9crefactor(M6): decouple ui/app.go from infrastructure/webkit GPG Verifiedbrice

2026-03-16

c068e17refactor: complete engine abstraction (M5+M6) — decouple UI from webkit GPG Verifiedbrice

2026-03-15

7c11decfix: move content_termination_test.go to content/ and fix app.go type mismatches GPG Verifiedbrice
7f9d755refactor(content): decouple content/ package public API from webkit types GPG Verifiedbrice
9a59c25refactor(coordinator): extract content.go into coordinator/content/ package GPG Verifiedbrice
f36a1c5refactor(ui): replace webkit fields in Dependencies with Engine GPG Verifiedbrice

2026-03-13

4f21c98fix: address code review findings (cancel focus, log privacy, timer races, pool cleanup, shortcut reload) GPG Verifiedbrice
ea0fc29fix: WebView accent picker double-char and lost focus GPG Verifiedbrice
9c71032fix: address thread-safety and nil-guard issues in keyboard routing GPG Verifiedbrice
7dee585fix: restore app shortcuts when WebView has focus GPG Verifiedbrice

2026-03-12

b655271fix(input): use focus-based routing and narrow lint exclusions GPG Verifiedbrice
3993b47fix: resolve CI lint failures and harden review findings GPG Verifiedbrice

2026-03-11

0523844fix(input): prevent double accent detection and restrict JS events to editable targets GPG Verifiedbrice
b05099cfix(input): use bubble phase + IM fallback for dead keys, move accent detection to widget level GPG Verifiedbrice
56250d7fix(app): include find bar in GTK Entry routing for accent detection GPG Verifiedbnema
357118cfeat(app): wire unified key routing with native dead key support GPG Verifiedbnema

2026-03-10

f7811f6refactor: unify omnibox suggestion authority GPG Verifiedbrice

2026-02-17

9244af4fix: hide visible floating pane on Escape GPG Verifiedbrice

2026-02-10

bfcbf1afix(ui): reattach floating sessions after workspace rebuild GPG Verifiedbrice
ff584d1fix(ui): address PR review follow-ups GPG Verifiedbrice

2026-02-09

4959fb8fix(ui): address CodeRabbit feedback across floating-pane paths GPG Verifiedbrice
482d014fix(ui): restore floating focus and release on close GPG Verifiedbrice
48c09fefix(ui): stabilize floating pane allocation and repaint on rapid toggles GPG Verifiedbrice
eb849fefeat(ui): implement floating pane profiles with independent sessions GPG Verifiedbrice
15ee0d7fix(ui): allow independent dumber process launches GPG Verifiedbrice

2026-02-08

f14455fMerge branch 'main' into feat/permission-system merge GPG Unverifiedbnema
c51ceb8feat(permission): add WebRTC diagnostics and remove unsafe request checks GPG Verifiedbrice
25342a3feat(crash): add unexpected-close reports with CLI and issue template GPG Verifiedbnema

2026-02-07

9bb5879feat(permission): replace Adwaita dialog with custom popup overlay GPG Verifiedbrice
ef3f82afeat(permission): wire permission system into main application GPG Verifiedbrice
c948582fix: stabilize webview signals, pane history cleanup, and ghost selection GPG Verifiedbrice

2026-01-29

8c8c066feat: allow Alt+hjkl pane navigation while omnibox is open GPG Verifiedbrice

2026-01-26

43b8409fix: defer omnibox auto-open until GTK layout completes GPG Verifiedbrice

2026-01-25

75cd777fix: popups not working in split panes, consolidate WebView callback setup GPG Verifiedtag v0.26.1brice

2026-01-24

92eeb35fix: localhost URL normalization and download handler clean architecture refactor GPG Verifiedbrice
e6c3832feat(input): add hot reload for keyboard shortcuts GPG Verifiedbnema

2026-01-23

df1aa18feat(omnibox): add inline ghost text autocompletion GPG Verifiedbrice
180a0d0perf(startup): defer non-critical init until after first navigation starts GPG Verifiedbrice

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close