Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NVDA hanging should never lock up the keyboard to allow for recovering via restarts #10909

Open
Neurrone opened this issue Mar 27, 2020 · 10 comments
Labels

Comments

@Neurrone
Copy link

Neurrone commented Mar 27, 2020

Steps to reproduce:

  1. Do something that causes NVDA to reliably crash. For example, I can do this reliably by doing something that causes the command line to print a large amount of output. Its obviously not ideal that it crashes NVDA, but this is the most convenient way that I know of triggering this.

Actual behavior:

Controlling the computer via keyboard is impossible, so the only way to recover is a forced shutdown via the physical power button and a restart, losing all work.

Expected behavior:

Keyboard commands should still work, e.g windows+d, and navigating to NVDA and pressing enter.

System configuration

NVDA installed/portable/running from source:

Installed

NVDA version:

Latest alpha

Windows version:

Windows 10 1909

Name and version of other software in use when reproducing the issue:

Anything that causes NVDA to hang, in my case it was a docker container unexpectedly causing me to restart my computer.

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

No

If addons are disabled, is your problem still occuring?

Irrelevant

Did you try to run the COM registry fixing tool in NVDA menu / tools?

No

@zahra21

This comment has been minimized.

@feerrenrut

This comment has been minimized.

@Neurrone

This comment has been minimized.

@francipvb
Copy link
Contributor

francipvb commented Mar 28, 2020 via email

@LeonarddeR
Copy link
Collaborator

I have looked into a migration to asyncio, but that also requires asyncio support for wx and that's not currently there.

@zersiax

This comment has been minimized.

@LeonarddeR
Copy link
Collaborator

Related to #10247, #6463, #6291

@LeonarddeR
Copy link
Collaborator

I tend to agree with @zersiax here. The problem described here shouldn't be treated as an enhancement, but rather as a p2 issue. See also triage of issues mentioned above.

@Adriani90
Copy link
Collaborator

@Neurrone are you still having this issue with NVDA 2024.4.1?

Anyway, I think migrating to asyncio makes definitely sense, and it is an official library in Python 3.7 and higher. It is also supported by WX Python. I found also these libraries which might be useful:
https://github.com/sirk390/wxasync
and
https://pypi.org/project/wxasync/

I think this might improve performance in lots of use cases if event loops are not blicking the main thread so maybe someone can look into such a migration. It seems it can be imported already in python environments:

cc: @seanbudd, @michaelDCurran maybe you can give some insights of the potential this would have on NVDA? Is there any plan to migrate in the near future?

@Neurrone
Copy link
Author

This is definitely still a problem. I don't see this often thankfully but when it does, it is crippling.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

7 participants