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

Elements List not appearing or functioning with MS-Word 2010 #5886

Closed
britechguy opened this issue Apr 16, 2016 · 3 comments · Fixed by #6325
Closed

Elements List not appearing or functioning with MS-Word 2010 #5886

britechguy opened this issue Apr 16, 2016 · 3 comments · Fixed by #6325
Assignees
Labels
p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority
Milestone

Comments

@britechguy
Copy link

When I have a document (attached) open in MS-Word 2010 and NVDA 2016.1 is running in browse mode I cannot make the Elements List appear or function. When I hit INSERT+F7 the announcement for the elements list is made, but the dialog itself does not appear. Since the document is full of hyperlinks, and if memory serves links should be the first element radio button, even if the dialog is not visible I should be able to tab into the tree view of the links, but hitting TAB simply jumps to the "Filter by" edit box. Using left/right arrow when the elements dialog opens does absolutely nothing.

Just as a note, I am not experiencing the same issue in MS-Excel 2010. When I hit INSERT+F7 the elements list immediately appears and I can interact with it.
RR_Bentley_Resources.docx

@jcsteh
Copy link
Contributor

jcsteh commented Apr 17, 2016

The tree view gets focus for me, but contains nothing.

Technical: We're getting this exception:

ERROR - unhandled exception (08:19:14):
Traceback (most recent call last):
  File "wx\_core.pyc", line 16766, in <lambda>
  File "browseMode.pyc", line 291, in run
  File "browseMode.pyc", line 635, in __init__
  File "browseMode.pyc", line 661, in initElementType
  File "NVDAObjects\window\winword.pyc", line 365, in iterate
  File "NVDAObjects\window\winword.pyc", line 288, in __init__
  File "NVDAObjects\window\winword.pyc", line 280, in rangeFromCollectionItem
  File "comtypesMonkeyPatches.pyc", line 35, in new__getattr__
  File "comtypes\client\lazybind.pyc", line 149, in __getattr__
  File "comtypes\automation.pyc", line 664, in _invoke
COMError: (-2146822463, None, (u'Object has been deleted.', u'Microsoft Word', u'wdmain11.chm', 25305, None))

It looks like item.range is throwing an error for some reason.

CC @michaelDCurran.

@britechguy
Copy link
Author

James,

   Thanks very much for keeping me in the loop on this (and for looking

at it as quickly as you have)!

Brian Vogel

On Sun, Apr 17, 2016 at 6:22 PM, James Teh notifications@github.com wrote:

The tree view gets focus for me, but contains nothing.

Technical: We're getting this exception:

ERROR - unhandled exception (08:19:14):
Traceback (most recent call last):
File "wx_core.pyc", line 16766, in
File "browseMode.pyc", line 291, in run
File "browseMode.pyc", line 635, in init
File "browseMode.pyc", line 661, in initElementType
File "NVDAObjects\window\winword.pyc", line 365, in iterate
File "NVDAObjects\window\winword.pyc", line 288, in init
File "NVDAObjects\window\winword.pyc", line 280, in rangeFromCollectionItem
File "comtypesMonkeyPatches.pyc", line 35, in new__getattr__
File "comtypes\client\lazybind.pyc", line 149, in getattr
File "comtypes\automation.pyc", line 664, in _invoke
COMError: (-2146822463, None, (u'Object has been deleted.', u'Microsoft Word', u'wdmain11.chm', 25305, None))

It looks like item.range is throwing an error for some reason.

CC @michaelDCurran https://github.com/MichaelDCurran.


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#5886 (comment)

Bri the Tech Guy http://britechguy.com http://britechguy.com
brite britechguy@gmail.comchguy@gmail.com britechguy@gmail.com
(540) 324-5032 or _(540) 849-0023 *
"_If it's got you screaming, I'll help you stop!!*"

@nvaccessAuto nvaccessAuto added the p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority label Jul 5, 2016
@feerrenrut
Copy link
Contributor

I was able to reproduce this with the attached document, I have found that there is one hyperlink in the document causing a problem. Interestingly it is just the left parenthesis character in the following text that is considered a hyperlink by word (tested with word 2013) :

341 Railroad Ave
Bedford Hills, NY 10507-1404
Phone: (914) 242-8686

If you try to edit the hyperlink properties, it seems as if it has no address or display text.

Looking at the docx source for the phone number line above has this:

<w:r>
    <w:t xml:space="preserve">Phone:  </w:t>
</w:r>
<w:r><w:tab/></w:r>
<w:r w:rsidRPr="00B22258">
    <w:rPr>
        <w:vanish/>
    </w:rPr>
    <w:br/>
</w:r>
<w:hyperlink w:tgtFrame="_parent" w:history="1">
    <w:r w:rsidRPr="00B22258">
        <w:rPr>
            <w:rStyle w:val="Hyperlink"/>
            <w:vanish/>
        </w:rPr>
        <w:t>Get Directions</w:t>
    </w:r>
</w:hyperlink>
</w:p>
<w:p w:rsidR="00B22258" w:rsidRDefault="00B22258" w:rsidP="00DD2EAF">
    <w:r w:rsidRPr="00B22258">
        <w:t>(914) 242-8686</w:t>
    </w:r>
    <w:r>
        <w:t xml:space="preserve"> </w:t>
    </w:r>
</w:p>

It makes it look like this problematic hyperlink is in fact between the tab and left parenthesis characters. The hyperlink is not visible in the document.
Next I'll look to see if there is some way that we can detect something like this from NVDA, otherwise we may just have to catch the exception and move on.

@feerrenrut feerrenrut self-assigned this Aug 23, 2016
feerrenrut added a commit that referenced this issue Sep 5, 2016
Re #5886
Merge branch 'i5886-ElementsListNotAppearing' into next
@nvaccessAuto nvaccessAuto added this to the 2016.4 milestone Sep 19, 2016
feerrenrut added a commit that referenced this issue Sep 19, 2016
Fixes #5886
PR: #6325

Catch exception when word contains invalid data.

An example document contained some kind of hidden hyperlink, which looks
 like it is an invalid element. When trying to get range information an
 exception is thrown with the COM error "Object has been deleted". The
 fix is to catch the exception, record information in the log, and
 discard the item, continuing with iteration over the rest of the items.
feerrenrut added a commit that referenced this issue Sep 19, 2016
Fixed an issue that stops the the elements list from appearing when Microsoft Word contains an invalid hyperlink. (#5886)
josephsl added a commit to josephsl/nvda that referenced this issue Oct 28, 2016
…access#6520

Specifically:
* nvaccess#5906: Now labeled as 'line indentation reporting'.
* nvaccess#6099: clarify how to change values in spin controls.
* nvaccess#5886: elements list is available in browse mode.
* nvaccess#6206: changed bits such as 'adding new entries'.
* nvaccess#6127: no more hyphen (dash).
* nvaccess#5050: 'causes' -> 'which caused'.
* nvaccess#4164: changed wording to reflect that read-only edit fields are now included.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p3 https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants