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 Unreliable in Applications via SSH #4481

Closed
nvaccessAuto opened this issue Sep 22, 2014 · 8 comments
Closed

NVDA Unreliable in Applications via SSH #4481

nvaccessAuto opened this issue Sep 22, 2014 · 8 comments
Labels
close/worksforme enhancement feature/windows-command-console p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority

Comments

@nvaccessAuto
Copy link

Reported by ironmangary on 2014-09-22 20:14
When using SSH terminal clients, such as putty, Cygwin, etc., NVDA, up to the latest stable release 2014-03, is unreliable with responding with the correct line of data at the cursor position in applications on the console, such as pico and other text editors. In addition, it will not follow highlighting unless a cursor is present, and even then, it won't always report the correct line being moved to.

Several people have confirmed what I have personally encountered in the following thread:

http://www.freelists.org/post/nvda/UNIX-Applications-Over-SSH

I am willing to provide you more specific examples and am available for testing. I am switching from JAWS to NVDA and desperately need this to work for the ticketing system my work uses. I would be happy to test any advances in this area.

Gary

@nvaccessAuto
Copy link
Author

Comment 1 by jteh on 2014-09-24 06:28
There are two separate issues here.

Cursor tracking:
The problem with an ssh connection is that there is always a delay before the cursor moves. How long that delay is depends on the connection. It's almost always longer than NVDA's cursor movement timeout. We need this timeout because NVDA needs to be able to associate a cursor movement command (e.g. an arrow key) with the cursor movement in order to know what to speak; e.g. up arrow reads the line. If we make this timeout longer, you will feel it whenever the cursor legitimately doesn't move in any application; .g. when you press up arrow when you're already at the top of the document. This makes a screen reader feel laggy, which is why we choose a low value. There might be some room for increasing this, but even then, whether it works depends on exactly how long that delay is. I'm not certain, but I suspect you'll find that JAWS behaves as NVDA does if the delay is long enough, though I can't quantify "long enough" for JAWS.

Highlight tracking:
Please elaborate further as to what you mean by "follow highlighting". If we treated highlighting the same way we do the caret, how do we choose which position to use if there is both a caret and highlighting, multiple highlighted areas or both?

Given other priorities, we probably can't devote much attention to this at this stage. However, it'd be good to nail down the exact requirements/desires.

@nvaccessAuto
Copy link
Author

Comment 2 by ironmangary (in reply to comment 1) on 2014-09-24 17:42
After playing around in alpine and a custom ticketing app my office uses, with some sighted help, I've found that if a cursor is enabled, then highlighting is disabled on things like message lists. So, if the simple solution is to use a cursor instead of highlighting in these instances, that's easy enough to configure in that specific application.

As for cursor/highlight tracking within JAWS, I had to create a frame event within JAWS around the terminal window that uses "Say All" mode, and when that window has the focus, JAWS just tracks the highlight movement without issue.

As for increasing any timeout values, etc., within NVDA, could this be done as a toggle or maybe a preference; or, maybe tied into something like NVDA + 5, which is the equivalent to JAWS "Say All" mode?

I really appreciate you looking into this. I understand that, in the grand scheme of things, this is a minor issue for the busy developers of NVDA, but it really is a major necessity for me.

Gary

@jcsteh jcsteh added the p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority label Jul 6, 2016
@LeonarddeR
Copy link
Collaborator

Although I do not experience this very often, I think adding the ability to change the cursor movement timeout would be helpful here. I'd say an option for this fits nicely into the object presentation options?

@LeonarddeR
Copy link
Collaborator

LeonarddeR commented Jan 11, 2017 via email

@jcsteh
Copy link
Contributor

jcsteh commented Jul 10, 2017

#7201 raises the default timeout to 100 ms, so cursor tracking should now work in terminals with up to 100 ms latency. Beyond this, #7201 also makes this configurable, but there's no UI for it. I don't think we'll ever add a proper GUI option for this, but an advanced config editing GUI is being discussed to at least avoid the need to fiddle in the Python console.

@Adriani90
Copy link
Collaborator

@ironmangary, @LeonarddeR are you experiencing further this issue? Or can it be closed?

@sonor3000
Copy link

sonor3000 commented Jan 5, 2019 via email

@LeonarddeR
Copy link
Collaborator

As the caret move timeout can now be adjusted using NVDA's advanced settings category, I'm closing this as works for me. Since the default timeout has been increased, I've hardly experienced this issue anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
close/worksforme enhancement feature/windows-command-console p4 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority
Projects
None yet
Development

No branches or pull requests

5 participants