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

Caret navigation problems when editing or browsing formulas in Excel #4537

Closed
nvaccessAuto opened this issue Oct 8, 2014 · 9 comments
Closed

Comments

@nvaccessAuto
Copy link

Reported by Palacee_hun on 2014-10-08 13:53
It's not possible to give exact steps to reproduce, because this appears a bit randomly, but I can give a fair description.
When I arrow through a formula in order to edit it (after pressing F2), I experience that sometimes NVDA says "blank" or the character at the previous caret position instead of saying the correct character under the caret. This happens most often near parentheses in the formula. This makes formula editing quite unreliable and error-prone.
Symptoms make me think that the caret timeout is too small for formula editing in this edit box, because Excel does a lot of processing during editing formulas. I've never experienced this when doing simple data entry/editing.
This problem is reproducible with Jaws, although the symptoms are a bit different, but point to the same cause.
My machine is not particularly slow (1.8 Ghz, dual-core Intel CPU). I use Excel 2003, but this problem may well present itself with other versions.
Increasing the caret timeout for this edit box wouldn't do much harm, but it would most probably eliminate this problem.

@nvaccessAuto
Copy link
Author

Comment 3 by Palacee_hun on 2014-12-06 23:56
I retested this in Excel 2010. Symptoms are very similar to those described with Excel 2003. However thorough investigation (using NVDA+Tab, NVDA+F1, Ctrl+NVDA+F2 etc.) points in the direction that the problem lies with NVDA using the display model for the formula/data entry/edit box. The latter fact is obvious from the textinfo of the object.
NVDA seems to see incorrect text in the box after some arrowing in it. Some symbols, like parentheses or apostrophes seem to be missing from the display model in such cases. That seems how blanks are introduced where there are in fact characters. NVDA refreshes the display model text after pressing NVDA+F1 (developer info), and the reported text remains correct for some time after closing the log viewer. Then it again becomes incorrect after some arrowing.
I did the same investigation in Excel 2003 with the same results: it also points to problems with the display model.
NVDA reports 'EXCEL6' as the window class of the data/formula entry/edit box in both Excel versions.
These findings tell that the correct remedy is probably not to increase the caret timeout value for this box, but to reclass this box to use the regular edit box API if it supports that.

Changes:
Changed title from "Caret navigation problems when editing formulas in Excel most probably due to too small caret timeout value" to "Caret navigation problems when editing or browsing formulas in Excel"

@nvaccessAuto
Copy link
Author

Comment 4 by mdcurran on 2014-12-11 06:01
Sorry to say that the EXCEL6 window class does not support the standard Windows Edit messages. However, Excel2013 implements a UIAutomation text pattern for EXCEL6 which means it should be much improved in Office 2013.
You may also want to test again with a current Next snapshot as fixes for #4229 were related to displayModel.

@nvaccessAuto
Copy link
Author

Comment 5 by Palacee_hun on 2014-12-14 11:17
I may try the Next snap.
The custom accessible edit box that once used to be implemented in NVDA (around 2010) for this data entry/edit box wasn't a bad idea then at all.

@bhavyashah
Copy link

This issue was definitely present very starkly till November last year, after which my usage of Excel became negligible. In my brief testing with NVDA 2017.3 RC 1 and Excel 2010 on Windows 8.1 just now, when I type "=sum(a2:a3)" in A1, pressing F2 on A1 to read the formula syntax itself, NVDA misses out on the last character of the formula, i.e. ")". This is consistently reproducible because the ')' just isn't existent to NVDA although I have ensured its presence. Thoughts? @michaelDCurran

@ruifontes
Copy link
Contributor

ruifontes commented Aug 18, 2017 via email

@bhavyashah
Copy link

The work-around mentioned by @ruifontes in #4537 (comment) does not make any change in the test I performed and described in #4537 (comment). The ")" remains invisible to NVDA even when Excel is maximized or object review is used to inspect the cell contents.

@Adriani90
Copy link
Collaborator

Adriani90 commented Jan 4, 2019

Duplicate of #4372. However I suggest closing #4372 because the discussion here goes in more detail. cc: @LeonarddeR, @Qchristensen your thoughts are very apreciated.
I can reproduce this issue only in long formulas. In short formulas it does not occur. It might be related to the visibility of the text in the cell itself. I think there was an option in Excel to disable something and to access the editing area when pressing f2 instead of the cell itself. @Qchristensen you had written about that in one of the in process articles.
In the edit area this issue does not occur.

@Qchristensen
Copy link
Member

In Excel 365, I just get a slight slowdown when passing brackets, as per my comment on 4372,

I just tried in Excel 2007, and in a new worksheet on A1, typed the formula =(B1 + C2)+D3 and as I move through the formula, it first read ok, but after that reads "space" for the character AFTER ( or ) when right arrowing, but when I left arrow back through the text, it reads "space" for both the character to the right of the ( or ) as well as the parenthesis itself.

When it reads space, in the log I get the following entry:

DEBUGWARNING - synthDrivers.sapi5.SynthDriver.speak (14:21:30.796):
Unsupported speech command: LangChangeCommand ('en_US')

On Excel 2007 on Windows 7, it seems to work the same whether I have allow editing directly in-cells enabled or not.

@Adriani90
Copy link
Collaborator

I decided to close this in favor of #4372 because that issue is being referenced on newer issues as well.

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

No branches or pull requests

7 participants