summaryrefslogtreecommitdiff
path: root/sw/source/core/access/accmap.cxx
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2024-01-24 12:10:32 +0100
committerMichael Weghorn <m.weghorn@posteo.de>2024-01-25 09:41:38 +0100
commit8479bbecd2434d65eb6c26100a783ecf96f6da12 (patch)
treecdfab14da9d04245208d217c9a37767bef5f7d8c /sw/source/core/access/accmap.cxx
parent25bda5d887b12015e0f7d32753408b20544b5566 (diff)
sw a11y: Return SwAccessibleContext to avoid casting
Let `SwAccessibleMap::GetDocumentView_` return the more concrete `rtl::Reference<SwAccessibleContext>` instead of `uno::Reference<XAccessible>`, which avoids having to cast in one place in `SwAccessibleMap::DoInvalidateShapeSelection` (and more places in upcoming changes). Replace the null check by an assert, as `SwAccessibleMap::GetDocumentView_` never returns an empty reference. Change-Id: I32d5bd2f81e7a69eacf92af1cf24249eb3a9f2a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162516 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'sw/source/core/access/accmap.cxx')
-rw-r--r--sw/source/core/access/accmap.cxx15
1 files changed, 6 insertions, 9 deletions
diff --git a/sw/source/core/access/accmap.cxx b/sw/source/core/access/accmap.cxx
index ebc877601efc..0a6da3f501b8 100644
--- a/sw/source/core/access/accmap.cxx
+++ b/sw/source/core/access/accmap.cxx
@@ -1556,14 +1556,11 @@ void SwAccessibleMap::DoInvalidateShapeSelection(bool bInvalidateFocusMode /*=fa
const unsigned int SELECTION_WITH_NUM = 10;
if (vecxShapeAdd.size() > SELECTION_WITH_NUM )
{
- uno::Reference< XAccessible > xDoc = GetDocumentView( );
- SwAccessibleContext * pCont = static_cast<SwAccessibleContext *>(xDoc.get());
- if (pCont)
- {
- AccessibleEventObject aEvent;
- aEvent.EventId = AccessibleEventId::SELECTION_CHANGED_WITHIN;
- pCont->FireAccessibleEvent(aEvent);
- }
+ rtl::Reference<SwAccessibleContext> xDoc = GetDocumentView_(false);
+ assert(xDoc.is());
+ AccessibleEventObject aEvent;
+ aEvent.EventId = AccessibleEventId::SELECTION_CHANGED_WITHIN;
+ xDoc->FireAccessibleEvent(aEvent);
}
else
{
@@ -1696,7 +1693,7 @@ SwAccessibleMap::~SwAccessibleMap()
mpVSh->GetLayout()->RemoveAccessibleShell();
}
-uno::Reference< XAccessible > SwAccessibleMap::GetDocumentView_(
+rtl::Reference<SwAccessibleContext> SwAccessibleMap::GetDocumentView_(
bool bPagePreview )
{
DBG_TESTSOLARMUTEX();