vcl/inc/accessibility/accessibleiconchoicectrl.hxx    |   12 ----------
 vcl/source/accessibility/accessibleiconchoicectrl.cxx |   21 ------------------
 vcl/source/control/ivctrl.cxx                         |    6 -----
 3 files changed, 3 insertions(+), 36 deletions(-)

New commits:
commit 057df5db591f963bc593f4d7dbddf7cc84e1ae99
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Tue Mar 4 17:04:29 2025 +0100
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Tue Mar 4 21:35:51 2025 +0100

    iconchoicectrl a11y: Reuse parent handling + disposing from base class
    
    Drop the custom handling for the accessible parent
    from AccessibleIconChoiceCtrl, as the base class
    VCLXAccessibleComponent already has an implementation
    for vcl::Window subclasses that effectively does the same.
    
    Drop AccessibleIconChoiceCtrl::disposing, which also
    means that the base class one is used now, which
    so far wasn't called from the override for no apparent
    reason.
    
    Change-Id: Iec4b297462fb8265e75fd9f298ba0838c23053db
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182491
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/vcl/inc/accessibility/accessibleiconchoicectrl.hxx 
b/vcl/inc/accessibility/accessibleiconchoicectrl.hxx
index b15ebf728eba..72b91903b16d 100644
--- a/vcl/inc/accessibility/accessibleiconchoicectrl.hxx
+++ b/vcl/inc/accessibility/accessibleiconchoicectrl.hxx
@@ -34,13 +34,8 @@ class AccessibleIconChoiceCtrl final :
         css::accessibility::XAccessible,
         css::accessibility::XAccessibleSelection>
 {
-    css::uno::Reference< css::accessibility::XAccessible > m_xParent;
-
     virtual ~AccessibleIconChoiceCtrl() override = default;
 
-    /** this function is called upon disposing the component */
-    virtual void SAL_CALL   disposing() override;
-
     virtual void    ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent 
) override;
     virtual void    FillAccessibleStateSet( sal_Int64& rStateSet ) override;
 
@@ -50,12 +45,8 @@ public:
     /** OAccessibleBase needs a valid view
         @param  _rIconCtrl
             is the box for which we implement an accessible object
-        @param  _xParent
-            is our parent accessible object
     */
-    AccessibleIconChoiceCtrl(
-        SvtIconChoiceCtrl& _rIconCtrl,
-        const css::uno::Reference<css::accessibility::XAccessible>& _xParent);
+    AccessibleIconChoiceCtrl(SvtIconChoiceCtrl& _rIconCtrl);
 
     // XServiceInfo
     virtual OUString SAL_CALL getImplementationName() override;
@@ -67,7 +58,6 @@ public:
     // XAccessibleContext
     virtual sal_Int64 SAL_CALL getAccessibleChildCount(  ) override;
     virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL 
getAccessibleChild( sal_Int64 i ) override;
-    virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL 
getAccessibleParent(  ) override;
     virtual sal_Int16 SAL_CALL getAccessibleRole(  ) override;
     virtual OUString SAL_CALL getAccessibleDescription(  ) override;
     virtual OUString SAL_CALL getAccessibleName(  ) override;
diff --git a/vcl/source/accessibility/accessibleiconchoicectrl.cxx 
b/vcl/source/accessibility/accessibleiconchoicectrl.cxx
index e8e96f8d8c52..e4fa2bf47664 100644
--- a/vcl/source/accessibility/accessibleiconchoicectrl.cxx
+++ b/vcl/source/accessibility/accessibleiconchoicectrl.cxx
@@ -36,10 +36,8 @@ using namespace ::com::sun::star;
 
 // Ctor() and Dtor()
 
-AccessibleIconChoiceCtrl::AccessibleIconChoiceCtrl(SvtIconChoiceCtrl& 
_rIconCtrl,
-                                                   const 
Reference<XAccessible>& _xParent)
+AccessibleIconChoiceCtrl::AccessibleIconChoiceCtrl(SvtIconChoiceCtrl& 
_rIconCtrl)
     : ImplInheritanceHelper(&_rIconCtrl)
-    , m_xParent(_xParent)
 {
 }
 
@@ -91,15 +89,6 @@ void AccessibleIconChoiceCtrl::ProcessWindowEvent( const 
VclWindowEvent& rVclWin
     }
 }
 
-// XComponent
-
-void SAL_CALL AccessibleIconChoiceCtrl::disposing()
-{
-    ::osl::MutexGuard aGuard( m_aMutex );
-
-    m_xParent = nullptr;
-}
-
 // XServiceInfo
 
 OUString SAL_CALL AccessibleIconChoiceCtrl::getImplementationName()
@@ -142,14 +131,6 @@ Reference< XAccessible > SAL_CALL 
AccessibleIconChoiceCtrl::getAccessibleChild(
     return new AccessibleIconChoiceCtrlEntry( *pCtrl, i, this );
 }
 
-Reference< XAccessible > SAL_CALL 
AccessibleIconChoiceCtrl::getAccessibleParent(  )
-{
-    ::osl::MutexGuard aGuard( m_aMutex );
-
-    ensureAlive();
-    return m_xParent;
-}
-
 sal_Int16 SAL_CALL AccessibleIconChoiceCtrl::getAccessibleRole(  )
 {
     //return AccessibleRole::TREE;
diff --git a/vcl/source/control/ivctrl.cxx b/vcl/source/control/ivctrl.cxx
index 3b2338116259..a215cc1680b1 100644
--- a/vcl/source/control/ivctrl.cxx
+++ b/vcl/source/control/ivctrl.cxx
@@ -328,11 +328,7 @@ void SvtIconChoiceCtrl::CallImplEventListeners(VclEventId 
nEvent, void* pData)
 }
 css::uno::Reference< XAccessible > SvtIconChoiceCtrl::CreateAccessible()
 {
-    css::uno::Reference< XAccessible > xAccParent = GetAccessibleParent();
-    if ( xAccParent.is() )
-        return new AccessibleIconChoiceCtrl(*this, xAccParent);
-
-    return nullptr;
+    return new AccessibleIconChoiceCtrl(*this);
 }
 
 struct VerticalTabPageData

Reply via email to