Prevent freezes on every focus change if Firefox stops responding. #7818
Link to issue number:
Summary of the issue:
If Firefox (or Chrome or any other app based on these) stopped responding, NVDA often freezes every time the focused changes, even if the browser is in the background. In the case of a freeze or crash, this makes it very difficult to recover from this situation. This also makes it extremely difficult for a developer to debug Firefox or Chrome, since debugging necessarily suspends the process.
Description of how this pull request fixes the issue:
This occurred because NVDA queried the document on every focus change to see if it was alive, but that query blocked in the case of an unresponsive process.
Now, we don't query if the process is in the background. We just assume the document is alive in this case. The chances of a document dying while the browser is in the backgroud are low anyway. However, if this did occur, the buffer will still be killed once the browser comes to the foreground or gets exited.
Known issues with pull request:
Change log entry: