Reported by marvellous.machine on 2013-01-10 11:56
NVDA cannot interact with the comment field in Excel, making also the navigation with arrows stop working for a while when pressing escape to leave the comment field.
Steps to reproduce:
1. Open an empty excel document,
2. Type whatever into the active cell, E.G. NVDA,
3. press Shift+F2 to add a comment. Note that NVDA gets silent announcing nothing,
4. try to type in a comment, for example screen reader. Try to move by character or whatever else, NVDA is silent again,
5. press escape to leave the comment field and try to navigate through cells with arrows. Here NVDA eventually starts speaking but only after quite a while. I sometimes had to alt+tab twice to leave Excel and return again to make it start working. Looks as if it had lost the focus.
See attached log for the errors.
I'm using Excel 2010 Slovak
Blocked by #3558
Attachment nvda.log added by marvellous.machine on 2013-01-10 11:57
Comment 1 by vrdhn on 2013-09-21 06:12
These are the changes required to speak the comment, if any , when Shift+f2 is pressed.
Commit Diff: https://bitbucket.org/manish_agrawal/nvda/commits/e94f656c58e205b3211f226de58e30bd3feb9fba?at=t2920#chg-source/NVDAObjects/window/excel.py
Git Repo: https://bitbucket.org/manish_agrawal/nvda
Note that After perssing Shift+f2, you need to press escape twice to close the comment.
Comment 4 by mdcurran on 2013-10-02 02:02
So when pressing shift+f2, this code will cause the comment to be spoken. But what about editing it? what happens if you press the arrow keys after pressing shift+f2?
I notice that after pressing shift+f2, if I alt+tab away and back again, then I can in fact use the arrow keys to read the comment. NVDA seems to have located a caret on screen and therefore uses displayModel to access the EXCEL7 worksheet window.
Comment 5 by vrdhn on 2013-10-02 05:56
The 'Shift+F2' is the standard Excel Key for popping up the 'Edit Comment' Box. The keystroke to close is Pressing ESCAPE key two times. I think even without alt+tab, the popup edit behaves correctly. If the comment is multi line, than the up and down arrow work as expected. If it's a new comment, Excel automatically puts "Username Colon" in it.
I understand the the correct thing is to make the popup comment box as a proper edit box
discoverable by NVDA, rather than just saying the comment out. However I was not able to find any way to hook to the opening of the comment box. The popup window is not shown in inspect, or by the Accessibility event viewer. Please, if you can, tell me a way to tackle these evil
I'm working on an NVDA plugin for Excel, which can do a better handling of comments, and
several other features of Excel, by using a set of keys specific to Excel. This will be in
same licensing as NVDA.
Comment 8 by Sukil on 2014-01-30 16:56
NVDA says there is an error in the app module provided in the above link. Notice I'm not running it from source. As I can't attach the log after trying several times, here is the chunk describing the error.
ERROR - appModuleHandler.fetchAppModule (17:45:22):
error in appModule 'excel'
Traceback (most recent call last):
File "appModuleHandler.pyc", line 149, in fetchAppModule
File "C:\Users\sukil etxenike\AppData\Roaming\nvda\appModules\excel.py", line 21, in
ImportError: cannot import name Window
Comment 10 by mdcurran on 2014-06-01 03:56
To allow for full reading and editing of comments in all versions of MS Excel, we will go with an NVDA-specific comment editing dialog which will pop up when pressing shift+f2. Previous patches I believe have only delt with reading, but not editing. But even if we were to improve access to Excel in comment editing mode, we can only do this for Excel 2010 and below as Excel 2013 stops exposing text via GDI yet does not provide a UI automation implementation for comment editing.
Comment 11 by Michael Curran <mick@... on 2014-06-01 03:58
```CommitTicketReference repository="" revision="b8fe71a32ec8da07f3ec348a6ad0a642831c7039"
Merge branch 't2920' into next. Incubates #2920
Added labels: incubating
Comment 13 by Michael Curran <mick@... on 2014-06-16 01:00
```CommitTicketReference repository="" revision="35e2560d2206697a361c450d23d0d306c128805f"
Merge branch 't2920' into next. Incubates #2920
Comment 14 by Michael Curran <mick@... on 2014-06-30 02:43
```CommitTicketReference repository="" revision="edc4eab21f80b85ef6c5422cbd6271a566eb5b7c"
Merge branch 't2920'. Fixes #2920
Removed labels: incubating
Comment 15 by mdcurran on 2014-06-30 02:44
Milestone changed from None to 2014.3
Comment 16 by leonarddr on 2014-07-03 11:14
It is now possible to shut down Excel while the comment dialog is still open. Whenever Excel closes, the comments dialog should close automatically as well.