Pad/internal/browser
Greg Pomerantz 4c8a13b779 Reload the previous directory's list after a failed navigation
Navigating into an unreadable directory failed cleanly in the header
(handleError reverts CurrentPath to the previous path) but left the
list empty forever: the recovery re-read of the previous directory
found it unchanged, so handleBuildIndexSuccess took the no-change
fast path — which assumes the view already shows that content — while
the failed navigation's navigateToDirectory reset had just wiped
TotalEntries/Pages. No frame was emitted and the browser sat on a
correct header over a dead list (seen on device tapping ".." into
/storage/emulated, which is media_rw:media_rw 0750; only
/storage/emulated/0 is app-exposed).

The fast path now requires a live view (TotalEntries != 0); a
torn-down view always takes the full rebuild, restoring the rows.
Regression test TestHandleResult_NavigationFailureRecoveryReloads
(red without the fix, green with it); verified on emulator and phone.
2026-09-03 12:53:23 -04:00
..
browser_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
browser.go Browser: keep the file list live (re-read on change, re-sort, no idle frames) 2026-09-02 18:23:16 -04:00
handlers.go chore: remove per-event debug logging from the normal path 2026-08-16 20:58:49 -04:00
index_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
index.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
layout_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
layout.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
lazy_loading_test.go Browser: keep the file list live (re-read on change, re-sort, no idle frames) 2026-09-02 18:23:16 -04:00
manager_test.go Reload the previous directory's list after a failed navigation 2026-09-03 12:53:23 -04:00
manager.go Reload the previous directory's list after a failed navigation 2026-09-03 12:53:23 -04:00
navigation_test.go Integrate real filesystem with interface abstraction 2026-06-04 16:19:38 -04:00
pixel_scroll_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
scroll_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
search_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
search.go Fix bugs in e2e tests and remove list item selection highlight 2026-06-02 13:30:09 -04:00
sort_test.go Add e2e test harness for testing editor logic without Gio display 2026-05-31 08:56:30 -04:00
sort.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
types_test.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00
types.go gofmt: format all remaining files with the go1.27 toolchain 2026-08-23 10:03:27 -04:00