Skip to content

Comments

feat(app): file picker full filesystem navigation#495

Merged
cpcloud merged 3 commits intomainfrom
feat/485-file-picker-nav
Feb 23, 2026
Merged

feat(app): file picker full filesystem navigation#495
cpcloud merged 3 commits intomainfrom
feat/485-file-picker-nav

Conversation

@cpcloud
Copy link
Owner

@cpcloud cpcloud commented Feb 23, 2026

Summary

  • Fix back-navigation in the file picker — filepath.Dir(".") returned ".", so pressing h/backspace/left was a no-op that just reset the cursor to the top. Resolved by using an absolute CWD path.
  • Show live current directory path (dimmed, ~-abbreviated) in the title next to the field label
  • Add static navigation hint description (h/← back · enter open)
  • Style directories in accent blue bold, files in bright text, bold selected row, triangle cursor
  • Hide permissions column

Reproduction (before fix)

  1. Open any document form (new or edit)
  2. Tab to the file picker field
  3. Press h, backspace, or left to navigate up
  4. Expected: navigate to parent directory
  5. Actual: cursor jumps to top of same directory listing (like pressing g)

Test plan

  • TestFilePickerBackNavigatesUp — all three back keys navigate to parent; fails without the fix
  • TestFilePickerTitleShowsCurrentDir — title updates to reflect current directory after navigating
  • Open document form, verify file picker shows File to attach in ~/... with dimmed path
  • Navigate into a subdirectory with l/right/enter — title path updates
  • Press h/backspace/left — navigates to parent, title path updates
  • Navigate all the way up to / and back down
  • Verify directories appear in blue bold, files in bright text
  • Verify permissions column is hidden
  • Verify triangle cursor on selected row
  • Verify hint line h/← back · enter open stays fixed width below title

closes #485

🤖 Generated with Claude Code

The file picker's back-navigation (h/backspace/left) was silently broken
because bubbles filepicker defaults to CurrentDirectory "." and
filepath.Dir(".") == ".", making Back a no-op that just reset the cursor.

Fix by resolving CWD to an absolute path via os.Getwd(). Also improve
the picker UX:

- Show live current directory path (dimmed) in the title
- Add navigation hint description (h/← back · enter open)
- Style directories in accent blue bold, files in bright text
- Bold the selected row, use ▸ triangle cursor
- Hide the permissions column (not useful for file uploads)

closes #485
Verify that h/backspace/left navigate to the parent directory and that the
title updates to reflect the current path. The back-navigation test fails
without the CurrentDirectory(absolutePath) fix — confirming the regression
is caught.

closes #485
The tesseract chocolatey package intermittently fails to download due to
CDN issues. Wrap the choco install in a PowerShell retry loop (3 attempts
with 10s backoff). Also set fail-fast: false so a single matrix failure
doesn't cancel the other OS jobs.

Add explicit shell: pwsh so actionlint/shellcheck doesn't try to parse
the PowerShell syntax as bash.

closes #485
@cpcloud cpcloud merged commit c71e8a4 into main Feb 23, 2026
12 checks passed
@cpcloud cpcloud deleted the feat/485-file-picker-nav branch February 23, 2026 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(ui): allow full navigation in file picker

1 participant