Open nvaccessAuto opened 10 years ago
Comment 1 by ateu on 2014-07-13 18:19 Interstingly, it's possible to read several controls in the application, but not the text. Also, it's possible to read the title and subtitle.
Comment 3 by jteh (in reply to comment 1) on 2014-07-14 01:27 Replying to ateu:
Interstingly, it's possible to read several controls in the application, but not the text.
I'm not suggesting this is a solution, but for those that care, you can get at the text by disabling simple review and using object navigation to move inside the shapes. (This doesn't work with simple review enabled.) Also, you can of course tab through the shapes on each slide and press f2 to edit them, at which point you can also read the text.
@Diego, @ateu, @qchristensen can you still reproduce this issue in last Version of Open Offic?
I can still reproduce this in Open Office Impress 4.1.6, as well as LibreOffice Impress 6.1.3.2 with NVDA 2018.4.1 (behaviour is identical in each).
As Jamie noted previously, you can use TAB to move between objects, then F2 or ENTER to edit them. Note that say all - NVDA+down arrow or NVDA+A does NOT work in these objects - it only reads the current line. The two ways I found to read all the text in an object are:
1) Move to the top then read one line at a time. 2) Select all, copy, then read the contents of the clipboard (selecting then reading the selection still only reads one line even though multiple are selected).
To compare - in Microsoft PowerPoint when moving through the list of slides, the title text of each slide is read as well as the slide style. In OO and LO, only the slide style is read. In PowerPoint when using TAB to move through the objects on a slide, the text of each object is read as well as the object type. In LO and OO only the type of object is reported.
There is a similar LibreOffice bug (primarily noting that the contents object isn't readable when there is only one slide): https://bugs.documentfoundation.org/show_bug.cgi?id=102145
The text can now be navigated with arrow keys within the placeholder same as in powerpoint, but on every up and down arrow NVDA says "paragraph multiline editable" which is overly verbose. When pressing escape after editing the text in a placaeholder, the place holder becomes non focused. Following is the developer info for a content placeholder after I've edited the text and pressed escape:
INFO - globalCommands.script_navigatorObject_devInfo (21:24:49.746) - MainThread (14780):
Developer info for navigator object:
name: 'Bézierkurve '
role: SHAPE
processID: 15428
roleText: None
states: SELECTABLE, FOCUSABLE, EDITABLE
isFocusable: True
hasFocus: False
Python object: <NVDAObjects.IAccessible.IAccessible object at 0x06122650>
Python class mro: (<class 'NVDAObjects.IAccessible.IAccessible'>, <class 'NVDAObjects.window.Window'>, <class 'NVDAObjects.NVDAObject'>, <class 'documentBase.TextContainerObject'>, <class 'baseObject.ScriptableObject'>, <class 'baseObject.AutoPropertyObject'>, <class 'garbageHandler.TrackedObject'>, <class 'object'>)
description: None
location: RectLTWH(left=331, top=421, width=38, height=43)
value: None
TextInfo: <class 'NVDAObjects.NVDAObjectTextInfo'>
appModule: AppModule(soffice, appName='soffice', processID=15428)
appModule.productName: 'LibreOffice'
appModule.productVersion: '25.2.0.0'
appModule.helperLocalBindingHandle: c_long(121962568)
appModule.appArchitecture: 'AMD64'
windowHandle: 2820326
windowClassName: 'SALFRAME'
windowControlID: 0
windowStyle: 349110272
extendedWindowStyle: 256
windowThreadID: 2124
windowText: 'Slides_test.odp – LibreOfficeDev Impress'
displayText: ''
IAccessibleObject: <POINTER(IAccessible2) ptr=0x771976c at a357530>
IAccessibleChildID: 0
IAccessible event parameters: windowHandle=2820326, objectID=-4, childID=-1026
IAccessible accName: 'Bézierkurve '
IAccessible accRole: ROLE_SYSTEM_CLIENT
IAccessible accState: STATE_SYSTEM_SIZEABLE, STATE_SYSTEM_MOVEABLE, STATE_SYSTEM_FOCUSABLE, STATE_SYSTEM_SELECTABLE, STATE_SYSTEM_VALID (3538944)
IAccessible accDescription: ' '
IAccessible accValue: None
IAccessible2 windowHandle: 2820326
IAccessible2 uniqueID: -1026
IAccessible2 role: IA2_ROLE_SHAPE
IAccessible2 states: IA2_STATE_EDITABLE (8)
IAccessible2 attributes: 'style:Bézierkurve;'
IAccessible2 relations: describedBy * 1
Expected behavior: The focus should land on the placeholder and NVDA should read the placeholder type and the text in it.
Actual behavior: NVDA is silent when navigating to the placeholder with tab or shift+tab.
Also:
IO - inputCore.InputManager.executeGesture (21:21:16.254) - winInputHook (32180):
Input: kb(laptop):upArrow
IO - speech.speech.speak (21:21:16.304) - MainThread (14780):
Speaking ['Titel, Inhalt', '3 von 16', 'Ebene 1']
IO - inputCore.InputManager.executeGesture (21:21:16.714) - winInputHook (32180):
Input: kb(laptop):upArrow
ERROR - eventHandler.executeEvent (21:21:16.744) - MainThread (14780):
error executing event: gainFocus on <NVDAObjects.IAccessible.IAccessible object at 0x00F63550> with extra args of {}
Traceback (most recent call last):
File "eventHandler.pyc", line 348, in executeEvent
File "eventHandler.pyc", line 382, in doPreGainFocus
File "api.pyc", line 189, in setFocusObject
File "api.pyc", line 348, in setNavigatorObject
File "review.pyc", line 138, in setCurrentMode
File "review.pyc", line 57, in getDocumentPosition
File "documentBase.pyc", line 76, in makeTextInfo
File "compoundDocuments.pyc", line 287, in __init__
File "documentBase.pyc", line 76, in makeTextInfo
File "textInfos\offsets.pyc", line 505, in __init__
File "textInfos\offsets.pyc", line 267, in _getCaretOffset
NotImplementedError
cc: @michaelweghorn I tested with Libreoffice 25.2 and NVDA 2024.4 Beta. Slides_test.odp
@Adriani90 That will need further analysis.
- You cannot jump from slide to slide with arrow keys when opening a new document, see attached document. Following is written to the log from time to time when arrowing up and down:
[...]
At first glance, it looks like NVDA is trying to create a TextInfo
and retrieving the caret position from a slide object (role: SHAPE
) that doesn't actually implement the IAccessibleText interface.
Reported by Diego on 2014-07-12 11:53 hi. Currently, when you open a slide with open office 4.1, NVDA does not read the contents of the slide. arrows, commands to move to the next slide does not work, and NVDA does not speak.