Commit Graph

8 Commits

Author SHA1 Message Date
Mathias Beaulieu-Duncan
780ef9378f feat: custom native file picker showing hidden files/folders
Replaced file_picker's Load/Browse with a custom NativePickerRegistrar
Swift plugin that opens NSOpenPanel with showsHiddenFiles = true.
The file_picker package hardcodes this to false, making hidden folders
like ~/.claude invisible in its dialogs.

Changes:
- New NativePickerRegistrar.swift: custom NSOpenPanel with hidden files
- New NativePicker Dart service using method channel
- Browse: only shows folders (canChooseFiles=false), hidden visible
- Load: only shows .jsonl files, hidden folders visible
- Registered via AppDelegate.applicationDidFinishLaunching
- Removed file_picker dependency from home_screen imports
- Fixed all info-level lint issues (super params, null-aware, doc comment)
- Signed, notarized, stapled DMG
2026-04-07 14:32:06 -04:00
Mathias Beaulieu-Duncan
0b72c679bc fix: update tooltip - hidden folders not visible in native dialogs
The Cmd+Shift+. shortcut does not work in NSOpenPanel dialogs used by file_picker.
Path input field is the recommended way to access hidden folders like ~/.claude.
Signed, notarized, stapled DMG
2026-04-07 14:23:59 -04:00
Mathias Beaulieu-Duncan
df23483278 ux: add hidden folder hint, better path input placeholder, dialog titles
- Add info tooltip: 'Press Cmd+Shift+. in dialogs to show hidden folders'
- Better path input hint: 'Path to scan (e.g. ~/.claude/projects)'
- Add dialog titles for Load and Browse pickers
- Signed, notarized, stapled DMG
2026-04-07 14:19:22 -04:00
Mathias Beaulieu-Duncan
f6b496dad7 fix: two-row header layout, flexible path input, button error handling
- Split header into two rows: breadcrumb + count on top, path/buttons below
- Path input is now flexible (fills available width) instead of fixed 320px
- Fixes Row overflow on narrow windows
- Load/Browse buttons now same height (36px) as path input
- Added try/catch with snackbar error feedback for Load and Browse
- Removed initialDirectory from file picker (could fail in non-sandbox)
- Browse also updates the path input field when a folder is selected
- Signed, notarized, stapled DMG
2026-04-07 14:01:04 -04:00
Mathias Beaulieu-Duncan
53ed5a6cd1 fix: disable sandbox for ~/.claude access, add path input field for hidden folders
- Remove App Sandbox from Release entitlements (developer tool needs
  filesystem access to ~/.claude/projects — same as VS Code, iTerm2)
- Explicitly set get-task-allow=false in entitlements for notarization
- Add path input field in header so users can type paths with hidden
  folders (e.g. ~/.claude/projects) — press Enter or click arrow to scan
- Field pre-populated with ~/.claude/projects on launch
- Signed, notarized, stapled DMG
2026-04-07 13:55:24 -04:00
Mathias Beaulieu-Duncan
5c693bf3d8 feat: Browse picks folder, Load picks single file, recursive .jsonl scan
- Browse button now opens a folder picker and recursively scans all
  subfolders for .jsonl files, displaying them in the session list
- New Load button for loading a single .jsonl file (old Browse behavior)
- Default path remains ~/.claude/projects on launch
- Signed, notarized, stapled DMG
2026-04-07 13:45:24 -04:00
Mathias Beaulieu-Duncan
aa484f6409 Rename to Claude Session Analysis and prepare for Mac App Store
- Rename package, bundle ID, and all display strings from
  "Claude Session Viewer" to "Claude Session Analysis"
- Bundle ID: com.svrnty.claudeSessionAnalysis
- Add App Store category (developer-tools) to Info.plist
- Add PrivacyInfo.xcprivacy privacy manifest (required by Apple)
- Bump deployment target from macOS 10.15 to 13.0
- Fix App Sandbox: resolve real home directory so ~/.claude/projects
  is accessible in sandboxed release builds
- Make project name parsing dynamic (no hardcoded username)
- Auto-detect Claude Code data directory at ~/.claude/

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 16:57:20 -04:00
364877d376 Initial commit: Claude Code session viewer (Flutter macOS)
A desktop app that parses Claude Code .jsonl session logs and provides
a rich UI for exploring conversations, tool usage, subagents, and token
consumption. Features include project browser with auto-discovery of
~/.claude/projects, conversation timeline with inline subagent expansion,
agents overview, toolbelt chart, and token usage dashboard.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 16:17:23 -04:00