Pad/cmd/pad
Greg Pomerantz efba13d4df Restore the browser directory in the background; drop the startup probe
The relaunch restore checked the saved browser directory with
os.ReadDir on the UI thread before the first frame (bounded to 2 s in
the previous commit). The check was unnecessary: Run dispatches a
background index load of Browser.CurrentPath immediately, and that load
IS the readability probe. So:

- main.go no longer does any pre-first-frame directory read;
  BeginBrowserRestore is called unconditionally for browser sessions.
- BrowserManager gains a one-shot initial-load fallback
  (SetLoadFallback): when the startup load fails (dir deleted by a sync,
  or unreadable by the app — /storage/emulated is 0750 media_rw), the
  manager reverts to the armed fallback (the startup directory) and
  loads it, instead of resetting to a blank browser. Any successful
  index disarms it, so later failures keep the History-recovery path.
- Logic stores its start path and arms the fallback from
  BeginBrowserRestore.

Verified on device with seeded sessions pointing at a deleted dir and
at unreadable /storage/emulated: both fall back to the startup dir in
~20 ms, first frame renders, list populated. New manager test
TestHandleResult_InitialLoadFailureFallsBack.
2026-10-08 22:59:51 -04:00
..
appicon.png IME: map commits against the whole buffer; drop the renderer-side model 2026-09-13 11:57:38 -04:00
impl_android.go Fix SIGABRT on activity destroy: null view in registerFragment 2026-08-20 18:49:00 -04:00
impl_other.go Flush the session snapshot on activity onStop (Android) 2026-08-20 18:24:43 -04:00
jni_android.c Fix SIGABRT on activity destroy: null view in registerFragment 2026-08-20 18:49:00 -04:00
jni_android.h Fix selection-handle drags, menu anchoring, and left-edge back-gesture theft 2026-08-18 13:09:29 -04:00
main.go Restore the browser directory in the background; drop the startup probe 2026-10-08 22:59:51 -04:00
Permissions.java Refactor RealFileSystem to use WorkingDir, and ensure clean shutdown with FlushAll 2026-06-05 11:42:39 -04:00