Windows Narrator Behaviour

Hi,

I’m having issues integrating a post annoucement using the accessibility handler on windows. When a message is sent it is always outputting even when the screen reader is off, plays alongside current annoucements and isn’t taking screen reader preferences into account when outputting text.

Am I doing something wrong, or is this the way it is on windows? Is there anything else that can be done to work around this, or to provide the same functionality for windows as there is for MacOS?

Is this happening in the DemoRunner? when you run the AccessibilityDemo (under GUI) there is an announcements tab.

If you step through postAnnoucement with a debugger you should see the first line calls a function areAnyAccessibilityClientsActive() that must be returning true, could you have a look to see why that is?

I didn’t manage to reproduce the problem in the DemoRunner but maybe the issue occurs with plugins, or maybe just a specific format/DAW?

I think to be honest Windows doesn’t have a way to ask for accessibility announcements to be made so another API is used for text to speech and JUCE just bails if it doesn’t think any accessibility clients are in use. So for one reason or another it would seem in your case JUCE thinks one is running.

Hi Anthony,

I’m able to reproduce this behaviour with the accessibility demo, I’ll step through it now to see what’s happening.

Steps to reproduce are:

  • Open demo with screen reader off and go to annoucement tab.
  • Click annoucement button and no output as expected.
  • turn screen reader on.
  • turn screen reader off.
  • Click annoucement button and annoucement is made.

Thanks let me see if I can reproduce the issue too.

I can reproduce the issue too, although not a perfect solution does this work for you for now?

  • Turn Narrator off
  • Close the demo
  • Relaunch the application

I realise this isn’t a long term solution but hopefully not many users will need to turn narrator on/off while using your products?

Hi Anthony,

Yeah, that does work fine, just something that’s going be a bit of a pain for testing the functionality works properly on windows.

Thanks for the help :grinning:

Yeah it’s not ideal and it’s a valid bug report but it’s not immediately obvious to me how we would fix it right now unfortunately, I’ll keep in the back of my mind.