svx/source/table/accessiblecell.cxx | 4 ++-- svx/source/table/accessiblecell.hxx | 2 +- svx/source/table/accessibletableshape.cxx | 13 ++++++------- 3 files changed, 9 insertions(+), 10 deletions(-)
New commits: commit 7d02c59170a0ec1b9ef726554795d06f5e3ea05c Author: Noel Grandin <noelgran...@gmail.com> AuthorDate: Sat Sep 2 15:00:09 2023 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Sat Sep 2 18:27:55 2023 +0200 use more concrete type in AccessibleCell Change-Id: I21869dbbf722b9d5985e97e921fc131fe8fe2d2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156473 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/svx/source/table/accessiblecell.cxx b/svx/source/table/accessiblecell.cxx index 7ac5e1f414d3..19bb8961c8a7 100644 --- a/svx/source/table/accessiblecell.cxx +++ b/svx/source/table/accessiblecell.cxx @@ -50,14 +50,14 @@ using namespace ::com::sun::star::container; namespace accessibility { -AccessibleCell::AccessibleCell( const css::uno::Reference< css::accessibility::XAccessible>& rxParent, sdr::table::CellRef xCell, sal_Int32 nIndex, const AccessibleShapeTreeInfo& rShapeTreeInfo ) +AccessibleCell::AccessibleCell( const rtl::Reference< AccessibleTableShape>& rxParent, sdr::table::CellRef xCell, sal_Int32 nIndex, const AccessibleShapeTreeInfo& rShapeTreeInfo ) : AccessibleCellBase( rxParent, AccessibleRole::TABLE_CELL ) , maShapeTreeInfo( rShapeTreeInfo ) , mnIndexInParent( nIndex ) , mxCell(std::move( xCell )) { //Init the pAccTable var - pAccTable = dynamic_cast <AccessibleTableShape *> (rxParent.get()); + pAccTable = rxParent.get(); } diff --git a/svx/source/table/accessiblecell.hxx b/svx/source/table/accessiblecell.hxx index 38a28b9e333d..39c45da3d890 100644 --- a/svx/source/table/accessiblecell.hxx +++ b/svx/source/table/accessiblecell.hxx @@ -47,7 +47,7 @@ class AccessibleCell : public AccessibleCellBase , public IAccessibleViewForwarderListener { public: - AccessibleCell( const css::uno::Reference< css::accessibility::XAccessible>& rxParent, sdr::table::CellRef xCell, sal_Int32 nIndex, const AccessibleShapeTreeInfo& rShapeTreeInfo); + AccessibleCell( const rtl::Reference<AccessibleTableShape>& rxParent, sdr::table::CellRef xCell, sal_Int32 nIndex, const AccessibleShapeTreeInfo& rShapeTreeInfo); virtual ~AccessibleCell() override; AccessibleCell(const AccessibleCell&) = delete; AccessibleCell& operator=(const AccessibleCell&) = delete; commit 151eb21f7a5e14df0d3367466b150afd2571bddd Author: Noel Grandin <noelgran...@gmail.com> AuthorDate: Sat Sep 2 14:57:53 2023 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Sat Sep 2 18:27:46 2023 +0200 use more concrete type in AccessibleTableShapeImpl Change-Id: I6acc54c1c178815805fc1a724ad4c00b17a5ed6c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156472 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/svx/source/table/accessibletableshape.cxx b/svx/source/table/accessibletableshape.cxx index cc3a8e90b7f3..f1cedcd3a0ca 100644 --- a/svx/source/table/accessibletableshape.cxx +++ b/svx/source/table/accessibletableshape.cxx @@ -62,7 +62,7 @@ class AccessibleTableShapeImpl : public cppu::WeakImplHelper< XModifyListener > public: explicit AccessibleTableShapeImpl( AccessibleShapeTreeInfo& rShapeTreeInfo ); - void init( const Reference< XAccessible>& xAccessible, const Reference< XTable >& xTable ); + void init( const rtl::Reference< AccessibleTableShape>& xAccessible, const Reference< XTable >& xTable ); void dispose(); /// @throws IndexOutOfBoundsException @@ -80,7 +80,7 @@ public: AccessibleShapeTreeInfo& mrShapeTreeInfo; Reference< XTable > mxTable; AccessibleCellMap maChildMap; - Reference< XAccessible> mxAccessible; + rtl::Reference< AccessibleTableShape> mxAccessible; sal_Int32 mRowCount, mColCount; //get the cached AccessibleCell from XCell rtl::Reference< AccessibleCell > getAccessibleCell (const Reference< XCell >& xCell); @@ -98,7 +98,7 @@ AccessibleTableShapeImpl::AccessibleTableShapeImpl( AccessibleShapeTreeInfo& rSh } -void AccessibleTableShapeImpl::init( const Reference< XAccessible>& xAccessible, const Reference< XTable >& xTable ) +void AccessibleTableShapeImpl::init( const rtl::Reference<AccessibleTableShape>& xAccessible, const Reference< XTable >& xTable ) { mxAccessible = xAccessible; mxTable = xTable; @@ -109,7 +109,7 @@ void AccessibleTableShapeImpl::init( const Reference< XAccessible>& xAccessible, mxTable->addModifyListener( xListener ); //register the listener with table model Reference< css::view::XSelectionSupplier > xSelSupplier(xTable, UNO_QUERY); - Reference< css::view::XSelectionChangeListener > xSelListener( xAccessible, UNO_QUERY ); + Reference< css::view::XSelectionChangeListener > xSelListener( xAccessible ); if (xSelSupplier.is()) xSelSupplier->addSelectionChangeListener(xSelListener); mRowCount = mxTable->getRowCount(); @@ -303,9 +303,8 @@ void SAL_CALL AccessibleTableShapeImpl::modified( const EventObject& /*aEvent*/ rEntry.second->dispose(); } //notify bridge to update the acc cache. - AccessibleTableShape *pAccTable = dynamic_cast <AccessibleTableShape *> (mxAccessible.get()); - if (pAccTable) - pAccTable->CommitChange(AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any(), -1); + if (mxAccessible) + mxAccessible->CommitChange(AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any(), -1); } catch( const Exception& ) {