Skip to content

Commit c6eb931

Browse files
Merge pull request #16098 from IgniteUI/bpachilova/icon-aria-hidden-16008-master
feat(icon): add aria-hidden="true" attribute by default + test - master
2 parents 5ba16c2 + 7b222ce commit c6eb931

File tree

5 files changed

+24
-5
lines changed

5 files changed

+24
-5
lines changed

projects/igniteui-angular/src/lib/date-range-picker/date-range-picker.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
</ng-template>
1717

1818
<ng-template #defIcon>
19-
<igx-icon family="default" name="date_range" [attr.aria-hidden]="true"></igx-icon>
19+
<igx-icon family="default" name="date_range"></igx-icon>
2020
</ng-template>
2121

2222
<ng-template #defDateSeparatorTemplate>{{ dateSeparator }}</ng-template>

projects/igniteui-angular/src/lib/expansion-panel/expansion-panel-header.component.html

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212
@if (!iconTemplate) {
1313
<igx-icon
1414
family="default"
15-
[name]="panel.collapsed ? 'expand' : 'collapse'"
16-
[attr.aria-hidden]="true">
15+
[name]="panel.collapsed ? 'expand' : 'collapse'">
1716
</igx-icon>
1817
}
1918
</div>

projects/igniteui-angular/src/lib/icon/icon.component.spec.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,23 @@ describe("Icon", () => {
3030
el = debugElement.nativeElement;
3131
});
3232

33-
it("should instatiate with defaults", () => {
33+
it("should instantiate with defaults", () => {
3434
fixture.detectChanges();
3535

3636
expect(instance.getFamily).toBe("material");
3737
expect(instance.getActive).toBe(true);
38+
expect(instance.ariaHidden).toBe(true);
39+
});
40+
41+
it("should be able to set the aria-hidden attribute", () => {
42+
fixture.detectChanges();
43+
44+
expect(el.getAttribute('aria-hidden')).toBe("true");
45+
46+
instance.ariaHidden = false;
47+
fixture.detectChanges();
48+
49+
expect(el.getAttribute('aria-hidden')).toBe("false");
3850
});
3951

4052
it("should set icon as inactive", () => {

projects/igniteui-angular/src/lib/icon/icon.component.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,14 @@ export class IgxIconComponent implements OnInit, OnChanges, OnDestroy {
8080
return !this.active;
8181
}
8282

83+
/**
84+
* The `aria-hidden` attribute of the icon.
85+
* By default is set to 'true'.
86+
*/
87+
@HostBinding("attr.aria-hidden")
88+
@Input()
89+
public ariaHidden = true;
90+
8391
/**
8492
* An @Input property that sets the value of the `family`. By default it's "material".
8593
*

projects/igniteui-angular/src/lib/select/select.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<ng-container *ngTemplateOutlet="toggleIconTemplate; context: {$implicit: this.collapsed}"></ng-container>
2828
}
2929
@if (!toggleIconTemplate) {
30-
<igx-icon family="default" [name]="toggleIcon" [attr.aria-hidden]="true"></igx-icon>
30+
<igx-icon family="default" [name]="toggleIcon"></igx-icon>
3131
}
3232
</igx-suffix>
3333
<ng-container ngProjectAs="igx-hint, [igxHint]" >

0 commit comments

Comments
 (0)