nvaccess/nvda

Key commands not recognized through Citrix on DaaS VM.

Closed this issue · 2 comments

Detailed description of the issue

We run technical education classes using a DaaS cloud computer setup that students log into during class. We have been using NVDA during our Accesibility classes and have it installed on the cloud based VMs. While we havent had an issue in the past, we recently have had an issue with key commands not being recognized by NVDA on the cloud computers, including caps lock and Caps+n.

The students log in to the cloud machines through a web portal, and the remote connection is handled using a Citrix HTML5 connection.

Our cloud support have been unable to find any issues, but did pull this from the logs during test

NFO - watchdog.waitForFreezeRecovery (15:43:00.184) - watchdog (10744):
Recovered from freeze after 32.6585723 seconds.
ERROR - comtypes.comobject.call_without_this (15:43:00.490) - Dummy-1 (10756): Exception in IUIAutomationEventHandler.HandleAutomationEvent implementation: Traceback (most recent call last): File "comtypes_comobject.pyc", line 154, in call_without_this File "UIAHandler_init.pyc", line 716, in IUIAutomationEventHandler_HandleAutomationEvent
File "comtypes_init_.pyc", line 278, in getattr
File "monkeyPatches\comtypesMonkeyPatches.pyc", line 32, in call
_ctypes.COMError: (-2147220991, 'An event was unable to invoke any of the subscribers', (None, None, None, 0, None))

Why are the other templates not appropriate in this case?

N/A

Have you asked for advice on how to report this issue via a community discussion? If so, please link to the discussion

No

Steps to reproduce or illustrate the issue (if applicable)

Expected outcome or behaviour (if applicable)

Screenshots, logs, and other attachments (if applicable)

System configuration or software environment (if applicable)

Additional information (if applicable)

Is there only one instance of NVDA running? Or is also the NVDA running on the local machine? If both instances "local NVDA and Cloud Citrix NVDA) are running at the same time, the NVDA key of the local NVDA instance will be honored. So if the user set the capslock key as NVDA key for both NVDA instances, the local instance will be honored.
At least for nvda+n command, I solved this problem by assigning the open NVDA menu command in the input gesture dialog of the NVDA Citrix instance to another key other than capslock.
Though the capslock key will still be used by the local NVDA instance, so even on the VM you need to press the capslock key twice if you want to use the Windows native function.

Otherwise you can just exit the local NVDA instance so that only the Citrix instance is running, then everything should work as expected.
If there is still a problem, you have to maximize the Citrix Window and make sure that the keyboard focus is really in the Citrix environment, e.g. clicking with the mouse on the desktop or any window of the Citrix environment is enough to achieve this.

I'd encourage using the add-on Remote Desktop Accessibility. Right now NVDA does not support citrix / remote desktop access.
Closing as a duplicate of #3564