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

Passwords spoken in WSL #11554

Closed
SaschaCowley opened this issue Sep 4, 2020 · 7 comments · Fixed by #10964
Closed

Passwords spoken in WSL #11554

SaschaCowley opened this issue Sep 4, 2020 · 7 comments · Fixed by #10964
Milestone

Comments

@SaschaCowley
Copy link
Member

Steps to reproduce:

  1. If not already enabled and installed, enable WSL, and install and setup a distro (I am using Ubuntu 20.04 on WSL2, but I observed this issue on WSL1).
  2. Make sure "Speak typed characters" is enabled in NVDA.
  3. Within the WSL distro, try to do something that requires a password (EG run a command via sudo).

Actual behavior:

The password is spoken by NVDA, even though it is not displayed on screen.

Expected behavior:

The password should not be spoken, or, a masking symbol (such as "*") should be spoken instead.

System configuration

NVDA installed/portable/running from source:

Installed

NVDA version:

2020.2

Windows version:

Microsoft Windows [Version 10.0.19041.450]

Name and version of other software in use when reproducing the issue:

Windows Subsystem for Linux with Ubuntu 20.04.

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

Yes.

Have you tried any other versions of NVDA? If so, please report their behaviors.

I believe this issue occurs in prior versions of NVDA, but am going from memory.

If addons are disabled, is your problem still occurring?

Yes.

Did you try to run the COM registry fixing tool in NVDA menu / tools?

Yes. Same result before and after.

@josephsl
Copy link
Collaborator

josephsl commented Sep 4, 2020 via email

@XLTechie
Copy link
Collaborator

XLTechie commented Sep 4, 2020 via email

@akash07k
Copy link

akash07k commented Sep 4, 2020 via email

@SaschaCowley
Copy link
Member Author

Can you check if UIA is used to access consoles (NVDA menu/Preferences/Settings/Advanced)?

UIA was not being used. Enabling it fixed the issue.

@Brian1Gaff
Copy link

Brian1Gaff commented Sep 4, 2020 via email

@codeofdusk
Copy link
Contributor

By default, on Windows 10 version 1607 and later, NVDA currently speaks all characters typed in consoles, whether they appear onscreen or not. Technical: I disabled typed character queuing/dispatch on textChange in EnhancedTermTypedCharSupport on legacy console since it takes about 250 ms to detect text changes (severely slowing down speaking of typed characters).

Your options:

  • Use UIA console. @carlos-zamora and I have been doing a lot of work to improve the experience in the console for the next version of Windows.
    • Use Windows Terminal. Terminal has a good UIA implementation (which is always used, regardless of the user setting).
    • Test the new 21H1 UIA console. You can test the new console separately, or replace your existing console with the new version. See Review cursor in console does not move as expected in NVDA 2019.3beta1 #10618.
    • Install an insider build of Windows 10. The inbox console on insider dev builds has many of the latest accessibility fixes, and should have all of them by the end of November or so.
    • Alternatively, wait for the next version of Windows (21H1) in the first half of 2021.
  • Disable "use the new typed character support in legacy Windows Console" in NVDA advanced settings. This will suppress passwords, but re-introduce Some output in command consoels spelled with speak typed characters enabled #513.
  • When typing passwords in untrusted environments, disable "speak typed characters" and "speak typed words".

@codeofdusk
Copy link
Contributor

I think this issue should probably be closed (if not now, then definitely when #10964 is merged).

seanbudd pushed a commit that referenced this issue Jun 21, 2022
…(Windows 11 Sun Valley 2) (#10964)

Supersedes #9771 and #10716. Closes #1682. Closes #8653. Closes #9867. Closes #11172. Closes #11554.

Summary of the issue:

Microsoft has significantly improved performance and reliability of UIA console:
* microsoft/terminal#4018 is an almost complete rewrite of the UIA code which makes the console's UIA implementation more closely align with the API specification.
* microsoft/terminal#10886, microsoft/terminal#10925, and microsoft/terminal#11253 form a robust testing methodology for the UIA implementation, including bug fixes in response to newly added tests based on Word's UIA implementation.
* microsoft/terminal#11122 removes the thousands of empty lines at the end of the console buffer, significantly improving performance and stability. Since all console text ranges are now within the text buffer's bounds, it is no longer possible for console to crash due to the manipulation by UIA clients of an out-of-bounds text range.
* Countless other accessibility-related PRs too numerous to list here.

We should enable UIA support on new Windows Console builds by default for performance improvement and controllable password suppression.

Description of how this pull request fixes the issue:

This PR:
* Exposes all three options for the UIA console feature flag in the UI (replaces the UIA check box with a combo box).
* Adds a runtime check to test if `apiLevel >= FORMATTED`, and use UIA in this case when the user preference is auto. This is the case on Windows 11 Sun Valley 2 (SV2) available now in beta and set for release in the second half of 2022.
@nvaccessAuto nvaccessAuto added this to the 2022.3 milestone Jun 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
7 participants