Open k-kolev1985 opened 1 year ago
Also duplicable with Thunderbird 116 Beta 3.
Possibly related to https://github.com/nvaccess/nvda/issues/15159.
Two workarounds in the meantime for this:
1) Press NVDA+numpad 5 (laptop: NVDA+shift+o). This reports the current object - As long as you have object navigation set to follow focus this will work (and anyone reading this not sure what that is - you probably don't need to worry as you likely haven't changed it from the default)
2) Move focus off the current item and back - eg down arrow then up arrow probably works best. Other commands such as tab then shift tab, or alt twice will also do it, but as they move the focus out of the message list, they will also report that as well.
Yeah it seems this navigation as requested in the issue description works only for child objects but not for parent objects. So on the parent object for a message for example, all columns are sumarized but not read by NVDA. On the child level of a message element in the message list, you can navigate column by column (with object navigation). So it seems something is broken on the parent object level.
cc: @emitche did you expose the object information to the accessibility API also on a parent object level?
This might also be related to the problem in #15162.
Yeah it seems this navigation as requested in the issue description works only for child objects but not for parent objects. So on the parent object for a message for example, all columns are sumarized but not read by NVDA. On the child level of a message element in the message list, you can navigate column by column (with object navigation). So it seems something is broken on the parent object level.
cc: @emitche did you expose the object information to the accessibility API also on a parent object level?
This might also be related to the problem in #15162.
I will investigate this. Thank you for this information.
I was searching a solution for this problem and I think it seems a bug on the implementation of IAccessible 2 Text Object interface. For web controls NVDA tries to get the name from the IAccessibleTextObject, but if you try to get the text from it for example on the Python console, you will get:
>>> focus.IAccessibleTextObject.text(0, focus.IAccessibleTextObject.nCharacters)
' '
However, it is not a space, it seems to return strange characters:
>>> focus.IAccessibleTextObject.text(0, focus.IAccessibleTextObject.nCharacters).encode()
b'\xef\xbf\xbc\xef\xbf\xbc\xef\xbf\xbc\xef\xbf\xbc\xef\xbf\xbc\xef\xbf\xbc\xef\xbf\xbc\xef\xbf\xbc'
In this case, the focus
variable points to a message object on the messages list.
A temporary solution I thought is if NVDA detects these characters, it falls back to NVDAObjectTextInfo so it gets the text from the name of the control, but if the IAccessibleTextObject could be fixed it would be nice as it could solve this problem not only for Thunderbird but also for other applications that use the IAccessibleTextObject.
cc: @michaelDCurran
This is what I get in the log when trying to review a parent object with the review cursor:
IO - inputCore.InputManager.executeGesture (14:42:36.028) - winInputHook (23632):
Input: kb(laptop):NVDA+rightArrow
DEBUGWARNING - NVDAObjects.IAccessible.normalizeIA2TextFormatField (14:42:36.030) - MainThread (23432):
Unsupported value for text-align attribute: "start"
IO - speech.speech.speak (14:42:36.030) - MainThread (23432):
Speaking [CharacterModeCommand(True), ' ', EndUtteranceCommand()]
IO - inputCore.InputManager.executeGesture (14:42:36.188) - winInputHook (23632):
Input: kb(laptop):NVDA+rightArrow
DEBUGWARNING - NVDAObjects.IAccessible.normalizeIA2TextFormatField (14:42:36.190) - MainThread (23432):
Unsupported value for text-align attribute: "start"
IO - speech.speech.speak (14:42:36.191) - MainThread (23432):
Speaking [CharacterModeCommand(True), ' ', EndUtteranceCommand()]
In this casee, NVDA is silent on every character when pressing nvda+left or right arrow.
Tested with NVDA 2024.4 Beta and Thunderbird 128.2.0. @LeonarddeR maybe you have some advice on this one.
Steps to reproduce:
Actual behavior:
Expected behavior:
System configuration
NVDA installed/portable/running from source:
Installed.
NVDA version:
NVDA alpha-28694,c4ca763b, in bulgarian.
Windows version:
Windows 11 Pro version 22H2 (build 22621.1992), 64-bit, in Bulgarian with all locale settings set to "Bulgarian".
Name and version of other software in use when reproducing the issue:
Thunderbird 115.0.0, 64-bit, in bulgarian.
Other questions
Does the issue still occur after restarting your computer?
Yes.
Have you tried any other versions of NVDA? If so, please report their behaviors.
2023.1 - the result is the sane.
If NVDA add-ons are disabled, is your problem still occurring?
Yes, it is.
Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?
Yes, it does.
Additional information
The tree view with the folders and the list of messages are only two examples - the issue is reproducible in the tree view and list view in the address book of Thunderbird and maybe in other similar controls as well.