Support reading of html messages in Outlook 2007 and newer #2975

Closed
nvaccessAuto opened this Issue Feb 9, 2013 · 80 comments

Projects

None yet

2 participants

@nvaccessAuto

Reported by mreiser on 2013-02-09 17:10
Since Outlook2007, it has become nearly impossible to read HTML messages in outlook with nvda and other screen readers. With jaws 14, they are somehow able to virtualize the message so that these messages so that they can be read once again. NVDA should provide a way to do this if possible.
Blocking #1968, #3871, #4187, #4188

@nvaccessAuto

Comment 1 by mdcurran on 2013-02-09 17:14
Not being an Outlook user myself, could you please provide clear details as to what exactly the problem is with reading these messages?

@nvaccessAuto

Comment 2 by mreiser on 2013-02-09 17:29
When these messages are encountered, nvda treats the whole message like an embedded object and I'm unable to navigate the message normally. I'm also unable to activate links in messages as well. Tables probably need to be navigable as well. Hope this helps

Mike

@nvaccessAuto

Comment 3 by jteh on 2013-02-09 23:13
I seem to recall that Outlook reads messages using a Microsoft Word viewer, but I'm not certain.

@nvaccessAuto

Comment 4 by mreiser on 2013-02-09 23:31
Yes it does. Somehow JAWS was able to virtualize the message despite this but I'm not sure how due to not being a programmer I admit lol.

@nvaccessAuto

Comment 5 by jteh on 2013-02-09 23:38
I'm not sure I see why this has to be virtualised, given that we don't virtualise normal Microsoft Word documents. That said, we do need to figure out the issues you are having.

Please explain what you mean by "unable to navigate the message normally". We need exact steps to reproduce, expected results and actual results.

@nvaccessAuto

Comment 6 by mreiser on 2013-02-10 01:42
Basically when I try navigating with the arrow keys in an html message, it just shows the message as one embedded object. It says imbedded object followed by a link, and I can't read any other text that's in the message. I will attach an example message I received today. To reproduce, just try navigating around in the message with the arrow keys. NVDA should treat this html message like either a webpage in the virtual buffer or any other type of email message. Hopefully this helps.

@nvaccessAuto

Attachment 21 New Jobs Matching computer support.msg added by mreiser on 2013-02-10 21:58
Description:
This is a example html message. I can;t seem to click on any links in the message, as they're all presented on one line. There's also no way to turn screen layout on or off.

@nvaccessAuto

Comment 7 by mdcurran on 2013-03-14 04:24
Opening this message in Outlook 2010 I can arrow up, down, left and right through the message.
I see one embedded object at the top inside a link. I can press enter on this link or on any other link in the document and my default web browser opens showing the target page for the link.
This message however is still rather hard to read more so because of all the tables - it becomes very verbose.
Does this match what you see, or is it worse for you?

@nvaccessAuto

Attachment NEW Sci-Fi Fantasy Plus Win a Trip to NYC!.msg added by mreiser on 2013-03-19 15:03
Description:
An html message from audible.com

@nvaccessAuto

Comment 8 by travisroth on 2013-09-04 16:45
That is correct; Outlook 2010 and 2013 (and I believe 2007 but I do not have that here) use Microsoft Word as the HTML viewer. This is fine if the message is very simple HTML. However, most messages that use HTML also use many layers of formatting tables, ending up with a nested mess.
This is why virtualizing it another way makes it much more efficient. It is possible to have Outlook open the message in a browser, which gets around the problem, but it is slow and inefficient.
I have managed to retrieve the HTML of a message in Outlook 2010 using the Microsoft Outlook COM object. E.g.,
HTMLBody = nativeOm.ActiveExplorer().Selection(1).HTMLBody
However, I still need a way to virtualize it, such as by embedding a ActiveX control of Internet Explorer. Wx appears to have the ActiveX control but I do not believe it is packaged in NVDA as wx.lib does not seem importable in the NVDA Python console.
(On an aside, in 64-bit Windows, and/or with Outlook 2010 and newer, one needs to use the comHelper.getActiveObject() method to get the nativeOm, which the current Outlook scripts do not do. I suppose this should be filed as a separate issue as well.)

@nvaccessAuto

Comment 9 by csm120 (in reply to comment 8) on 2013-09-08 01:31
Replying to travisroth:
I think for me part of the problem is that once you get into an embedded object you cannot easily ghet out of it and begin reading the message again. I think at the very least, it would be helpful to suppress speaking of embedded objects or have an option that can be toggled. This is especially difficult when you have a swarm of these in very close proximity. When text is interspersed between the embedded objects it makes navigating the message very difficult sometimes.

That is correct; Outlook 2010 and 2013 (and I believe 2007 but I do not have that here) use Microsoft Word as the HTML viewer. This is fine if the message is very simple HTML. However, most messages that use HTML also use many layers of formatting tables, ending up with a nested mess.

This is why virtualizing it another way makes it much more efficient. It is possible to have Outlook open the message in a browser, which gets around the problem, but it is slow and inefficient.

I have managed to retrieve the HTML of a message in Outlook 2010 using the Microsoft Outlook COM object. E.g.,

HTMLBody = nativeOm.ActiveExplorer().Selection(1).HTMLBody

However, I still need a way to virtualize it, such as by embedding a ActiveX control of Internet Explorer. Wx appears to have the ActiveX control but I do not believe it is packaged in NVDA as wx.lib does not seem importable in the NVDA Python console.

(On an aside, in 64-bit Windows, and/or with Outlook 2010 and newer, one needs to use the comHelper.getActiveObject() method to get the nativeOm, which the current Outlook scripts do not do. I suppose this should be filed as a separate issue as well.)

@nvaccessAuto

Comment 13 by mdcurran on 2014-08-29 06:14
Started working on this in branch t2975. You can now press NVDA+space to activate a special review treeInterceptor which forces up and down arrow to use a much more predictable line movement which hopefully no longer skips past things like MS Word's own implementation. E.g. it will go across cells in a table, rather than straight down.

@nvaccessAuto

Comment 17 by mdcurran on 2014-11-05 07:10
I have made a try build available:
http://community.nvda-project.org/try/t2975/nvda_snapshot_try-t2975-10526,6f6738f.exe

This work so far includes:

  • Optional browse mode for Microsoft Word. Press NVDA+space to switch to browse mode. Press NVDA+space again to switch back to focus mode.
  • While in browse mode:
    • Arrow keys will move through the document as normal, however when in tables cells to the right of the cursor will not be skipped. Thus it is possible to read the entire document just by pressing down arrow.
    • Quick navigation keys, and the Elements List are available in browse mode.
      • Available quick navigation keys are: h for heading, 1 through 6 for heading levels, k for link, g for graphic, t for table, and a for annotation (revisions, comments).
    • The elements list can show links, headings, and annotations (revisions and comments).
  • In Microsoft Outlook 2007 and above, browse mode is on by default when reading emails, but not writing them.
@nvaccessAuto

Comment 18 by surfer0627 on 2014-11-05 08:57
Hi
I tested it on office 2010.

Does this feature support that user press "comma" to move past the end of the container (list, table.)?
In UserGuide, if we need to add descriptions like:
In browse mode, if user press non-command gestures "a, j, w, etc", it will edit the document.

Thanks.

@nvaccessAuto

Comment 19 by surfer0627 on 2014-11-06 02:09
Test browse mode on word2010:

In a document with 4 pages, braille display movement is a little bit slow than speech.

In a big document with more than 500 pages, speech and braille work slow.

I'm not sure that if developers plan to limit the document page for this feature?

@nvaccessAuto

Comment 20 by netblue on 2014-11-06 18:44
Hi Mic, I just tested the build on word 2013, and i did not find new ishues than those reported.
I also tested powerpoint in regards to ticket 4475, but nvda still crashes when exitting powerpoint without saving chainges to the document.

@nvaccessAuto

Comment 21 by netblue (in reply to comment 17) on 2014-11-11 14:46
Replying to mdcurran:

I have made a try build available:

http://community.nvda-project.org/try/t2975/nvda_snapshot_try-t2975-10526,6f6738f.exe

This work so far includes:

  • Optional browse mode for Microsoft Word. Press NVDA+space to switch to browse mode. Press NVDA+space again to switch back to focus mode.
  • While in browse mode:
    • Arrow keys will move through the document as normal, however when in tables cells to the right of the cursor will not be skipped. Thus it is possible to read the entire document just by pressing down arrow.
    • Quick navigation keys, and the Elements List are available in browse mode.
      • Available quick navigation keys are: h for heading, 1 through 6 for heading levels, k for link, g for graphic, t for table, and a for annotation (revisions, comments).
    • The elements list can show links, headings, and annotations (revisions and comments).
  • In Microsoft Outlook 2007 and above, browse mode is on by default when reading emails, but not writing them.

Hi Mic when using this build on office 2013, and in browse mode, navigation by heddings in the elements list does not work. Navigation thrue links works fine. There still is a significant lag when using the down erro to navigate. This is whith say all and reading by line. All other functiones seams to work fine so far.

@nvaccessAuto

Comment 22 by mdcurran (in reply to comment 21) on 2014-11-11 14:51
Replying to netblue:
If headings don't work in the elements list, do the h and shift+h quick nav commands work?
Most likely the elements list, and the quick nav commands are throwing an error which will appear in your log. If there is one, could you please provide the log?

@nvaccessAuto

Comment 23 by mdcurran on 2014-11-11 15:01
Here is a new try build:
http://community.nvda-project.org/try/t2975/nvda_snapshot_try-t2975-10528,6dad12e.exe

Performance of moving by line (up and down arrows) should be significantly improved. Please confirm this.

@nvaccessAuto

Comment 24 by netblue (in reply to comment 22) on 2014-11-11 15:35
Replying to mdcurran:

Replying to netblue:

If headings don't work in the elements list, do the h and shift+h quick nav commands work?

Most likely the elements list, and the quick nav commands are throwing an error which will appear in your log. If there is one, could you please provide the log?

The keys h and shift+h works fine
In latest build, navigation with erro keys is faster but not as fast as when in normal mode.
In browse mode the read by paragraph, CTRL+down erro has a significant lag. CTRL+up erro works fine.

See log

INFO - main (09:17:52):
Starting NVDA
INFO - core.main (09:17:52):
Config dir: C:\Users\ZelvinWilson\AppData\Roaming\nvda
INFO - core.main (09:17:52):
NVDA version try-t2975-10528,6dad12e
INFO - core.main (09:17:52):
Using Windows version sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1')
INFO - core.main (09:17:52):
Using Python version 2.7.8 (default, Jun 30 2014, 16:03:49) v.1500 32 bit (Intel)
INFO - core.main (09:17:52):
Using comtypes version 0.6.2
INFO - synthDriverHandler.setSynth (09:17:53):
Loaded synthDriver sapi5
INFO - core.main (09:17:53):
Using wx version 2.8.12.1 (msw-unicode)
INFO - braille.initialize (09:17:53):
Using liblouis version 2.6.0
INFO - braille.BrailleHandler.setDisplayByName (09:17:53):
Loaded braille display driver noBraille, current display has 0 cells.
INFO - brailleInput.initialize (09:17:53):
Braille input initialized
INFO - core.main (09:17:53):
NVDA initialized
INFO - external:synthDrivers.eloquence.SynthDriver.init (09:17:59):
Using Eloquence version 6.1.0.0
INFO - synthDriverHandler.setSynth (09:17:59):
Loaded synthDriver eloquence
IO - speech.speak (09:18:15):
Speaking [('es_ME'), u'Manual SEPRODISGRAAS Modo de compatibilidad - Microsoft Word']
IO - speech.speak (09:18:15):
Speaking [('es_ME'), u'Manual SEPRODISGRAAS Modo de compatibilidad']
IO - speech.speak (09:18:15):
Speaking ('es_ME'), u'Documento de Microsoft Word Cuadro de Edici\xf3n multi l\xednea'
IO - speech.speak (09:18:15):
Speaking ('es_ME'), u'encabezado nivel 1', u'p\xe1gina 5', u'IV COORDINACI\xd3N INSTITUCIONAL'
DEBUGWARNING - IAccessibleHandler.accessibleObjectFromEvent (09:18:15):
oleacc.AccessibleObjectFromEvent with window 459616, objectID 213 and childID 0: -2147467259 Error no especificado
IO - inputCore.InputManager.executeGesture (09:18:17):
Input: kb(laptop):NVDA+space
IO - inputCore.InputManager.executeGesture (09:18:19):
Input: kb(laptop):NVDA+f7
IO - speech.speak (09:18:19):
Speaking de Elementos di\xe1logo'
IO - speech.speak (09:18:19):
Speaking en \xe1rbol'
IO - speech.speak (09:18:19):
Speaking 0 Denominaci\xf3n del cargo \t: Responsable de Departamento de Inserci\xf3n Laboral 20 de 20'
IO - inputCore.InputManager.executeGesture (09:18:21):
Input: kb(laptop):tab
IO - speech.speak (09:18:21):
Speaking por: Cuadro de Edici\xf3n Alt+f'
IO - speech.speak (09:18:21):
Speaking blanco'
IO - inputCore.InputManager.executeGesture (09:18:21):
Input: kb(laptop):tab
IO - speech.speak (09:18:22):
Speaking bot\xf3n Alt+a'
IO - inputCore.InputManager.executeGesture (09:18:22):
Input: kb(laptop):tab
IO - speech.speak (09:18:22):
Speaking a bot\xf3n Alt+m'
IO - inputCore.InputManager.executeGesture (09:18:23):
Input: kb(laptop):tab
IO - speech.speak (09:18:23):
Speaking bot\xf3n'
IO - inputCore.InputManager.executeGesture (09:18:24):
Input: kb(laptop):tab
IO - speech.speak (09:18:24):
Speaking agrupaci\xf3n'
IO - speech.speak (09:18:24):
Speaking bot\xf3n de opci\xf3n verificado Alt+e'
IO - inputCore.InputManager.executeGesture (09:18:25):
Input: kb(laptop):downArrow
IO - speech.speak (09:18:26):
Speaking bot\xf3n de opci\xf3n verificado Alt+c'
IO - inputCore.InputManager.executeGesture (09:18:27):
Input: kb(laptop):tab
IO - speech.speak (09:18:27):
Speaking en \xe1rbol'
IO - speech.speak (09:18:28):
Speaking COORDINACI\xd3N INSTITUCIONAL 4 de 9 nivel 0'
IO - inputCore.InputManager.executeGesture (09:18:29):
Input: kb(laptop):upArrow
IO - speech.speak (09:18:29):
Speaking ESTRUCTURA ORGANIZATIVA (ORGANIGRAMA) DE LA SEPRODIS 3 de 9 nivel 0'
IO - inputCore.InputManager.executeGesture (09:18:30):
Input: kb(laptop):upArrow
IO - speech.speak (09:18:30):
Speaking ANTECEDENTES INSTITUCIONALES 2 de 9 nivel 0'
IO - inputCore.InputManager.executeGesture (09:18:30):
Input: kb(laptop):upArrow
IO - speech.speak (09:18:31):
Speaking INTRODUCCI\xd3N 1 de 9 nivel 0'
IO - inputCore.InputManager.executeGesture (09:18:32):
Input: kb(laptop):enter
IO - speech.speak (09:18:32):
Speaking [('es_ME'), u'Manual SEPRODISGRAAS Modo de compatibilidad - Microsoft Word']
DEBUGWARNING - IAccessibleHandler.accessibleObjectFromEvent (09:18:32):
oleacc.AccessibleObjectFromEvent with window 459616, objectID 215 and childID 0: -2147467259 Error no especificado
IO - speech.speak (09:18:32):
Speaking [('es_ME'), u'Manual SEPRODISGRAAS Modo de compatibilidad']
IO - speech.speak (09:18:32):
Speaking ('es_ME'), u'Documento de Microsoft Word Cuadro de Edici\xf3n multi l\xednea'
IO - speech.speak (09:18:32):
Speaking ('es_ME'), u'encabezado nivel 1', u'p\xe1gina 5', u'IV COORDINACI\xd3N INSTITUCIONAL'
ERROR - unhandled exception (09:18:32):
Traceback (most recent call last):
File "wx_misc.pyc", line 1358, in Notify
File "wx_core.pyc", line 14771, in Notify
File "browseMode.pyc", line 746, in move
File "browseMode.pyc", line 146, in moveTo
File "scriptHandler.pyc", line 144, in willSayAllResume
AttributeError: 'NoneType' object has no attribute 'wasInSayAll'
DEBUGWARNING - IAccessibleHandler.accessibleObjectFromEvent (09:18:32):
oleacc.AccessibleObjectFromEvent with window 459616, objectID 217 and childID 0: -2147467259 Error no especificado
IO - inputCore.InputManager.executeGesture (09:18:35):
Input: kb(laptop):upArrow
IO - speech.speak (09:18:35):
Speaking ('es_ME'), u'p\xe1gina 4', u'en blanco'
IO - inputCore.InputManager.executeGesture (09:18:36):
Input: kb(laptop):downArrow
IO - speech.speak (09:18:36):
Speaking ('es_ME'), u'encabezado nivel 1', u'p\xe1gina 5', u'IV COORDINACI\xd3N INSTITUCIONAL'
IO - inputCore.InputManager.executeGesture (09:18:39):
Input: kb(laptop):NVDA+n
IO - speech.speak (09:18:39):
Speaking ('es_ME'), u'NVDA men\xfa'
IO - inputCore.InputManager.executeGesture (09:18:40):
Input: kb(laptop):downArrow
IO - speech.speak (09:18:40):
Speaking ('es_ME'), u'Preferencias subMen\xfa p'
IO - inputCore.InputManager.executeGesture (09:18:40):
Input: kb(laptop):downArrow
IO - speech.speak (09:18:40):
Speaking ('es_ME'), u'Herramientas subMen\xfa h'
IO - inputCore.InputManager.executeGesture (09:18:42):
Input: kb(laptop):rightArrow
IO - speech.speak (09:18:42):
Speaking ('es_ME'), u'Ver registro v'
IO - inputCore.InputManager.executeGesture (09:18:43):
Input: kb(laptop):enter

@nvaccessAuto

Comment 25 by travisroth on 2014-11-11 19:59
Hello,
Using the latest Try build and Outlook 2013, on a HTML message received from Audible today about the latest new books, when I read the message by pressing the down arrow, NVDA reports that there are tables in the message. NVDA does not read the content of the message, however.

@nvaccessAuto

Comment 26 by surfer0627 on 2014-11-12 01:34
Hi,
Yes, speech performance of moving by line improved. It performs well, even in a big document with more than 500 pages.

However, braille performance of moving by line is still lag.

Thanks.

@nvaccessAuto

Attachment test1.rtf added by ondrosik on 2014-11-12 15:25
Description:
RTF file where you can see, that NVDA shows all headings correctly.

@nvaccessAuto

Attachment test2.rtf added by ondrosik on 2014-11-12 15:26
Description:
Document where are 6 lines with headings, but NVDA ignores the first one.

@nvaccessAuto

Comment 27 by ondrosik on 2014-11-12 15:30
I noticed interesting behaviour regarding headings. When the document starts with a heading, NVDA will ignore this heading so in the elements list, you can see only the secondone and so on (see file test2.rtf). But if there is some text (for example one line) before the heading, NVDA treat all headings correctly (see test1.rtf). In both cases, all headings are displayed correctly when using h and shift+h.

@nvaccessAuto

Comment 29 by netblue on 2014-11-14 15:20
Please post the download link for the latest build.

@nvaccessAuto

Comment 30 by mdcurran (in reply to comment 25) on 2014-11-18 06:22
Replying to travisroth:
Does browse mode not work in Outlook 2014 just for that one message, or for all messages you test? For me In Outlook 2013, browse mode is available.
Please test again and press NVDA+f1 while in the document and provide me with the developer info in the log.
Also, what happens if you press NVDA+space while in the message? do you get browse mode?

@nvaccessAuto

Comment 31 by mdcurran on 2014-11-18 06:26
Here is another try build:
http://community.nvda-project.org/try/t2975/nvda_snapshot_try-t2975-10533,3f7db76.exe

Changes:

  • Fixed error when pressing Move to in the Elements list for MS Word.
  • The first item of the document is no longer skipped in the Elements List for MS Word. I.e. all headings are shown rather than skipping the first one.
  • All gestures (such as key presses) that are not a NVDA command or possible application command are trapped while in browse mode, so that you don't accidentilly type into the document. This can be turned off in Browse Mode settings.
@nvaccessAuto

Comment 32 by surfer0627 on 2014-11-18 06:26
MS Word browseMode: review cursor could not track focus cursor correctly.

Reproduce:

  1. Open application Word2010
  2. Type one word "change"
  3. Press NVDA+space to switch to browse mode.
  4. Press home to move to the start of line
  5. Press numpad2 twice to report character description.
    NVDA reports: charlie
  6. Press right arrow one time.
  7. Press numpad2 twice
    NVDA still reports: charlie
    expected: NVDA reports: hotel
    Thanks.
@nvaccessAuto

Comment 33 by travisroth (in reply to comment 30) on 2014-11-20 16:34
Replying to mdcurran:
Testing with the latest Try build:
I had the same issue at first. Then I pressed NVDA+Space and NVDA beeped and then browse mode worked because the message was readable. So it appears that NVDA was not set to browse mode automatically at first. Perhaps this is by design and my expectations were wrong? I then switched between a few messages, including some plain text, and for the HTML messages, browse mode remained on.
So it could have been me misunderstanding what to expect with the first time an HTML message is encountered?
Overall I like this feature now, really helps handle those pesky HTML messages in Outlook.

Replying to travisroth:

Does browse mode not work in Outlook 2014 just for that one message, or for all messages you test? For me In Outlook 2013, browse mode is available.

Please test again and press NVDA+f1 while in the document and provide me with the developer info in the log.

Also, what happens if you press NVDA+space while in the message? do you get browse mode?

@nvaccessAuto

Comment 34 by mdcurran (in reply to comment 33) on 2014-11-26 02:50
Replying to travisroth:
Browse mode should turn on automatically for HTML messages in Outlook. But as we don't want to do this for messages you are writing, we check the sent property on the message in the object model. For all messages you receive, or ones you have previously sent, this property should be true. Clearly in this instance that is not correct.
Where is this HTML message coming from? your inbox? did you put it there? was it sent to you?

Can anyone else reproduce this issue in Outlook 2013?

@nvaccessAuto

Comment 35 by mdcurran (in reply to comment 32) on 2014-11-26 03:03
Replying to surfer0627:
A new try build should fix the review issues:
http://community.nvda-project.org/try/t2975/nvda_snapshot_try-t2975-10600,515845e.exe

@nvaccessAuto

Comment 36 by surfer0627 (in reply to comment 35) on 2014-11-26 06:35
Replying to mdcurran:
Hi,
Review issues have been fixed in the new try build (try-t2975-10600).
Thanks.

@nvaccessAuto

Comment 37 by nvdakor on 2014-11-26 07:43
Hi Mick,
I think we have an old issue surfacing up: if you do say all and attempt to change the system volume, Windows plays default beep sound.
STR:

  1. On any webpage or a document such as MS Word, try say all while running t2975 builds.
  2. If you have a keyboard with volume buttons, press them while say all is in progress.
    Expected: System volume will change.
    Actual: Windows plays default beep sound. This is unique to t2975 code.
    Thanks.
@nvaccessAuto

Comment 38 by mdcurran (in reply to comment 37) on 2014-11-26 07:58
Replying to nvdakor:
Yep, noticed that as well. Am currently working on a fix.
gesture.shouldReportAsCommand explicitly says that the volume keys ae not a command as we don't want them spoken in input help. But for browse mode we do want to let them through.
Therefore, we will add a gesture.isCharacter method, and browse mode key trapping will check this instead of checking shouldReportAsCommand. shouldReportAsCommand however will make use of isCharacter internally.

@nvaccessAuto

Comment 39 by mdcurran on 2014-11-27 04:15
Again another try build:
http://community.nvda-project.org/try/t2975/nvda_snapshot_try-t2975-10601,c40548a.exe

This one allows volume keys to be used again in browse mode.

I plan to merge this to next early next week.

@nvaccessAuto

Comment 40 by Michael Curran <mick@... on 2014-12-02 01:51
In [de1b7f5]:

Merge branch 't2975' into next. Incubates #2975

Changes:
Added labels: incubating

@nvaccessAuto

Comment 41 by surfer0627 (in reply to comment 18) on 2014-12-03 03:33
MS Word browseMode:
Does this feature support that user press "comma" to move past the end of the container (e.g. list, table.)?

@nvaccessAuto

Comment 42 by gregjozk_ on 2014-12-03 06:46
Hi, on userguide, there is missing 1 equal sygn. It means, that in html version of it "Trap..." is not shown correctly.

@nvaccessAuto

Comment 44 by mdcurran (in reply to comment 42) on 2014-12-03 07:19
Replying to gregjozk_:
Thanks. The typo is fixed in 749668a and will be in the next available Next snapshot.

@nvaccessAuto

Comment 45 by mdcurran (in reply to comment 41) on 2014-12-03 07:21
Replying to surfer0627:
No, the feature does not yet support jumping to start/end of containers.

@nvaccessAuto

Comment 46 by travisroth (in reply to comment 34) on 2014-12-03 21:34
The messages have been received. I tested one from Audible.com and one from PayPal.com and a third from a client.
The messages are in the Inboxes.
My Outlook is configured to support multiple accounts. While that should not be messing with the Sent flag you mention, its a point to consider in the setup.
I have both an Exchange account and an IMAP account.
When I first switch to the Inbox folder of either account, the HTML messages are not shown using the Browse mode. When I toggle it to on, it remains on while reading messages in the foler.
When I switch to the Inbox in the other account, Browse mode is once again turned off and I must manually enable it.
It is possibly something being toggled either with the changing of accounts, or possibly just the switching between folders.
Is anyone else experiencing it?
Replying to mdcurran:

Replying to travisroth:

Browse mode should turn on automatically for HTML messages in Outlook. But as we don't want to do this for messages you are writing, we check the sent property on the message in the object model. For all messages you receive, or ones you have previously sent, this property should be true. Clearly in this instance that is not correct.

Where is this HTML message coming from? your inbox? did you put it there? was it sent to you?

Can anyone else reproduce this issue in Outlook 2013?

@nvaccessAuto

Comment 47 by nvdakor on 2014-12-06 18:59
Hi,
A potentialy major problem found: if you are reading an email in Outlook and press page up or down, you'll get the following traceback:

Input: kb(desktop):pageDown
ERROR - scriptHandler.executeScript (10:55:27):
error executing script: <bound method WordDocumentTreeInterceptor.script_moveByPage_forward of <NVDAObjects.window.winword.WordDocumentTreeInterceptor object at 0x049D0070>> with gesture u'page down'
Traceback (most recent call last):
  File "scriptHandler.pyc", line 176, in executeScript
  File "cursorManager.pyc", line 171, in script_moveByPage_forward
  File "cursorManager.pyc", line 121, in _caretMovementScriptHelper
  File "NVDAObjects\window\winword.pyc", line 791, in move
  File "NVDAObjects\window\winword.pyc", line 712, in move
NotImplementedError: moving by line is only supported   collapsed and with a count of 1 or -1

Tested in latest next with t2975 code added (does not occur in last week's snapshot where t2975 wasn't added) with Outlook 2013. Thanks.

@nvaccessAuto

Comment 48 by Michael Curran <mick@... on 2014-12-07 21:17
In [37cb663]:

Merge branch 't2975' into next. Incubates #2975

@nvaccessAuto

Comment 49 by Michael Curran <mick@... on 2014-12-23 06:57
In [7c1fecd]:

Merge branch 't2975'. Fixes #2975

Changes:
Removed labels: incubating
State: closed

@nvaccessAuto

Comment 50 by mdcurran on 2014-12-23 06:58
Changes:
Milestone changed from None to 2015.1

@nvaccessAuto

Comment 51 by surfer0627 on 2014-12-23 08:29
Hi,
MS Word browseMode: The feature does not yet support find functionality.
Yes, this may not covered by 2975.
But if user press NVDA+ctrl+f and type string.
After pressing enter, NVDA plays an error sound.
Thanks.

@nvaccessAuto

Comment 52 by bhavyashah on 2014-12-23 13:07
Hi,
2015.1 is going to be a a release with pretty significant enhancements, with the major improvements to support Skype and the bringing of browse mode for Word.
But, could we request more features in browse mode for Word?

@nvaccessAuto

Comment 53 by jteh (in reply to comment 52) on 2014-12-23 23:27
Replying to bhavyashah:

But, could we request more features in browse mode for Word?

New features should now be requested in separate tickets. They probably won't make it into 2015.1, but we'll see. Major bugs in the current functionality should be reported in this ticket.

@nvaccessAuto

Comment 54 by surfer0627 (in reply to comment 47) on 2014-12-25 01:09
Hi,
MS Word browseMode:
Press page up / down, NVDA also play an error sound.
Thanks.

@nvaccessAuto

Comment 55 by mdcurran (in reply to comment 54) on 2014-12-25 05:14
Replying to surfer0627:
pageUp and pageDown fixed again in d26f9b8.

@nvaccessAuto

Comment 56 by surfer0627 (in reply to comment 55) on 2014-12-25 07:40
Replying to mdcurran:
Thanks Mick.
I'm not sure if this fix also solve a potentialy major problem that Joseph mentioned in comment: 47?
Thanks.

@nvaccessAuto

Comment 57 by mdcurran (in reply to comment 56) on 2014-12-25 09:11
Replying to surfer0627:
Yes, comment 47 is the same.

@nvaccessAuto

Comment 58 by vgjh2005 on 2014-12-29 07:05
Hi Mick:
I find two problems:
1.Key typing is quiit slow in Word. I made quick Chinese imputting, some actions will be ignored, so the candidate items that displayed in the screen is always not correct. This case doesn't occur in notepad.
2.I press nvda+space to switch to browse mode then press letter A to toggle to the next anitation. I find the text that the anitation text is belong to will be announced instead of animation text. Thanks!

@nvaccessAuto

Comment 59 by mdcurran (in reply to comment 58) on 2014-12-29 07:36
Replying to vgjh2005:
Typing / input composition should not be affected by this feature. Can you confirm that the addition of this feature slows down typing more than before (double check that NVDA 2014.4 is in fact faster than a current master snapshot).

Annotations cover both revisions and comments. Jumping to a comment you should always hear it say "has comment" or the language equivalent. For revisions however, you will need to turn on Report Editing revisions in NVDA's Document formatting settings. If you turn this on do you still not hear the revision type?

@nvaccessAuto

Comment 60 by vgjh2005 on 2014-12-29 13:15
Hi Mick:
I will make test about point two tomorrow. I ever didn't know anitation setting is included in revision setting in document settingsPoint one is existing all the time and occur only in microsoft word. It is no problem in any other editors. Need I create an new ticket? Thanks!

@nvaccessAuto

Attachment 对话框中的键盘导航.docx added by vgjh2005 on 2014-12-30 01:31
Description:
Sample file of having English comment.

@nvaccessAuto

Comment 61 by vgjh2005 on 2014-12-30 01:33
Hi:
I have attached the file of this problem. I have made test in this point, the option read author revision also has been opened. Result is the same. Thanks!

@nvaccessAuto

Comment 62 by surfer0627 on 2015-01-08 01:35
Hi,
This is an outlook2010: table navigation problem
In outlook2010 (browse mode), while pressing ctrl+alt+arrows, braille display could not do caret update.
Thanks.

@nvaccessAuto

Comment 63 by mdcurran (in reply to comment 62) on 2015-01-08 01:39
Replying to surfer0627:
Does this also occur in MS Word? And does it occur also in focus mode?

@nvaccessAuto

Comment 64 by surfer0627 (in reply to comment 63) on 2015-01-08 02:09
Replying to mdcurran:
Yes, this also occurs in MS Word (browse mode).
In focus mode (table navigation, braille display could do caret update. But it is a little bit lag.
Thanks.

@nvaccessAuto

Comment 65 by Michael Curran <mick@... on 2015-01-08 05:00
In [1ee84cf]:

Fix multiple braille tracking issues in MS Word browse mode. Re #2975.

Specifically:
- Provide table navigation scripts to the MS Word TreeInterceptor, which makes use of the existing table navigation code, but ensures braille is notified that the treeInterceptor's caret moved. This means that braille is correctly updated when moving with control+alt+arrows in a table in browse mode in MS word.
  - Provide a tab script on the MS Word treeInterceptor which again makes use of the underlying code, but ensures braille is notified of the treeInterceptor's caret update.
- Fix a typo in the original MS Word document tab script which was causing braille not to be updated at all (handleCaretMove takes an object, not a TextInfo).
- GlobalCommands's toggleVirtualBufferPassThrough script: ensure that braille is notified if a treeInterceptor is created and it is defaulting to browse mode. this allows braille to correctly update when switching to browse mode in MS word for the first time.

@nvaccessAuto

Comment 66 by mreiser on 2015-01-13 19:16
Thanks for the enhancement. I just tested with the latest master snapshot and outlook 2013 and an outlook test message that is sent when creating a new account. When pressing enter on the message, nothing is spoken. Pressing capslock and space doesn't turn on browse mode. The only way I can get it to come on is to shift+tab and it will activate. Let me know if I need to attach the message. This is using the laptop layout BTW.

@nvaccessAuto

Comment 67 by mdcurran (in reply to comment 66) on 2015-01-13 21:33
Replying to mreiser:
Does this happen with all emails for you, or just that one test message?

@nvaccessAuto

Comment 68 by mdcurran (in reply to comment 66) on 2015-01-13 21:35
Replying to mreiser:
Also, what about older versions of NVDA. Do they say nothing as well? obviously they have no browse mode, but you'd still expect focus to hit the document.

@nvaccessAuto

Comment 69 by surfer0627 (in reply to comment 65) on 2015-01-14 01:27
Replying to Michael Curran <mick@…>:
MS Word browseMode:
Tested in master-10663 and next-11478, braille is still not correctly updated when moving with control+alt+arrows in a table.

@nvaccessAuto

Comment 70 by netblue on 2015-01-14 14:35
Hi Mic, Just a few things.
When in browse mode in Word and the tab key is pressed NVDA anounces the distance from the left marjan but the tab sine can not be located but there is a chainge to the document because when closing it Word asks if you want to save the chainges. I believe it wood be best to disable the tab key in browse mode for Word. I have thot it over and I don't see any use case for using the tab key in this sence.
The other is when navigating to a part of the document thru links from and index page NVDA does not read the text that is moved to until it is red with the erro keys. so we don't knoe that a chainge has acurred unless we make a effert to do so. However when using the links or heddings thru the elements list NVDA works fine.
Another is when the space bar is pressed on plain text NVDA makes an arer sound.

@nvaccessAuto

Comment 71 by mreiser on 2015-01-14 14:46
Just tested with stable and the current master snapshots. This seems to occur with all messages. I selected a new message and when I loaded the stable version, it would take me to the content of the message right after nvda started. However, when I go to select the next email, it did not. It didn't say anything when arrows were pressed. I had to tab 4 times to reach the document area. This is with html and plain text emails.

@nvaccessAuto

Comment 72 by mdcurran (in reply to comment 71) on 2015-01-14 21:52
Replying to mreiser:
If I understand you correctly, this issue occurs in current stable (2014.4) and was therefore not caused by this ticket and you should create a new one.
If I am incorrect and it is definitely specific to this ticket then I'll take a look.

@nvaccessAuto

Comment 73 by mdcurran (in reply to comment 70) on 2015-01-14 21:54
Replying to netblue:
Thanks for reporting those issues.
Some of them I can fix, but the tab key one is tricky as tab enters a tab character, moves between table cells, and moves between form fields, depending on the current situation.
I'll think on this one.

@nvaccessAuto

Comment 74 by Michael Curran <mick@... on 2015-01-15 02:30
In [1401768]:

MS Word browse mode: for now at least, disable the tab key from doing anything as this is better than accidentally typing in the document. Re #2975

@nvaccessAuto

Comment 75 by Michael Curran <mick@... on 2015-01-15 02:36
In [45b6c85]:

MS Word browse mode: fix ecception when pressing space or enter on text that cannot be activated (currently anything that is not a link). Re #2975

@nvaccessAuto

Comment 76 by Michael Curran <mick@... on 2015-01-15 02:56
In [08d7d60]:

MS Word browse mode: when focusing an existing MS Word browse mode document, ensure that braille is updated to show the treeInterceptor, not the underlying NVDAObject. Allows braille cursor tracking when focus jumps inside of an MS Word browse mode document with out having to turn on passThrough and turn it off again. Re #2975

@nvaccessAuto

Comment 77 by mdcurran (in reply to comment 69) on 2015-01-15 03:03
Replying to surfer0627:
If I am in an MS word document and I then turn on browse mode, I can successfully use control+alt+arrows in a table and braille definitely updates for me. However, the commands do not work if I move away from the document while browse mode is enabled and move back again. Braille gets confused.
I have fixed this in 08d7d60.
Please let me know if this works for you. Hopefully this was the issue.

@nvaccessAuto

Comment 78 by surfer0627 (in reply to comment 77) on 2015-01-20 07:34
Replying to mdcurran:
Yes, just like you said: In MS Word browse mode (table nav), Braille definitely updates for me.

I got the same result: the commands do not work if I move away from the document while browse mode is enabled and move back again. Braille gets confused.

In table navigation, if I press down arrow to move to next column, and press ctrl+alt+arrows. Braille also gets confused.

@nvaccessAuto

Comment 79 by netblue (in reply to comment 78) on 2015-01-20 14:29
Hi Mic, in browse mode in latest snap, when navigating back and forth thru a list of links with the letter K, NVDA does not move to the following nor previous link. Also when doing the same thing with the up and down arrow keys, VDA moves to the links but announces them as plain text instead of links. Another thing is that all around navigation is now a lot slower especially when using control down arrow. When pressing enter or space bar from a list of links, NVDA still does not announce the part of the document that is moved to. The tab key and spacebar seems to be working correctly.

@nvaccessAuto

Comment 80 by leonarddr on 2015-02-13 21:30
The browse mode option "Maximum number of characters on one line" doesn't work in browse mode for Word.

@nvaccessAuto

Comment 81 by jteh on 2015-02-13 21:33
That's because in Word, we use the actual lines on screen, which is usually more desirable in a word processor document. Nevertheless, it should be documented somehow that this setting doesn't apply here.

@nvaccessAuto

Comment 82 by leonarddr on 2015-02-17 12:18
I've experienced several problems with browse mode in Word protected view. I downloaded a file from the web which opened in protected view. Using the arrow keys in the normal Word view didn't allow me to navigate, which seems to be a Word restriction. Browse mode gave me the following error though:
IO - inputCore.InputManager.executeGesture (13:14:54): Input: kb(laptop):upArrow ERROR - scriptHandler.executeScript (13:14:54): error executing script: <bound method WordDocumentTreeInterceptor.script_moveByLine_back of <NVDAObjects.window.winword.WordDocumentTreeInterceptor object at 0x04E32CD0>> with gesture u'up arrow' Traceback (most recent call last): File "scriptHandler.pyc", line 176, in executeScript File "cursorManager.pyc", line 187, in script_moveByLine_back File "cursorManager.pyc", line 110, in _caretMovementScriptHelper File "NVDAObjects\window\winword.pyc", line 806, in collapse File "NVDAObjects\window\winword.pyc", line 692, in collapse RuntimeError
It is actually quite hard to reproduce this, but will try to find a way.

@nvaccessAuto

Comment 83 by leonarddr on 2015-06-15 09:56
Another thing which seems a bug to me, it is possible to delete text in browse mode, either with delete or backspacbe.

@nvaccessAuto nvaccessAuto added this to the 2015.1 milestone Nov 10, 2015
@michaelDCurran michaelDCurran added a commit that referenced this issue Nov 23, 2015
@michaelDCurran michaelDCurran Fix multiple braille tracking issues in MS Word browse mode. Re #2975.
Specifically:
* Provide table navigation scripts to the MS Word TreeInterceptor, which makes use of the existing table navigation code, but ensures braille is notified that the treeInterceptor's caret moved. This means that braille is correctly updated when moving with control+alt+arrows in a table in browse mode in MS word.
 * Provide a tab script on the MS Word treeInterceptor which again makes use of the underlying code, but ensures braille is notified of the treeInterceptor's caret update.
* Fix a typo in the original MS Word document tab script which was causing braille not to be updated at all (handleCaretMove takes an object, not a TextInfo).
* GlobalCommands's toggleVirtualBufferPassThrough script: ensure that braille is notified if a treeInterceptor is created and it is defaulting to browse mode. this allows braille to correctly update when switching to browse mode in MS word for the first time.
1ee84cf
@michaelDCurran michaelDCurran added a commit that referenced this issue Nov 23, 2015
@michaelDCurran michaelDCurran MS Word browse mode: for now at least, disable the tab key from doing…
… anything as this is better than accidentally typing in the document. Re #2975
1401768
@michaelDCurran michaelDCurran added a commit that referenced this issue Nov 23, 2015
@michaelDCurran michaelDCurran MS Word browse mode: fix ecception when pressing space or enter on te…
…xt that cannot be activated (currently anything that is not a link). Re #2975
45b6c85
@michaelDCurran michaelDCurran added a commit that referenced this issue Nov 23, 2015
@michaelDCurran michaelDCurran MS Word browse mode: when focusing an existing MS Word browse mode do…
…cument, ensure that braille is updated to show the treeInterceptor, not the underlying NVDAObject. Allows braille cursor tracking when focus jumps inside of an MS Word browse mode document with out having to turn on passThrough and turn it off again. Re #2975
08d7d60
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment