Skip to content

UIA in conhost: issues with visible ranges #5481

Closed

Description

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

Activity

  1. ghost added
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    on Apr 23, 2020
  2. ghost added
    Needs-Tag-FixDoesn't match tag requirements
    on Apr 23, 2020
  3. codeofdusk commented on Apr 23, 2020

    @codeofdusk
    ContributorAuthor
  4. ghost removed
    Needs-Tag-FixDoesn't match tag requirements
    on Apr 23, 2020
  5. codeofdusk commented on Apr 29, 2020

    @codeofdusk
    ContributorAuthor

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

  6. codeofdusk commented on Apr 29, 2020

    @codeofdusk
    ContributorAuthor

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

  7. carlos-zamora commented on Apr 29, 2020

    @carlos-zamora

    Bill Dengler (@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.

  8. codeofdusk commented on Jun 5, 2020

    @codeofdusk
    ContributorAuthor

    Carlos Zamora (@carlos-zamora) Any updates on this one?

  9. carlos-zamora commented on Jun 5, 2020

    @carlos-zamora

    Carlos Zamora (@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.

  10. codeofdusk commented on Jul 8, 2020

    @codeofdusk
    ContributorAuthor

    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.

  11. codeofdusk commented on Aug 16, 2020

    @codeofdusk
    ContributorAuthor

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

  12. ghost added
    Needs-Tag-FixDoesn't match tag requirements
    on Aug 16, 2020
  13. codeofdusk commented on Oct 4, 2020

    @codeofdusk
    ContributorAuthor

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

Metadata

Metadata

Labels

Area-AccessibilityIssues related to accessibilityIssue-BugIt either shouldn't be doing this or needs an investigation.Needs-Tag-FixDoesn't match tag requirementsProduct-ConhostFor issues in the Console codebase

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions