-
Notifications
You must be signed in to change notification settings - Fork 8.4k
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
UIA in conhost: issues with visible ranges #5481
Comments
Cc @carlos-zamora. |
Do you still intend to look at this for 21H1? It would mean a lot for NVDA. Thanks! |
This bug is not reproducible in Windows Terminal but it is in Conhost. |
@codeofdusk Yup! At least for now, we're hoping to get this in for 21H1. Just a bit caught up with stabilizing the last bit of Windows Terminal at the moment, so some of these ConHost bugs are lower priority. |
@carlos-zamora Any updates on this one? |
Haven't had a chance to look at this one. We're prioritizing some other work right now. I'll be sure to get to this when we start working on ConHost issues though. |
Do you still plan to get to this for 30 July (21H1)? For context, it's probably the single biggest issue blocking NVDA from using UIA in conhost. |
Turns out this particular case is due to NVDA's diffing algorithm. Sorry! |
For future reference, this issue has nothing to do with visible ranges after all! See nvaccess/nvda#11639 for a description of the bug. Thanks @carlos-zamora for explaining the new behaviour of conhost and helping me track this down! |
Environment
Steps to reproduce
Download this list of domains.
Start Windows Console and NVDA (with UIA in Windows Console enabled in advanced preferences).
Run a python interpreter:
python
.Run:
fin=open("domains.txt")
fin.readlines()
Expected behaviour
Like in pre-21H1 conhost and Windows Terminal 0.11, NVDA reads current output immediately.
Actual behaviour
At this point, NVDA's auto-read lags far behind the actual output in the buffer. Quitting Python with
quit()
continues reading very old output.Context
When a text change event is received, NVDA takes a diff of the old and new text and reads only the changed portion of the text. Maybe there's a bug in our diffing algorithm (implemented here, in
LiveText._calculateNewText
)?The text was updated successfully, but these errors were encountered: