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 stops working when opening a document in Microsoft Word 2010 protected view #1686
Comments
Attachment NVDA_log.txt added by surveyor on 2011-07-22 07:33 |
Comment 1 by surveyor (in reply to comment description) on 2011-07-29 06:43
I've noticed the problem is related to MSWord 2010 and protected view rather than outlook 2010. That is, the problem occurs when a document opened in protected view with MSWord. |
Comment 2 by jteh on 2011-08-01 00:08 |
Comment 3 by heikofolkerts on 2012-04-19 16:23 |
Comment 4 by manish on 2013-04-11 05:21
Solutions:
|
Attachment fix-1686-crash-in-protected-documents.patch added by manish on 2013-04-11 05:27 |
Comment 5 by manish on 2013-04-26 17:09 |
Attachment fix-1686-word-document-protected-mode.patch added by manish on 2013-04-28 07:25 |
Comment 6 by mdcurran (in reply to comment 5) on 2013-04-29 07:34
I'm interested if you ever saw the same simptoms I saw? |
Comment 7 by jteh on 2013-04-29 08:28 |
Comment 8 by manish (in reply to comment 6) on 2013-04-29 12:50 I can reproduce the same problem if I remove document.SetFocus() altogether. One solution could be that we do a document.setFocus() in the event_gainFocus handler of the class that gets loaded for _wwg. We could derive a class from WordDocument that contains this handler and add it to the clsList only in case of protected documents (parent of _wwg obj is of class _wwb and role systemGenericClient). I'll try this out and send an update. -Manish
|
Comment 9 by manish (in reply to comment 8) on 2013-05-02 08:45 My above theory on eventFocus doesn't work.
Basically, I am trying to automate the following for a document opened in protected view:
The above steps always work. So, instead of calling Document.SetFocus, can we call the global script navigator_movefocus somehow? is this also as bad as trying to do a left mouse click?
|
Comment 10 by jteh on 2013-05-02 09:57 gainFocus events are never handled in a different thread. If you're calling setFocus, you shouldn't ever have to call the gainFocus event, as setFocus should set the focus and thus cause the application to fire a focus event. If you're having to call the gainFocus event yourself, setFocus isn't working properly. It's possible there's a slight timing issue here. Perhaps Word doesn't like the focus being moved so quickly. We could try delaying the setFocus call (with wx.!CallLater). |
Comment 11 by manish (in reply to comment 10) on 2013-05-03 11:37 -Manish
|
Comment 12 by manish (in reply to comment 10) on 2013-05-20 14:22 Thanks,
|
Attachment fix-1686-protected-document-focus-with-call-later.patch added by manish on 2013-05-20 14:23 |
Comment 13 by manish on 2013-06-27 13:00 |
Comment 14 by mdcurran on 2013-07-02 03:36 |
Comment 15 by manish (in reply to comment 14) on 2013-07-07 06:42
When the file opens in protected view, the title bar of the word document says (protected view) in brackets. Once you are able to open a file in protected view, there are two problems you will encounter:
Protected view has not been fixed in the SP1 or in office 2013 for that matter. Regards,
|
Comment 16 by manish on 2013-08-02 07:24 branch: bug_1686 Regards, |
Comment 17 by mdcurran on 2013-08-22 08:02 In NVDAObjects\IAccessible\winword.py in event_gainFocus, under the
This fixes the focus issues for me completely. The AttachThreadInput allows us to temporarily control MS word's main thread, and then we call SetFocus to properly set focus to the document window. Note that AttachThreadInput is possibly a little hacky or dangerous, we may consider replacing all this with an rpc call, but for now this is good enough to test. There is still another issue, that I assume others see: When moving around the document, I don't get any formatting announced, and some of the lines are a little bit off. The cause of this is that all the rpc calls to fetch text and formatting are failing and we are falling back to range.text out-of-process. The reason the RPC calls are failing is because the appModule for this process has no binding handle... why this is I am still not sure. Oddly though speak typed characters works fine which means that parts of NVDAHelper are initialized. Manish: please test with my proposed code change and let me know if things still work for you. If so then I will start on a proper feature branch and at least make a try build for others. |
Comment 18 by mdcurran on 2013-08-23 03:12 |
Comment 19 by Michael Curran <mick@... on 2013-09-16 02:06
|
Comment 20 by Michael Curran <mick@... on 2013-09-16 02:08
Changes:
|
Comment 22 by manish (in reply to comment 17) on 2013-09-18 17:39 I tested this with word 2010 and it works fine for me so far. I'll do some more testing in the next few days. PS: My track emails had started working and so, I assumed I'll get a mail if anyone updated this ticket. However, I did not get any mails for your updates on the ticket, which is why I didn't notice this. Replying to mdcurran:
|
Comment 23 by Michael Curran <mick@... on 2013-10-02 01:24
Changes:
|
Comment 24 by mdcurran on 2013-10-02 01:26 |
Reported by surveyor on 2011-07-22 07:32
NVDA stops speaking just after a word file attachment opened in a message with outllook 2010. NVDA starts speaking after pressing esc, but this time MSWord displays a dialog box about document recovery. Everything is normal with NVDA closed and there's no problem if I open the same document after saving.
Blocked by #3526
The text was updated successfully, but these errors were encountered: