Skip to content

[Fleet] Fix screen reader announcement for actions buttons across Fleet tables#258559

Merged
bhavyarm merged 14 commits intomainfrom
copilot/fix-actions-button-announcement
Apr 14, 2026
Merged

[Fleet] Fix screen reader announcement for actions buttons across Fleet tables#258559
bhavyarm merged 14 commits intomainfrom
copilot/fix-actions-button-announcement

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 19, 2026

Closes: #230985

The actions button in Fleet tables had aria-label="Open", causing screen readers to announce it as "Open, button" — providing no semantic context for non-sighted users (WCAG 1.3.1). With multiple rows, a generic label like "Actions" still doesn't help screen reader users distinguish between buttons in different rows.

Changes

  • context_menu_actions.tsx: Added an optional ariaLabel prop to ContextMenuActions. The EuiButtonIcon uses the passed label when provided, falling back to the generic "Actions" translation.

  • actions_menu.tsx (AgentPolicyActionMenu): Passes "Actions for {policyName}" as the ariaLabel when rendering in icon-only mode, so each row's button is uniquely announced (e.g. "Actions for ESTEC Agent Policy, button").

  • package_policy_actions_menu.tsx (PackagePolicyActionsMenu): Passes "Actions for {policyName}" using the package policy name.

  • data_stream_row_actions.tsx (DataStreamRowActions): Passes "Actions for {dataset}" using the data stream's dataset name.

This ensures screen readers announce each row's button with enough context to distinguish it from buttons in other rows, across all Fleet tables that use the shared ContextMenuActions component.

Original prompt

This section details on the original issue you should resolve

<issue_title>[Security:Assets:AgentsPolicies] Actions button announced as open, button on agent policies table</issue_title>
<issue_description>Description
Actions button on agent policies table is announced as open, button.

Preconditions
Security->Assets->AgentPolicies
You have one or more agent policies

Steps to reproduce

  1. Navigate to Security->Assets ->Agent Policies tab
  2. Run voiceover
  3. Click on "..." under action column
  4. Notice Kibana announcing it as "open, button"
  5. This doesn't give any context to non-sighted user
Image

Kibana Version: 9.2.0

OS: OS X

Browser: Chrome latest

**WCAG or Vendor Guidance **

Related to: https://github.com/elastic/kibana-team/issues/1773
</issue_description>

<agent_instructions>rename open to actions button</agent_instructions>

Comments on the Issue (you are @copilot in this section)

@elasticmachine Pinging @elastic/security-solution (Team: SecuritySolution) @elasticmachine Pinging @elastic/kibana-accessibility (Project:Accessibility) @elasticmachine Pinging @elastic/security-asset-management (Team:Asset Management) @bhavyarm Found while auditing for https://github.com/elastic/kibana-team/issues/2404

💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.

…ble actions button

Co-authored-by: bhavyarm <7074629+bhavyarm@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix actions button announcement for agent policies table [Fleet] Fix screen reader announcement for agent policies table actions button Mar 19, 2026
Copilot AI requested a review from bhavyarm March 19, 2026 14:53
@bhavyarm bhavyarm added Project:Accessibility a11y:agent-pr PR has been created by the agent backport:all-open Backport to all branches that could still receive a release release_note:skip Skip the PR/issue when compiling release notes Team:Fleet Team label for Observability Data Collection Fleet team labels Mar 19, 2026
@bhavyarm bhavyarm marked this pull request as ready for review March 19, 2026 16:54
@bhavyarm bhavyarm requested a review from a team as a code owner March 19, 2026 16:54
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/fleet (Team:Fleet)

@juliaElastic
Copy link
Copy Markdown
Contributor

/ci

@juliaElastic
Copy link
Copy Markdown
Contributor

@elasticmachine run docs-build

@bhavyarm
Copy link
Copy Markdown
Contributor

@elasticmachine merge upstream

@bhavyarm
Copy link
Copy Markdown
Contributor

@elasticmachine run docs-build

@bhavyarm
Copy link
Copy Markdown
Contributor

/ci

@alexwizp
Copy link
Copy Markdown
Contributor

@bhavyarm I’m not sure a simple rename fully resolves the a11y issue. With multiple rows, we still end up with items that have very similar labels. Previously, we agreed to add more context to the aria-label, e.g. “Actions for row {row number}” or “Actions for {row title}”.

@alexwizp
Copy link
Copy Markdown
Contributor

@copilot please apply suggestions from my previous message

@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@elasticmachine
Copy link
Copy Markdown
Contributor

💚 Build Succeeded

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
fleet 2.3MB 2.3MB +551.0B

History

cc @bhavyarm @Copilot

@macroscopeapp
Copy link
Copy Markdown
Contributor

macroscopeapp Bot commented Mar 30, 2026

Approvability

Verdict: Would Approve

This PR adds aria-label attributes to action buttons for screen reader accessibility improvements. The changes are purely presentational with no runtime behavior impact - only adding i18n-translated labels to existing buttons. The open review comment about prop naming appears to already be addressed in the current code.

No code changes detected at 1192b34. Prior analysis still applies.

Macroscope would have approved this PR. A repo admin can enable approvability here.

@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@alexwizp
Copy link
Copy Markdown
Contributor

@elasticmachine run docs-build

@alexwizp alexwizp added backport:version Backport to applied version labels v9.4.0 v9.5.0 v9.3.4 and removed backport:all-open Backport to all branches that could still receive a release labels Apr 14, 2026
@alexwizp
Copy link
Copy Markdown
Contributor

/ci

@alexwizp
Copy link
Copy Markdown
Contributor

@elasticmachine run docs-build

@bhavyarm bhavyarm merged commit 3303bb4 into main Apr 14, 2026
20 checks passed
@bhavyarm bhavyarm deleted the copilot/fix-actions-button-announcement branch April 14, 2026 21:20
@kibanamachine
Copy link
Copy Markdown
Contributor

Starting backport for target branches: 9.3, 9.4

https://github.com/elastic/kibana/actions/runs/24423527735

@kibanamachine
Copy link
Copy Markdown
Contributor

💔 Some backports could not be created

Status Branch Result
9.3 Backport failed because of merge conflicts
9.4

Note: Successful backport PRs will be merged automatically after passing CI.

Manual backport

To create the backport manually run:

node scripts/backport --pr 258559

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Apr 14, 2026
…ss Fleet tables (#258559) (#263207)

# Backport

This will backport the following commits from `main` to `9.4`:
- [[Fleet] Fix screen reader announcement for actions buttons across
Fleet tables (#258559)](#258559)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT
[{"author":{"name":"Copilot","email":"198982749+Copilot@users.noreply.github.com"},"sourceCommit":{"committedDate":"2026-04-14T21:20:32Z","message":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet tables
(#258559)","sha":"3303bb4d2182153a16be2632d0c012031ca0271b","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Project:Accessibility","release_note:skip","💝community","Team:Fleet","backport:version","v9.4.0","a11y:agent-pr","v9.5.0","v9.3.4"],"title":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet
tables","number":258559,"url":"https://github.com/elastic/kibana/pull/258559","mergeCommit":{"message":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet tables
(#258559)","sha":"3303bb4d2182153a16be2632d0c012031ca0271b"}},"sourceBranch":"main","suggestedTargetBranches":["9.4","9.3"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/258559","number":258559,"mergeCommit":{"message":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet tables
(#258559)","sha":"3303bb4d2182153a16be2632d0c012031ca0271b"}},{"branch":"9.3","label":"v9.3.4","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
alexwizp pushed a commit to alexwizp/kibana that referenced this pull request Apr 15, 2026
…et tables (elastic#258559)

(cherry picked from commit 3303bb4)

# Conflicts:
#	x-pack/platform/plugins/shared/fleet/public/components/context_menu_actions.tsx
@alexwizp
Copy link
Copy Markdown
Contributor

💚 All backports created successfully

Status Branch Result
9.3

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

alexwizp added a commit that referenced this pull request Apr 15, 2026
…ss Fleet tables (#258559) (#263320)

# Backport

This will backport the following commits from `main` to `9.3`:
- [[Fleet] Fix screen reader announcement for actions buttons across
Fleet tables (#258559)](#258559)

<!--- Backport version: 11.0.1 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT
[{"author":{"name":"Copilot","email":"198982749+Copilot@users.noreply.github.com"},"sourceCommit":{"committedDate":"2026-04-14T21:20:32Z","message":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet tables
(#258559)","sha":"3303bb4d2182153a16be2632d0c012031ca0271b","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Project:Accessibility","release_note:skip","💝community","Team:Fleet","backport:version","v9.4.0","a11y:agent-pr","v9.5.0","v9.3.4"],"title":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet
tables","number":258559,"url":"https://github.com/elastic/kibana/pull/258559","mergeCommit":{"message":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet tables
(#258559)","sha":"3303bb4d2182153a16be2632d0c012031ca0271b"}},"sourceBranch":"main","suggestedTargetBranches":["9.3"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"url":"https://github.com/elastic/kibana/pull/263207","number":263207,"state":"MERGED","mergeCommit":{"sha":"8ef171d45c78eb301827446fd3cdc189f586c132","message":"[9.4]
[Fleet] Fix screen reader announcement for actions buttons across Fleet
tables (#258559) (#263207)\n\n# Backport\n\nThis will backport the
following commits from `main` to `9.4`:\n- [[Fleet] Fix screen reader
announcement for actions buttons across\nFleet tables
(#258559)](https://github.com/elastic/kibana/pull/258559)\n\n\n\n###
Questions ?\nPlease refer to the [Backport
tool\ndocumentation](https://github.com/sorenlouv/backport)\n\n\n\nCo-authored-by:
Copilot
<198982749+Copilot@users.noreply.github.com>"}},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/258559","number":258559,"mergeCommit":{"message":"[Fleet]
Fix screen reader announcement for actions buttons across Fleet tables
(#258559)","sha":"3303bb4d2182153a16be2632d0c012031ca0271b"}},{"branch":"9.3","label":"v9.3.4","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a11y:agent-pr PR has been created by the agent backport:version Backport to applied version labels 💝community Project:Accessibility release_note:skip Skip the PR/issue when compiling release notes Team:Fleet Team label for Observability Data Collection Fleet team v9.3.4 v9.4.0 v9.5.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Security:Assets:AgentsPolicies] Actions button announced as open, button on agent policies table

7 participants