NVDA doesn't report spelling errors in text fields in Internet Explorer #4174

nvaccessAuto opened this Issue Jun 4, 2014 · 12 comments

1 participant


Reported by k_kolev1985 on 2014-06-04 14:51
I'm mainly a Firefox user, so I haven't noticed it before. But recently I need to use Internet Explorer for a work project and it includes typing text in text fields. I've noticed that in comparison with Firefox where NVDA reports spelling errors with no problems, here in Internet Explorer it doesn't do it.

Steps to reproduce it:
1. Enable the reporting of spelling errors in NVDA's settings, if it is not already enabled.
2. Open Internet Explorer.
3. Make sure that the spell checker in Internet Explorer is enabled.
4. Go to a webpage containing a multiline text field.
5. Start typing something in the multiline edit field and make some intentional spelling errors, in order to trigger the spell checker to show the misspelled words (as underlined).
6. Read the lines with the misspelled words with NVDA

'''Actual results:''' NVDA doesn't report the misspelled words as such, even though visually they show as misspelled.

'''Expected results:''' NVDA should report the misspelled words as such in Internet Explorer, as it does in Firefox.

Test environment:

  • Operating system: Windows 8.1 Pro N, 64-bit.
  • Internet Explorer version: 11.00.9600.16384.
  • NVDA versions: next-10671,9735db1; 2014.2.

Comment 1 by k_kolev1985 on 2014-06-04 14:59
P.S.: What is wrong with the text field for the description of an issue in the NVDA TRAC? In Firefox, text wraps on a new line when it reaches the end of the previous line. In Internet Explorer 11, the text doesn't wrap to a new line - instead, it continues on the same one. Not only that, but NVDA reads only the visible on the screen part of the current line in that text field. This does not affect the comments text field - it wraps as it should. Is this by design in Internet Explorer 11?


Comment 2 by mdcurran on 2014-12-11 08:16
We were going to use UIAutomation in Internet Explorer edit fields to fix this. However, it seems this is not going to work.

some testing shows that the UIAutomation element we get from IUIAutomation.elementFromIAccessibleBuildCache, given the IAccessible of an IE edit field, is different to the UIAutomation element given from a UIAutomation focus event on the same edit field. Specifically and most importantly, it has no text pattern!
Its controlType and name etc are correct though.

Back to the drawing board.


Comment 3 by Michael Curran <mick@... on 2015-01-08 01:26
In [4ae754c]:
```CommitTicketReference repository="" revision="4ae754c7e38fa547ef63e768f5ba90aeb3177134"
Merge branch 't4174' into next. Incubates #4174

Added labels: incubating

Comment 4 by nvdakor on 2015-01-09 09:01
Hi Mick,
This ticket broke backspace handling in edit fields in IE..
1. DDownload two next builds: 114426 and 11436.
2. In Internet Explorer (I'm using 11 on Windows 8.1), type something into an edit field and press backspace in an attempt to delete the previous character.
Expeced: NVDA should announce the character right before cursor.
Actual: NVDA announces one character to the left of the currnetly deleted character.
Example: user types "testing" and presses backspace. NVDA shuld announce "g, n, i" and so on, but in 11436, NvDA announces "n, i, t" and so on.


Comment 5 by mdcurran on 2015-01-09 09:45
humm. MSHTML's UIAutomation implementation does not allow a range to represent the end of the field (NULL insertion point). Therefore the range is already on the last character typed and doing move(character) makes it go back too far.
I'm not too sure if we can work around this, therefore we may end up scrapping this whole idea for now and spelling error functionality will have to wait until Microsoft gets it right.


Comment 6 by k_kolev1985 on 2015-01-09 10:42
Too bad. It was working even for apps like the modern Skype and the Facebook app for Windows 8. But the bug described was present as well. In the Facebook app there was even a freeze while editing text in the fields for our status and for a comment.


Comment 7 by Michael Curran <mick@... on 2015-01-12 05:50
In [111e222]:
```CommitTicketReference repository="" revision="111e222a3c6c17cd8b95fd5c65cd19bac0e10928"
Merge branch 't4174' into next. Incubates #4174


Comment 8 by k_kolev1985 on 2015-01-25 12:17
The bug with the freeze in the Facebook app for Windows 8 with NVDa's "Report spelling errors" option enabled is still present. Steps to reproduce it:
1. Install the Facebook app for Windows 8 from the Windows Store.
2. Login in it with your Facebook account.
3. Find and activate the "Status" button. It allows you to post a status to Facebook.
4. In the "Write a post" edit field, type something. Deliberately misspell at least one of the words.
5. Execute NVDA's "Read current line" command.

Expected results:
NVDA should read the current line and report the misspelled word(s).

Actual Results:
NVDA fails to read the current line or anything and freezes until the focus gets away from the Facebook app.

Test environment:

  • Operating system: Windows 8.1 Pro N, 64-bit, in Bulgarian with all locale settings set to "Bulgarian".
  • NVDA version: next-11520,522dc25.
  • Facebook app version: latest from the Store, but I can't find from where in the app to get the exact version number.

Comment 9 by Michael Curran <mick@... on 2015-04-29 05:38
In [051c11f]:
```CommitTicketReference repository="" revision="051c11f111aa255d27d35389189e9ab53e29d5b9"
Merge branch 't4174' into next. Incubates #4174


Comment 10 by mdcurran (in reply to comment 8) on 2015-04-29 05:40
Replying to k_kolev1985:
The facebook freeze seems to be fixed for me now with the latest change to t4174.


Comment 11 by Michael Curran <mick@... on 2015-05-29 04:32
In [a87940f]:
```CommitTicketReference repository="" revision="a87940f02f51c52d186e49b8747aa4c8da33cf6d"
Merge branch 't4174'. Fixes #4174

Removed labels: incubating
State: closed

Comment 12 by jteh on 2015-05-29 05:52
Milestone changed from None to 2015.3

@nvaccessAuto nvaccessAuto added this to the 2015.3 milestone Nov 10, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment