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 can not track caret in eclipse code editor #256

Closed
nvaccessAuto opened this Issue Jan 1, 2010 · 7 comments

Comments

Projects
None yet
2 participants
@nvaccessAuto

nvaccessAuto commented Jan 1, 2010

Reported by aleksey_s on 2008-12-18 11:38
i tried nvda with eclipse IDE. in code editor nvda does not respond on arrow keys as well as selection changes. with review cursor i can wiev editor content.
Blocked by #641

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented Jan 1, 2010

Comment 1 by jteh on 2008-12-18 11:53
Even though Eclipse is written in Java, it does not use Java widgets and thus it does not use the Java Access Bridge for accessibility. It uses SWT, which primarily uses native widgets (or at least emulates them). Unfortunately, the code editor widget doesn't seem to be or emulate a native edit widget. From what I've been able to determine, there is no external API to access it. This means that the only way to do this is via display hooks.
Changes:
Milestone changed from 0.6 to None

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented May 8, 2010

Comment 2 by mjs on 2010-05-08 21:15
I thought it would be a good idea to update this ticket, just to get it back on the NVDA developer’s radar.

I have just tested with the latest nightly NVDA (Thu May 6), and latest nightly Eclipse (N20100507-2000), and the java code editor now works ... but here’s the sticky bit ... you need to restart NVDA once the java code editor has focus.

When the editor window is first opened, NVDA is unable to track the curser, however after a restart of NVDA, curser tracking works as expected, as long as you don’t alt-tab out of that window.

This is an awesome step in the right direction, and hopefully not too much hacking is required to get this to work consistently.

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented May 8, 2010

Comment 3 by jteh on 2010-05-08 23:00
Thanks for updating the ticket. I forgot about this.

For the record, Eclipse 3.6pre now implements IAccessible2, but we're still experiencing some hiccups in the implementation.

Damn. Are you certain that the new nightly didn't fix the alt+tab problem? I understand why you'd have to restart at least once, but the last changes should have eliminated the brokenness on alt+tab. If they didn't, I'll need to debug it some more.
Changes:
Milestone changed from None to 2010.2

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented May 8, 2010

Comment 5 by mjs on 2010-05-08 23:15
I went back and checked and you are correct, the latest Eclipse nightly (N20100507) has resolved the alt-tab issue.

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented May 8, 2010

Comment 6 by jteh on 2010-05-08 23:42
#641 is needed to fix the restart requirement.

Mick, it's possible that we could get Eclipse to call !CoInitialize earlier, which would avoid the need for #641. However, if it's likely to happen again in future, we may as well try to fix it properly on our side. Thoughts?

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented May 10, 2010

Comment 7 by jteh on 2010-05-10 22:15
Okay. Unless anyone has any other issues, this should be done as far as NVDA is concerned. There are still some issues with incorrect word/line offsets which breaks review among other things, but this needs to be fixed on the Eclipse side. I've already reported this to the Eclipse devs.

@nvaccessAuto

This comment has been minimized.

nvaccessAuto commented May 18, 2010

Comment 8 by jteh on 2010-05-18 02:36
Now that #641 is fixed and some required fixes have been made in Eclipse, this now works in Eclipse 3.6 nightly builds.
Changes:
State: closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment