Auto-refresh the active tab's panels (silent, non-disturbing)
Local panels are fs.watched (LocalDirWatcher + setWatchedDirs -> pathRefresh);
remote panels poll every 3s. New refresh({silent}) skips the loading/busy
flags and touches no DOM, snapshotting sessionId+cwd to discard results if the
user navigated mid-flight. Only the active tab is live; switching tabs
refreshes the new pair. A future on/off setting is left as commented
breadcrumbs. Docs updated.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -85,6 +85,12 @@ touching the adjacent code.
|
||||
don't shrink the 400 ms debounce.
|
||||
- `panel.touched` gates localDir auto-navigation; `connectToken` guards
|
||||
against a slow connect resolving into a panel the user already reused.
|
||||
- **Silent auto-refresh must snapshot sessionId+cwd and discard a mismatched
|
||||
result.** A normal `refresh()` is masked by `busy` (input blocked), but the
|
||||
silent variant (poll/watch) runs while the user can navigate — without the
|
||||
guard, a poll that started in dir A resolves and stamps A's listing over the
|
||||
dir B the user just opened. It also never calls `scrollCursorIntoView`
|
||||
(scroll must stay put) and returns early if `busy()` or already refreshing.
|
||||
|
||||
## Build / tooling
|
||||
|
||||
|
||||
Reference in New Issue
Block a user