6

I am working on a mobile site which needs to be accessible with screen reader. I am testing it with Talk back on android device. Problem is Talk back announce "Double Tap to Activate" on each element, even if it is Header (H1, H2...) or a text only like Span. I am not sure how to disable it. But it should read "Double Tap to Activate" on button, select, link etc actionable item. Can it be done by Talk back setting? Thanks.

Omar
  • 32,302
  • 9
  • 69
  • 112
Vishwakant
  • 111
  • 1
  • 10
  • I have this problem also. I see it on various websites as well: for instance, https://en.wikipedia.org/wiki/L reads "double tap to activate" after the L in the header, and all other text fields. nbcnews via AMP, though, doesn't have this problem. I'd love a solution, it makes no sense for every single element to be voice-tagged with this. – Mad Bernard Mar 21 '17 at 17:59
  • Still I have no solution for this issue. – Vishwakant Mar 21 '17 at 19:43

3 Answers3

4

I just heard from a knowledgeable accessibility expert, "Apparently, Android thinks anything that has a tabindex of 0 or -1 is automatically an interactive element and will announce the "double-tap to activate" hint."

So possibly you could set your tabindexes to something else and see if that fixes it?

Mad Bernard
  • 363
  • 1
  • 7
  • 16
  • Yes, I found similar tab-index issue in my application also. So wherever I could remove tab-index, I did. But I did not get any other solution where tab-index is required on non-focus-able elements. – Vishwakant Mar 27 '17 at 06:50
1

I found the issue exists in jQuery mobile plugin. I am using jQuery.mobile-1.3.1.js plugin in my application which binds "vclick" event on document. And which causes double tap issue. To resolve this, I unbind "vclick" event on document.ready method on master page. There is one more plugin which can be a reason of this issue i.e. jQuery.validate.js. I found it binds "click" event on , and screen reader (Talk back in my case) takes non-clickable elements as non-clickable. So same unbind is useful for "click" event also. Hope this information would help to some one.

Vishwakant
  • 111
  • 1
  • 10
  • So if there's a click handler bound to body or #main-container or whatever, everything below that reads as interactive to TalkBack? – Mad Bernard Mar 27 '17 at 18:00
  • yes, if jquery.mobile is used in application, it binds "vclick" event to main container as well as its child elements which simulate a non-clickable element to clickable element. And Talk back takes that element as clickable and announce "Double tap to activate" or "press Alt plus enter" when using a external keyboard with mobile. – Vishwakant Mar 28 '17 at 16:31
0

This is now fixed on Android Chrome Canary

https://bugs.chromium.org/p/chromium/issues/detail?id=1023229