feat(cleaner): add open file location button to scan results#83
Conversation
Allow users to reveal scanned items in their system file manager (Explorer/Finder/Files) directly from the cleaner results list. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d5afa3276a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Skip rendering the open-location button for items that use non-filesystem labels (e.g. "Recycle Bin", "PATH → …") where the action would be a silent no-op. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
a270e80 to
39f2389
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 39f2389c28
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| import { toast } from 'sonner' | ||
|
|
||
| /** Check whether a path looks like an absolute filesystem path (not a label like "Recycle Bin" or "PATH → …"). */ | ||
| const isAbsolutePath = (p: string) => /^[A-Za-z]:[\\/]/.test(p) || p.startsWith('/') |
There was a problem hiding this comment.
Accept UNC paths in absolute-path guard
isAbsolutePath only recognizes drive-letter and POSIX-rooted paths, so valid Windows UNC paths (for example \\server\share\file.tmp) are treated as non-absolute and the new open-location button is never rendered for those entries. The IPC handler uses Node path.isAbsolute, which does accept UNC paths, so this frontend check is stricter than the backend and blocks the feature for users with redirected/network profile paths.
Useful? React with 👍 / 👎.
Summary
Test plan
🤖 Generated with Claude Code