Skip to content

[ACS-10280]: Keyboard Navigation: Search: Unnecessary stops in the results table using the Tab key#11736

Merged
MichalKinas merged 8 commits intodevelopfrom
bugfix/ACS-10280-checkbox-visibility-fix
Apr 1, 2026
Merged

[ACS-10280]: Keyboard Navigation: Search: Unnecessary stops in the results table using the Tab key#11736
MichalKinas merged 8 commits intodevelopfrom
bugfix/ACS-10280-checkbox-visibility-fix

Conversation

@rmnvch
Copy link
Copy Markdown
Contributor

@rmnvch rmnvch commented Mar 13, 2026

Please check if the PR fulfills these requirements

  • The commit message follows our guidelines
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce? (check one with "x")

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)
  • Refactoring (no functional changes, no api changes)
  • Build related changes
  • Documentation
  • Other... Please describe:

What is the current behaviour? (You can also link to an open issue here)
https://hyland.atlassian.net/browse/ACS-10280

What is the new behaviour?

Does this PR introduce a breaking change? (check one with "x")

  • Yes
  • No

!!!this PR removes decorative icon/image cells from
adf-datatable's accessibility tree. That change breaks

'XAT-16631 Should be able to correctly display data table with nested object and special characters in JSON keys for Path to JSON property'

on the hxp project where empty cell is expected and reserved for icon/Image cell.

suggested fix:
image

@rmnvch rmnvch added the A/N BDU label Mar 13, 2026
Copilot AI review requested due to automatic review settings March 13, 2026 07:50
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR targets an accessibility/keyboard-navigation issue in the DataTable used by search results, aiming to reduce unnecessary Tab stops and improve discoverability of hover-only row controls during keyboard interaction.

Changes:

  • Removes row-focus configuration (allowFocusOnRows / setAllowFocusOnTableRows) from the DataTableAdapter API and from ShareDataTableAdapter.
  • Updates the DataTable template to stop passing a disabled binding to rows (impacting row focus/tabindex behavior).
  • Adds a CSS rule to reveal “hover-only” controls when the table has focus within, and removes related unit tests.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
lib/core/src/lib/datatable/data/datatable-adapter.ts Removes exported adapter members previously used to control row focus behavior.
lib/core/src/lib/datatable/components/datatable/datatable.component.html Stops binding disabled into adf-datatable-row, changing row focusability/tab order.
lib/core/src/lib/datatable/components/datatable/datatable.component.scss Shows hover-only controls when the datatable contains focus (keyboard support).
lib/core/src/lib/datatable/components/datatable/datatable.component.spec.ts Removes tests related to adapter-controlled row focus.
lib/content-services/src/lib/document-list/data/share-datatable-adapter.ts Removes public focus-control property/method from the Share adapter.
lib/content-services/src/lib/document-list/data/share-datatable-adapter.spec.ts Removes unit tests for the deleted Share adapter members.
Comments suppressed due to low confidence (1)

lib/core/src/lib/datatable/components/datatable/datatable.component.spec.ts:1823

  • The PR removes the only tests that asserted row tabbability could be controlled via an adapter, but it doesn’t add/adjust tests to cover the new expected keyboard behavior (Tab stops, ArrowUp/ArrowDown navigation, Shift+Arrow drag&drop). Please add/update accessibility tests to lock in the intended focus order and prevent regressions.

    it('should create focus trap on main menu open', () => {
        dataTable.showHeader = ShowHeaderMode.Always;
        dataTable.showMainDatatableActions = true;
        dataTable.mainActionTemplate = columnCustomTemplate;

You can also share your feedback on Copilot code review. Take the survey.

@rmnvch rmnvch force-pushed the bugfix/ACS-10280-checkbox-visibility-fix branch from 12e4fe3 to f3ea935 Compare March 13, 2026 11:19
@rmnvch rmnvch force-pushed the bugfix/ACS-10280-checkbox-visibility-fix branch from f3ea935 to 46f9210 Compare March 17, 2026 11:57
@rmnvch rmnvch force-pushed the bugfix/ACS-10280-checkbox-visibility-fix branch from 46f9210 to 6ce5770 Compare March 26, 2026 09:31
@rmnvch rmnvch marked this pull request as draft March 26, 2026 09:32
@rmnvch rmnvch force-pushed the bugfix/ACS-10280-checkbox-visibility-fix branch from 6ce5770 to 78d6e87 Compare March 27, 2026 16:04
@rmnvch rmnvch marked this pull request as ready for review March 27, 2026 16:05

<div
*ngFor="let col of getVisibleColumns(); let lastColumn = last;"
*ngFor="let col of getVisibleColumns(); let lastColumn = last"
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.

can this be converted to @for angular flow syntax?

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.

Done, I've refactored the whole file with new control flow syntax

@MichalKinas MichalKinas requested a review from DenysVuika March 31, 2026 10:17
@sonarqubecloud
Copy link
Copy Markdown

@MichalKinas MichalKinas merged commit a3e13da into develop Apr 1, 2026
19 checks passed
@MichalKinas MichalKinas deleted the bugfix/ACS-10280-checkbox-visibility-fix branch April 1, 2026 08:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants