diff options
author | Marco Cecchetti <marco.cecchetti@collabora.com> | 2023-10-03 12:34:45 +0200 |
---|---|---|
committer | Caolán McNamara <caolan.mcnamara@collabora.com> | 2023-10-22 16:39:59 +0200 |
commit | c34f465a21dab492afec12011f4a16584a663d9f (patch) | |
tree | 40e14f939aedb6a38ae4d02c087fc8bd9a1d4339 /desktop | |
parent | 10a4fc18c48bbcf3dbfe802f7c13405cfe737084 (diff) |
lok: a11y: impress: screen reader support for text shape editing
Now accessibility support can be enabled in Impress.
Fixed an issue that prevented to receive accessibility event when a
shape text content was edited.
Some rectangles overlapping check is performed for excluding not
visible shapes from the a11y tree
Anyway client and core visible area can differ some shape was wrongly
pruned from the a11y tree.
The problem has been fixed by not performing the overlapping test in
the LOK case: we already do the same for shape area invalidation.
In order to avoid the screen reader to report no more focused
paragraph we send an empty paragraph to clear the editable area when
shape selection state changes. When shape ediding becomes active the
text content of the shape is sent to the client.
Change-Id: Ia9ee08d060162891725d26efd2aa36e47b38ed50
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157525
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158329
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/lib/init.cxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index bbb32dd3d74f..57869a7540ef 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -7293,7 +7293,7 @@ static void doc_setAccessibilityState(SAL_UNUSED_PARAMETER LibreOfficeKitDocumen SolarMutexGuard aGuard; int nDocType = getDocumentType(pThis); - if (nDocType != LOK_DOCTYPE_TEXT) + if (!(nDocType == LOK_DOCTYPE_TEXT || nDocType == LOK_DOCTYPE_PRESENTATION)) return; SfxLokHelper::setAccessibilityState(nId, nEnabled); |