Skip to content

Commit

Permalink
Revert "fix(snack-bar): announcing same message twice to screen reade…
Browse files Browse the repository at this point in the history
…rs" (#14494)

* Revert "build: update nodejs bazel rules (#14466)"

This reverts commit a3fef46.

* Revert "docs(form-field): native select reset values not working in examples (#14236)"

This reverts commit 97f52c0.

* Revert "fix(menu): allow text wrapping in menu items (#11430)"

This reverts commit 3661abe.

* Revert "fix(dialog,bottom-sheet): invert backdrop color on dark themes (#13065)"

This reverts commit fe96f38.

* Revert "build: replace deprecated tslint rule with compiler option (#13186)"

This reverts commit 5dfa45f.

* Revert "fix(snack-bar): announcing same message twice to screen readers (#13298)"

This reverts commit 3fb4b23.
  • Loading branch information
vivian-hu-zz authored Dec 13, 2018
1 parent 3eb7e9c commit e9466a4
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
8 changes: 5 additions & 3 deletions src/lib/snack-bar/snack-bar.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -186,16 +186,18 @@ describe('MatSnackBar', () => {
}));


it('should clear the announcement message if it is the same as main message', fakeAsync(() => {
it('should default to the passed message for the announcement message', fakeAsync(() => {
spyOn(liveAnnouncer, 'announce');

snackBar.open(simpleMessage, undefined, {announcementMessage: simpleMessage});
snackBar.open(simpleMessage);
viewContainerFixture.detectChanges();

expect(overlayContainerElement.childElementCount)
.toBe(1, 'Expected the overlay with the default announcement message to be added');

expect(liveAnnouncer.announce).not.toHaveBeenCalled();
// Expect the live announcer to have been called with the display message and some
// string for the politeness. We do not want to test for the default politeness here.
expect(liveAnnouncer.announce).toHaveBeenCalledWith(simpleMessage, jasmine.any(String));
}));

it('should be able to specify a custom announcement message', fakeAsync(() => {
Expand Down
6 changes: 2 additions & 4 deletions src/lib/snack-bar/snack-bar.ts
Original file line number Diff line number Diff line change
Expand Up @@ -114,10 +114,8 @@ export class MatSnackBar implements OnDestroy {
// override the data to pass in our own message and action.
_config.data = {message, action};

// Since the snack bar has `role="alert"`, we don't
// want to announce the same message twice.
if (_config.announcementMessage === message) {
_config.announcementMessage = undefined;
if (!_config.announcementMessage) {
_config.announcementMessage = message;
}

return this.openFromComponent(SimpleSnackBar, _config);
Expand Down

0 comments on commit e9466a4

Please sign in to comment.