accessibility/inc/extended/AccessibleIconView.hxx    |    2 
 accessibility/inc/extended/accessiblelistbox.hxx     |    2 
 accessibility/source/extended/AccessibleIconView.cxx |    3 
 accessibility/source/extended/accessiblelistbox.cxx  |    5 -
 sw/source/uibase/docvw/SidebarWinAcc.cxx             |   84 +++++++------------
 sw/source/uibase/docvw/SidebarWinAcc.hxx             |   19 ++++
 6 files changed, 58 insertions(+), 57 deletions(-)

New commits:
commit e9a6ed092df2a0bd761b2f459fc2179682666c90
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Dec 12 15:32:12 2024 +0100
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Thu Dec 12 23:01:47 2024 +0100

    sw a11y: Move SidebarWinAccessibleContext declaration to header
    
    This is in preparation of reworking the
    SidebarWinAccessible logic in upcoming commits.
    
    Change-Id: Ia1c9bf6a62d1cefb6147f82891361b0ced251263
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178367
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/sw/source/uibase/docvw/SidebarWinAcc.cxx 
b/sw/source/uibase/docvw/SidebarWinAcc.cxx
index 3b2b4c758e93..d51d6848b429 100644
--- a/sw/source/uibase/docvw/SidebarWinAcc.cxx
+++ b/sw/source/uibase/docvw/SidebarWinAcc.cxx
@@ -22,73 +22,57 @@
 
 #include <viewsh.hxx>
 #include <accmap.hxx>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
 #include <vcl/svapp.hxx>
 
 #include <com/sun/star/accessibility/AccessibleRole.hpp>
 
 namespace sw::sidebarwindows {
 
-namespace {
-
-// declaration and implementation of accessible context for 
<SidebarWinAccessible> instance
-class SidebarWinAccessibleContext : public VCLXAccessibleComponent
+// implementation of accessible context for <SidebarWinAccessible> instance
+SidebarWinAccessibleContext::SidebarWinAccessibleContext(
+    sw::annotation::SwAnnotationWin& rSidebarWin, SwViewShell& rViewShell,
+    const SwFrame* pAnchorFrame)
+    : 
VCLXAccessibleComponent(dynamic_cast<VCLXWindow*>(rSidebarWin.CreateAccessible().get()))
+    , mrViewShell(rViewShell)
+    , mpAnchorFrame(pAnchorFrame)
 {
-    public:
-        explicit SidebarWinAccessibleContext( sw::annotation::SwAnnotationWin& 
rSidebarWin,
-                                              SwViewShell& rViewShell,
-                                              const SwFrame* pAnchorFrame )
-            : VCLXAccessibleComponent( 
dynamic_cast<VCLXWindow*>(rSidebarWin.CreateAccessible().get()) )
-            , mrViewShell( rViewShell )
-            , mpAnchorFrame( pAnchorFrame )
-        {
-            rSidebarWin.SetAccessibleRole( 
css::accessibility::AccessibleRole::COMMENT );
-        }
-
-        void ChangeAnchor( const SwFrame* pAnchorFrame )
-        {
-            SolarMutexGuard aGuard;
-
-            mpAnchorFrame = pAnchorFrame;
-        }
+    rSidebarWin.SetAccessibleRole(css::accessibility::AccessibleRole::COMMENT);
+}
 
-        virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
-            getAccessibleParent() override
-        {
-            SolarMutexGuard aGuard;
+void SidebarWinAccessibleContext::ChangeAnchor(const SwFrame* pAnchorFrame)
+{
+    SolarMutexGuard aGuard;
 
-            css::uno::Reference< css::accessibility::XAccessible > xAccParent;
+    mpAnchorFrame = pAnchorFrame;
+}
 
-            if ( mpAnchorFrame &&
-                 mrViewShell.GetAccessibleMap() )
-            {
-                xAccParent = mrViewShell.GetAccessibleMap()->GetContext( 
mpAnchorFrame, false );
-            }
+css::uno::Reference<css::accessibility::XAccessible>
+SidebarWinAccessibleContext::getAccessibleParent()
+{
+    SolarMutexGuard aGuard;
 
-            return xAccParent;
-        }
+    css::uno::Reference<css::accessibility::XAccessible> xAccParent;
 
-        virtual sal_Int64 SAL_CALL getAccessibleIndexInParent() override
-        {
-            SolarMutexGuard aGuard;
+    if (mpAnchorFrame && mrViewShell.GetAccessibleMap())
+    {
+        xAccParent = mrViewShell.GetAccessibleMap()->GetContext(mpAnchorFrame, 
false);
+    }
 
-            sal_Int64 nIndex( -1 );
+    return xAccParent;
+}
 
-            if ( mpAnchorFrame && GetWindow() &&
-                 mrViewShell.GetAccessibleMap() )
-            {
-                nIndex = mrViewShell.GetAccessibleMap()->GetChildIndex( 
*mpAnchorFrame,
-                                                                        
*GetWindow() );
-            }
+sal_Int64 SAL_CALL SidebarWinAccessibleContext::getAccessibleIndexInParent()
+{
+    SolarMutexGuard aGuard;
 
-            return nIndex;
-        }
+    sal_Int64 nIndex(-1);
 
-    private:
-        SwViewShell& mrViewShell;
-        const SwFrame* mpAnchorFrame;
-};
+    if (mpAnchorFrame && GetWindow() && mrViewShell.GetAccessibleMap())
+    {
+        nIndex = mrViewShell.GetAccessibleMap()->GetChildIndex(*mpAnchorFrame, 
*GetWindow());
+    }
 
+    return nIndex;
 }
 
 // implementation of accessible for <SwAnnotationWin> instance
diff --git a/sw/source/uibase/docvw/SidebarWinAcc.hxx 
b/sw/source/uibase/docvw/SidebarWinAcc.hxx
index 5453a42c9abf..b3c7dfa79700 100644
--- a/sw/source/uibase/docvw/SidebarWinAcc.hxx
+++ b/sw/source/uibase/docvw/SidebarWinAcc.hxx
@@ -19,6 +19,7 @@
 
 #pragma once
 
+#include <toolkit/awt/vclxaccessiblecomponent.hxx>
 #include <toolkit/awt/vclxwindow.hxx>
 
 class SwViewShell;
@@ -28,6 +29,24 @@ namespace sw::annotation { class SwAnnotationWin; }
 
 namespace sw::sidebarwindows {
 
+class SidebarWinAccessibleContext : public VCLXAccessibleComponent
+{
+public:
+    explicit SidebarWinAccessibleContext(sw::annotation::SwAnnotationWin& 
rSidebarWin,
+                                         SwViewShell& rViewShell, const 
SwFrame* pAnchorFrame);
+
+    void ChangeAnchor(const SwFrame* pAnchorFrame);
+
+    virtual css::uno::Reference<css::accessibility::XAccessible>
+        SAL_CALL getAccessibleParent() override;
+
+    virtual sal_Int64 SAL_CALL getAccessibleIndexInParent() override;
+
+private:
+    SwViewShell& mrViewShell;
+    const SwFrame* mpAnchorFrame;
+};
+
 class SidebarWinAccessible : public VCLXWindow
 {
     public:
commit 9486e163b6b563f5ddec6a56826e03ac16374d7b
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Dec 12 13:32:11 2024 +0100
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Thu Dec 12 23:01:34 2024 +0100

    a11y: Pass non-const ref to AccessibleListBox ctor
    
    ... and to the AccessibleIconView subclass one, too.
    
    This is in preparation of switching the base class VCLXAccessibleComponent
    ctor to taking a vcl::Window* instead of a VCLXWindow* in an
    upcoming commit.
    
    Change-Id: I10074f4c6716c2c7cb3b800c75bec8200ee6208c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178366
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    Tested-by: Jenkins

diff --git a/accessibility/inc/extended/AccessibleIconView.hxx 
b/accessibility/inc/extended/AccessibleIconView.hxx
index d5ab5eafb198..5accfbdfe4c5 100644
--- a/accessibility/inc/extended/AccessibleIconView.hxx
+++ b/accessibility/inc/extended/AccessibleIconView.hxx
@@ -18,7 +18,7 @@ namespace accessibility
 class AccessibleIconView final : public AccessibleListBox
 {
 public:
-    AccessibleIconView(SvTreeListBox const& _rListBox,
+    AccessibleIconView(SvTreeListBox& _rListBox,
                        const 
css::uno::Reference<css::accessibility::XAccessible>& _xParent);
 
 protected:
diff --git a/accessibility/inc/extended/accessiblelistbox.hxx 
b/accessibility/inc/extended/accessiblelistbox.hxx
index 7570bdbb5afe..61f4839ec481 100644
--- a/accessibility/inc/extended/accessiblelistbox.hxx
+++ b/accessibility/inc/extended/accessiblelistbox.hxx
@@ -68,7 +68,7 @@ namespace accessibility
             @param  _xParent
                 is our parent accessible object
         */
-        AccessibleListBox( SvTreeListBox const & _rListBox,
+        AccessibleListBox(SvTreeListBox& _rListBox,
                            const css::uno::Reference< 
css::accessibility::XAccessible >& _xParent );
 
         virtual ~AccessibleListBox() override;
diff --git a/accessibility/source/extended/AccessibleIconView.cxx 
b/accessibility/source/extended/AccessibleIconView.cxx
index 25b5f39cdafe..82235c29b526 100644
--- a/accessibility/source/extended/AccessibleIconView.cxx
+++ b/accessibility/source/extended/AccessibleIconView.cxx
@@ -19,8 +19,7 @@
 namespace accessibility
 {
 AccessibleIconView::AccessibleIconView(
-    SvTreeListBox const& _rListBox,
-    const css::uno::Reference<css::accessibility::XAccessible>& _xParent)
+    SvTreeListBox& _rListBox, const 
css::uno::Reference<css::accessibility::XAccessible>& _xParent)
     : AccessibleListBox(_rListBox, _xParent)
 {
 }
diff --git a/accessibility/source/extended/accessiblelistbox.cxx 
b/accessibility/source/extended/accessiblelistbox.cxx
index 8bdf8e84364a..5ad681d3b233 100644
--- a/accessibility/source/extended/accessiblelistbox.cxx
+++ b/accessibility/source/extended/accessiblelistbox.cxx
@@ -42,9 +42,8 @@ namespace accessibility
 
     // Ctor() and Dtor()
 
-    AccessibleListBox::AccessibleListBox( SvTreeListBox const & _rListBox, 
const Reference< XAccessible >& _xParent ) :
-
-        ImplInheritanceHelper( _rListBox.GetWindowPeer() ),
+    AccessibleListBox::AccessibleListBox(SvTreeListBox& _rListBox, const 
Reference< XAccessible >& _xParent)
+        : ImplInheritanceHelper( _rListBox.GetWindowPeer() ),
         m_xParent( _xParent )
     {
     }

Reply via email to