Edge with UIA: catch COMError when checking if an object is contained in a dead document when loading a new page #15736
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Link to issue number:
None.
Summary of the issue:
When NVDA is set to use UI Automation for Chromium-based browsers, and loading a new page in Microsoft Edge, NVDA fails to detect the newly loaded page, and a traceback is logged:
Specifically, fetching the runtime ID from the root element of the dead document fails.
Description of user facing changes
NVDA no longer fails to read a newly loaded page in Microsoft Edge when accessing it using UI Automation.
Description of development approach
Catch COMError and return False (conveying that the given object is not within the dead document).
Testing strategy:
In Microsoft Edge, go to https://www.nvaccess.org/
Known issues with pull request:
None known.
Code Review Checklist: