提交 42be38cd 编写于 作者: I isidor

list: do not set aria-selected for listbox roles

上级 33ccb980
......@@ -182,17 +182,19 @@ class Trait<T> implements ISpliceable<boolean>, IDisposable {
class SelectionTrait<T> extends Trait<T> {
constructor() {
constructor(private setAriaSelected: boolean) {
super('selected');
}
renderIndex(index: number, container: HTMLElement): void {
super.renderIndex(index, container);
if (this.contains(index)) {
container.setAttribute('aria-selected', 'true');
} else {
container.setAttribute('aria-selected', 'false');
if (this.setAriaSelected) {
if (this.contains(index)) {
container.setAttribute('aria-selected', 'true');
} else {
container.setAttribute('aria-selected', 'false');
}
}
}
}
......@@ -1198,7 +1200,7 @@ export class List<T> implements ISpliceable<T>, IDisposable {
renderers: IListRenderer<any /* TODO@joao */, any>[],
private _options: IListOptions<T> = DefaultOptions
) {
this.selection = new SelectionTrait();
this.selection = new SelectionTrait(this._options.ariaRole !== 'listbox');
this.focus = new Trait('focused');
mixin(_options, defaultStyles, false);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册