diff --git a/packages/main/src/List.ts b/packages/main/src/List.ts index 2d34da5cefd3..1afc77eaed68 100644 --- a/packages/main/src/List.ts +++ b/packages/main/src/List.ts @@ -840,6 +840,10 @@ class List extends UI5Element { return toLowercaseEnumValue(this.accessibleRole); } + get noDataItemRole() { + return LIST_ACCESSIBLE_ROLE_TO_ITEM_ROLE[this.accessibleRole] || "listitem"; + } + get classes(): ClassMap { return { root: { diff --git a/packages/main/src/ListItemBaseTemplate.tsx b/packages/main/src/ListItemBaseTemplate.tsx index 93726916589a..9a6d5bd78c87 100644 --- a/packages/main/src/ListItemBaseTemplate.tsx +++ b/packages/main/src/ListItemBaseTemplate.tsx @@ -16,6 +16,7 @@ export default function ListItemBaseTemplate(this: ListItemBase, hooks?: { listI draggable={this.movable} role={injectedProps?.role} title={injectedProps?.title} + aria-selected={injectedProps?.role === "option" ? this.selected : undefined} onFocusIn={this._onfocusin} onKeyUp={this._onkeyup} onKeyDown={this._onkeydown} diff --git a/packages/main/src/ListTemplate.tsx b/packages/main/src/ListTemplate.tsx index 1015f60bd72e..7b49be5a7046 100644 --- a/packages/main/src/ListTemplate.tsx +++ b/packages/main/src/ListTemplate.tsx @@ -58,7 +58,7 @@ export default function ListTemplate(this: List) { {this.showNoDataText && -
  • +
  • {this.noDataText}
    diff --git a/packages/main/src/SelectPopoverTemplate.tsx b/packages/main/src/SelectPopoverTemplate.tsx index 6a7626a2ef69..31aef41b9f1e 100644 --- a/packages/main/src/SelectPopoverTemplate.tsx +++ b/packages/main/src/SelectPopoverTemplate.tsx @@ -27,7 +27,7 @@ export default function SelectPopoverTemplate(this: Select) { onBeforeOpen={this._beforeOpen} onClose={this._afterClose} onKeyDown={this._onkeydown} - accessibleName={this._isPhone ? this._headerTitleText : undefined} + accessibleName={this.ariaLabelText || this._headerTitleText} > {this._isPhone &&
    @@ -68,6 +68,7 @@ export default function SelectPopoverTemplate(this: Select) { onMouseDown={this._itemMousedown} onItemClick={this._handleItemPress} accessibleRole="ListBox" + accessibleName={this.ariaLabelText || this._headerTitleText} >