Skip to content

🎨 Palette: Improve workspace accessibility and safety#33

Merged
Sumit-5002 merged 1 commit into
mainfrom
palette-ux-accessibility-improvements-6650210719635703917
Mar 26, 2026
Merged

🎨 Palette: Improve workspace accessibility and safety#33
Sumit-5002 merged 1 commit into
mainfrom
palette-ux-accessibility-improvements-6650210719635703917

Conversation

@Sumit-5002

@Sumit-5002 Sumit-5002 commented Mar 26, 2026

Copy link
Copy Markdown
Owner

Micro-UX and accessibility improvements for AnyFileForge workspace and tool runners. Includes ARIA labels, icons, and safety confirmations.


PR created automatically by Jules for task 6650210719635703917 started by @Sumit-5002

Summary by CodeRabbit

  • Bug Fixes

    • Added confirmation dialog when clearing workspace to help prevent accidental data loss.
  • Style

    • Replaced text-based remove buttons with icon controls for improved visual clarity.
    • Enhanced accessibility labels and tooltips throughout editing tools with file-specific context.

This commit introduces several micro-UX and accessibility enhancements to the tool runners and workspace:
- Added descriptive ARIA labels and titles to all icon-only buttons (Remove, Preview, Move Up/Down) in `PdfMergeTool` and `ImageResizeTool`, including the filename for context.
- Replaced plain text 'x' and '×' markers with proper Lucide icons for better visual consistency.
- Implemented a confirmation dialog for the 'Clear All' action in `ToolWorkspace` to prevent accidental loss of uploaded files.
- Improved the 'Clear All' button label by removing the underscore.
- Ensured all changes are under the 50-line limit per file.

♿ Accessibility: Icon-only buttons are now screen-reader friendly and have helpful tooltips.
🎯 Why: Prevents accidental data loss and ensures a consistent, accessible experience across tool runners.
@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@coderabbitai

coderabbitai Bot commented Mar 26, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9b2b07bd-1a38-4e84-a67f-8f35ff2d370b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • ✅ Review completed - (🔄 Check again to review again)
✨ Finishing Touches
🧪 Generate unit tests (beta)

✅ Unit Test PR creation complete.

  • Create PR with unit tests
  • Commit unit tests in branch palette-ux-accessibility-improvements-6650210719635703917

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Sumit-5002
Sumit-5002 marked this pull request as ready for review March 26, 2026 08:53

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
src/features/tools/runners/common/ToolWorkspace.jsx (1)

171-183: Good safety measure for destructive action.

The confirmation dialog prevents accidental loss of uploaded files, and the ARIA attributes improve accessibility. This is a solid implementation.

One optional enhancement: the confirmation message could include the file count for better context (e.g., "Are you sure you want to clear all 5 files?").

💡 Optional: More contextual confirmation message
 onClick={() => {
-    if (window.confirm('Are you sure you want to clear all files? This action cannot be undone.')) {
+    if (window.confirm(`Are you sure you want to clear all ${files.length} file${files.length !== 1 ? 's' : ''}? This action cannot be undone.`)) {
         onReset();
     }
 }}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/features/tools/runners/common/ToolWorkspace.jsx` around lines 171 - 183,
Update the onClick handler's window.confirm message to include the current file
count so users see context before clearing; retrieve the count from the
component's props/state (e.g., files.length or workspaceFiles.length depending
on the component variable in this file) inside the onClick, build a pluralized
message like "Are you sure you want to clear all 1 file?" vs "…clear all 5
files?", and use that string in window.confirm before calling onReset; also
consider updating the title/aria-label if you want the count reflected there as
well.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@src/features/tools/runners/common/ToolWorkspace.jsx`:
- Around line 171-183: Update the onClick handler's window.confirm message to
include the current file count so users see context before clearing; retrieve
the count from the component's props/state (e.g., files.length or
workspaceFiles.length depending on the component variable in this file) inside
the onClick, build a pluralized message like "Are you sure you want to clear all
1 file?" vs "…clear all 5 files?", and use that string in window.confirm before
calling onReset; also consider updating the title/aria-label if you want the
count reflected there as well.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 41f8ef1e-03be-4100-bf77-9a306c3d7973

📥 Commits

Reviewing files that changed from the base of the PR and between f8600e2 and b9987a4.

📒 Files selected for processing (3)
  • src/features/tools/runners/common/ToolWorkspace.jsx
  • src/features/tools/runners/image/ImageResizeTool.jsx
  • src/features/tools/runners/pdf/PdfMergeTool.jsx

@Sumit-5002

Copy link
Copy Markdown
Owner Author

@coderabbitai is this ready to merge

@coderabbitai

coderabbitai Bot commented Mar 26, 2026

Copy link
Copy Markdown
Contributor

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Get PR status, reviews, and checks
gh pr view 33 --repo Sumit-5002/Anyfileforge --json state,reviewDecision,statusCheckRollup,reviews,comments

# Get review comments on the PR
gh api repos/Sumit-5002/Anyfileforge/pulls/33/comments --jq '[.[] | {user: .user.login, body: .body, resolved: .resolved}]'

Length of output: 9676


@Sumit-5002 Yes, this PR looks ready to merge! Here's the summary:

Check Status
🏗️ Build & Deploy (build_and_deploy) ✅ Passed
🐰 CodeRabbit ✅ Passed
🔓 Blocking review comments ✅ None
🔄 Review decision ✅ No blocking approvals required

The only feedback I left was a nitpick (optional, non-blocking): the window.confirm message in ToolWorkspace.jsx could include the current file count for better context (e.g., "Are you sure you want to clear all 5 files?"). You can apply it now or address it in a follow-up — it does not block the merge.

The core changes — ARIA labels, Lucide icons, and the Clear All confirmation dialog — all look solid. You're good to go! 🚀

@Sumit-5002
Sumit-5002 merged commit ce9a6b7 into main Mar 26, 2026
2 checks passed
@coderabbitai

coderabbitai Bot commented Mar 27, 2026

Copy link
Copy Markdown
Contributor

Note

Unit test generation is a public access feature. Expect some limitations and changes as we gather feedback and continue to improve it.


Generating unit tests... This may take up to 20 minutes.

@coderabbitai

coderabbitai Bot commented Mar 27, 2026

Copy link
Copy Markdown
Contributor

✅ Created PR with unit tests: #37

@Sumit-5002
Sumit-5002 deleted the palette-ux-accessibility-improvements-6650210719635703917 branch April 1, 2026 16:16
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.

1 participant