Orange-OpenSource / a11y-guidelines

Our vision of mobile & web accessibility guidelines and best practices, with valid/invalid examples
https://a11y-guidelines.orange.com/en/
Other
59 stars 19 forks source link

Apple Voiceover fails on the sample chatbot client #75

Closed bronius closed 3 years ago

bronius commented 3 years ago

Hi - What a terrific resource this is!

In particular, I am exploring your proposed markup in your "sample chatbot" demo: Works flawlessly in NVDA on Windows, but Apple Voiceover

Has anyone observed the same behavior? Know the cause? Surely it isn't this markup, but I thought I might start here to find a sympathetic hear and poll for solutions.. Maybe artificial delays would help? Maybe it's unique to me and my system?

Thanks :) -Bronius

GaetanBt commented 3 years ago

Hey ! Thanks for your message, it's truly appreciated :slightly_smiling_face:

As I'm not working on this part specifically and I don't have any Mac around me to test it, I'm going to share your issue in the team, we'll see if we can reproduce this behavior and find a way to prevent it

bronius commented 3 years ago

Ok thank you, I appreciate your responses :)

I am referring to the Chatbot from the click of the "Sample interaction" button on https://a11y-guidelines.orange.com/en/web/components-examples/chatbot/ . Just now I wanted to vet it with more info:

  1. With Apply Voiceover enabled (MacOS Catalina 10.15.7)
  2. I click the Sample interaction button
  3. I listen to Voiceover read the entire chat conversation once through then it read itself again
  4. I click Web
  5. I see Djingo's response but didn't hear it read. . .
  6. Then I just typed nonsense like "web", "web web", "web web web" a few lines, and each time the interaction was as expected.
  7. Until I typed, "I don't see any issues today" which showed me Djingo's response, but the sound was just a creepy, breathy "Hhhahhhh" wisp of the wind sound.
  8. Anything I type after this I get that weird sound.
  9. I tried stopping Voiceover and launching it again... same exhaling-breath-like responses only.

In our own Chatbot that we are working on, I have experimented with dynamically aria-busy={true|false} between messages. Didn't seem to do anything ¯_(ツ)_/¯ Our original Chatbot codebase works quite well in all screenreaders we test with, but it has aria-live="polite" around each new message (this is within a role="log" wrapper) as well as an additional "role=alert" on the first message out the gate. I thought that because our app is React that maybe the aria attributes must be on the innermost, non-dynamic wrapping html element, but that didn't do squat to improve my situation.

hth.

PigeardSylvain commented 3 years ago

Thanks for your messages @bronius, you can check chatbot sample. The bug with voiceover has been fixed 6416cbfdb1d8e3be9006256c9b3e7c8c56362ec9

bronius commented 3 years ago

Thanks for your messages @bronius, you can check chatbot sample. The bug with voiceover has been fixed 6416cbf

Thanks very much, @PigeardSylvain - I'll pass this along to the team! 🙂