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

NVDA fails to recognize the backspace key as something which should remove characters from words in "Speak typed Words" mode on the command line. #2586

Closed
nvaccessAuto opened this issue Aug 7, 2012 · 3 comments
Labels
Milestone

Comments

@nvaccessAuto
Copy link

Reported by Q on 2012-08-07 04:40
This works as expected in standard edit boxes, For instance, if you begin typing a word, backspace to the first character and then completely rewrite the word, NVDA only reads the new word. By contrast, if you perform these same actions in the command prompt (cmd.exe), NVDA concatenates the deleted characters and those newly-typed, resulting in a scrambled mess being spoken when you finish the word.

@nvaccessAuto
Copy link
Author

Comment 1 by tspivey on 2012-08-08 05:56
I think this is caused by NVDAHelper.nvdaControllerInternal_typedCharacterNotify ignoring console windows, which also ignores backspace.
Changing the if statement to if ch == u'\x08' or focus.windowClassName!="ConsoleWindowClass" seems to work, if we assume backspace always deletes the previous character.

@nvaccessAuto
Copy link
Author

Comment 2 by jteh on 2012-08-08 08:25
This trick should work for Windows 7 and later. However, Windows XP (not sure about Vista) doesn't send WM_CHAR for consoles, so it won't work there.

@nvaccessAuto
Copy link
Author

Comment 3 by jteh on 2012-08-10 00:08
Fixed in fecc47d.
Changes:
Milestone changed from None to 2012.3
State: closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant