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

UIA in conhost: issues with visible ranges #5481

Closed
codeofdusk opened this issue Apr 23, 2020 · 9 comments
Closed

UIA in conhost: issues with visible ranges #5481

codeofdusk opened this issue Apr 23, 2020 · 9 comments
Assignees
Labels
Area-Accessibility Issues related to accessibility Issue-Bug It either shouldn't be doing this or needs an investigation. Needs-Tag-Fix Doesn't match tag requirements Product-Conhost For issues in the Console codebase
Milestone

Comments

@codeofdusk
Copy link
Contributor

Environment

Windows build number: [run `[Environment]::OSVersion` for powershell, or `ver` for cmd] next (19613.1000).
Windows Terminal version (if applicable): Inbox console

Any other software? NVDA

Steps to reproduce

  1. Download this list of domains.

  2. Start Windows Console and NVDA (with UIA in Windows Console enabled in advanced preferences).

  3. Run a python interpreter: python.

  4. 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)?

@ghost ghost added Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting Needs-Tag-Fix Doesn't match tag requirements labels Apr 23, 2020
@codeofdusk
Copy link
Contributor Author

Cc @carlos-zamora.

@zadjii-msft zadjii-msft added Area-Accessibility Issues related to accessibility Issue-Bug It either shouldn't be doing this or needs an investigation. Product-Conhost For issues in the Console codebase labels Apr 23, 2020
@ghost ghost removed the Needs-Tag-Fix Doesn't match tag requirements label Apr 23, 2020
@carlos-zamora carlos-zamora self-assigned this Apr 23, 2020
@DHowett-MSFT DHowett-MSFT removed the Needs-Triage It's a new issue that the core contributor team needs to triage at the next triage meeting label Apr 24, 2020
@DHowett-MSFT DHowett-MSFT added this to the 21H1 milestone Apr 24, 2020
@codeofdusk
Copy link
Contributor Author

Do you still intend to look at this for 21H1? It would mean a lot for NVDA. Thanks!

@codeofdusk
Copy link
Contributor Author

This bug is not reproducible in Windows Terminal but it is in Conhost.

@carlos-zamora
Copy link
Member

@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.

@codeofdusk
Copy link
Contributor Author

@carlos-zamora Any updates on this one?

@carlos-zamora
Copy link
Member

carlos-zamora commented Jun 5, 2020

@carlos-zamora Carlos Zamora FTE 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.

@codeofdusk
Copy link
Contributor Author

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.

@codeofdusk
Copy link
Contributor Author

codeofdusk commented Aug 16, 2020

Turns out this particular case is due to NVDA's diffing algorithm. Sorry!

@codeofdusk
Copy link
Contributor Author

codeofdusk commented Oct 4, 2020

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!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-Accessibility Issues related to accessibility Issue-Bug It either shouldn't be doing this or needs an investigation. Needs-Tag-Fix Doesn't match tag requirements Product-Conhost For issues in the Console codebase
Projects
None yet
4 participants