Skip to content

Commit e9940f4

Browse files
Wout-atmirealexandrevryghem
authored andcommitted
130479: add aria-selected to selected language + globe button uses a button element
1 parent 404ccd9 commit e9940f4

3 files changed

Lines changed: 17 additions & 15 deletions

File tree

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
<div ngbDropdown class="navbar-nav" *ngIf="moreThanOneLanguage" display="dynamic" placement="bottom-right">
2-
<a href="javascript:void(0);" role="button"
3-
[attr.aria-label]="'nav.language' |translate"
4-
[title]="'nav.language' | translate" class="px-1"
5-
(click)="$event.preventDefault()" data-toggle="dropdown" ngbDropdownToggle
6-
tabindex="0">
2+
<button role="button"
3+
[attr.aria-label]="'nav.language' |translate"
4+
[title]="'nav.language' | translate" class="dropdown-toggle px-1"
5+
(click)="$event.preventDefault()" data-toggle="dropdown" ngbDropdownToggle
6+
tabindex="0">
77
<i class="fas fa-globe-asia fa-lg fa-fw"></i>
8-
</a>
9-
<ul ngbDropdownMenu class="dropdown-menu" [attr.aria-label]="'nav.language' |translate">
10-
<li class="dropdown-item" tabindex="0" #langSelect *ngFor="let lang of translate.getLangs()"
11-
(keyup.enter)="useLang(lang)"
12-
(click)="useLang(lang)"
13-
[class.active]="lang === translate.currentLang">
14-
{{ langLabel(lang) }}
15-
</li>
16-
</ul>
8+
</button>
9+
<div ngbDropdownMenu class="dropdown-menu" role="listbox" [attr.aria-label]="'nav.language' |translate">
10+
<div class="dropdown-item" tabindex="0" role="option" *ngFor="let lang of translate.getLangs()"
11+
(keyup.enter)="useLang(lang)"
12+
(click)="useLang(lang)"
13+
[attr.aria-selected]="lang === translate.currentLang"
14+
[class.active]="lang === translate.currentLang">
15+
{{ langLabel(lang) }}
16+
</div>
17+
</div>
1718
</div>

src/app/shared/lang-switch/lang-switch.component.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
}
44

55
.dropdown-toggle {
6+
all: unset;
67
color: var(--ds-header-icon-color);
78

89
&:hover, &:focus {

src/app/shared/lang-switch/lang-switch.component.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ describe('LangSwitchComponent', () => {
109109
}));
110110

111111
it('should define the main A HREF in the UI', (() => {
112-
expect(langSwitchElement.querySelector('a')).not.toBeNull();
112+
expect(langSwitchElement.querySelector('button.dropdown-toggle')).not.toBeNull();
113113
}));
114114

115115
describe('when selecting a language', () => {

0 commit comments

Comments
 (0)