Skip to content

fix: give the drag handle and the sub-navigation checkbox accessible names - #10

Merged
webard merged 1 commit into
1.xfrom
fix/accessible-view-controls
Sep 24, 2026
Merged

webard merged 1 commit into
1.xfrom
fix/accessible-view-controls

Conversation

@webard

@webard webard commented Sep 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Two controls in each manager row had no usable accessible name:

  • The drag handle was an icon-only <button> with no label — a screen reader announced it as just "button", once per view. It now gets aria-label="Move <view name>", the way Filament labels its own drag handles (its translated "Move" in the builder, "Reorder column" + the column name in the column manager).
  • The sub-navigation checkbox had only a title, identical in every row ("Show in the page menu"). Its aria-label now names the view: "Show in the page menu: Verified users".

No new strings: the handle reuses Filament's translated filament-forms::components.builder.actions.reorder.label ("Move", in 63 of the 64 locales; hi falls back to English exactly like Filament's own builder), the checkbox reuses the package's submenu_visible.

Test plan

  • New AccessibleControlsTest: both labels are in the template; the borrowed Filament key resolves in every locale the package ships
  • Playground (Filament 5): accessible names read Move Verified users / Show in the page menu: Verified users, and Przesuń … / Pokaż w menu strony: … with APP_LOCALE=pl
  • composer test (179 passed), phpstan, pint --test, rector --dry-run

…names

The drag handle was an icon-only button with no name, announced as just
"button". It is now labelled like Filament's own handles — Filament's
translated "Move" plus the view's name. The sub-navigation checkbox had
only a title, identical in every row; its aria-label now names the view.
Both reuse existing translations, so no new strings.
Copilot AI lite review requested due to automatic review settings September 24, 2026 19:16

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

The accessibility changes are covered by tests, with no blocking issues.

Review effort: Lite
Findings: None

What changed in this PR

Adds accessible, view-specific names to saved-view drag handles and sub-navigation checkboxes.

Changes:

  • Reuses localized labels for both controls.
  • Adds tests for accessible labels and locale resolution.
File Summary
tests/​Feature/​AccessibleControlsTest.php Verifies labels and translation resolution.
resources/​views/​livewire/​saved-views-control.blade.php Adds accessible names to manager controls.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@webard
webard merged commit 1ca07f2 into 1.x Sep 24, 2026
27 checks passed
@webard
webard deleted the fix/accessible-view-controls branch September 24, 2026 19:19
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.

2 participants