Skip to content

chore(ui5-combobox): improve accessibility and interaction when items are loaded with delay - #13507

Open
nikoletavnv wants to merge 41 commits into
mainfrom
lazy-load-poc
Open

chore(ui5-combobox): improve accessibility and interaction when items are loaded with delay#13507
nikoletavnv wants to merge 41 commits into
mainfrom
lazy-load-poc

Conversation

@nikoletavnv

@nikoletavnv nikoletavnv commented May 12, 2026

Copy link
Copy Markdown
Contributor

The change enhances screen reader announcement when a loading of items starts and ends. It also introduces a new event 'load-items' that users can use in order to set the ui5-combobox or ui5-multi-combobox component in a loading state.

JIRA: BGSOFUIRILA-4491

@ui5-webcomponents-bot

ui5-webcomponents-bot commented May 12, 2026

Copy link
Copy Markdown
Collaborator

@ui5-webcomponents-bot
ui5-webcomponents-bot temporarily deployed to preview May 12, 2026 13:21 Inactive
@ui5-webcomponents-bot
ui5-webcomponents-bot temporarily deployed to preview May 12, 2026 20:51 Inactive
@ui5-webcomponents-bot
ui5-webcomponents-bot temporarily deployed to preview May 21, 2026 09:01 Inactive
@ui5-webcomponents-bot
ui5-webcomponents-bot temporarily deployed to preview May 22, 2026 08:05 Inactive
@ui5-webcomponents-bot
ui5-webcomponents-bot temporarily deployed to preview May 26, 2026 13:31 Inactive
@nikoletavnv
nikoletavnv temporarily deployed to netlify-preview June 2, 2026 15:29 — with GitHub Actions Inactive
@ui5-webcomponents-bot
ui5-webcomponents-bot temporarily deployed to preview June 2, 2026 15:36 Inactive

@ivoplashkov ivoplashkov 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.

  • MCB fires load-items with the old value. In _inputLiveChange, fireOnInput() runs at the top, but this.value isn't updated from the input until later — so detail.value is one keystroke behind. ComboBox does it the other way (fires after updating value), so the two components disagree.
  • Announced count doesn't match what's shown. MCB counts group headers as "results" (ComboBox correctly excludes them), and the count comes from visible items rather than the filtered list that was just set in onLoadingEnd — so we can announce "5 results" while the list shows 2.
  • The announcement always says "Data loaded" even if the fetch threw. I see that this might be impossible to cover as a use case, but maybe we can discuss whether we should leave the "Data loaded" announcement to be on app side as well.

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.

4 participants