angular / components

Component infrastructure and Material Design components for Angular
https://material.angular.io
MIT License
24.33k stars 6.73k forks source link

Explicit handling of MatCheckbox clicks doesn't work with TalkBack on Android #18005

Open kimberg opened 4 years ago

kimberg commented 4 years ago

Reproduction

See: https://stackblitz.com/edit/components-issue-emika8

Steps to reproduce:

  1. Make a component that uses MAT_CHECKBOX_CLICK_ACTION noop to disable default checkbox handling, and an explicit click handler to toggle state.
  2. Open in Chrome on Android, with TalkBack enabled.
  3. Try to toggle the checkbox by double-tapping (normal selection gesture for TalkBack).

Expected Behavior

Checkbox can be toggled via TalkBack by double-tapping.

Actual Behavior

It cannot be toggled via TalkBack.

Environment

See: https://stackblitz.com/edit/components-issue-emika8

jelbourn commented 4 years ago

@crisbeto I'm wondering if this might be due to us letting the native action occur and then immediately setting the state back to what it was (rather than doing preventDefault)

vick08 commented 4 years ago

@kimberg Do you happen to know whether the saem checkbox works with VoiceOver on iOS? How about other platforms?