include/editeng/AccessibleParaManager.hxx |    2 --
 include/vcl/window.hxx                    |    7 ++-----
 vcl/inc/window.h                          |    2 +-
 vcl/source/window/accessibility.cxx       |   10 +++++-----
 vcl/source/window/window.cxx              |    2 +-
 5 files changed, 9 insertions(+), 14 deletions(-)

New commits:
commit 853c6170c524524f9ab138ca96c56de9c5f3c8b4
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Aug 14 20:04:53 2025 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Fri Aug 15 06:48:45 2025 +0200

    editeng a11y: Drop unused forward-decl
    
    Change-Id: I95117a3dff01ad810cf59379a4afaddefe546035
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189636
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    Tested-by: Jenkins

diff --git a/include/editeng/AccessibleParaManager.hxx 
b/include/editeng/AccessibleParaManager.hxx
index 0587ba9923ef..cd5ef8a48984 100644
--- a/include/editeng/AccessibleParaManager.hxx
+++ b/include/editeng/AccessibleParaManager.hxx
@@ -32,8 +32,6 @@
 #include <editeng/AccessibleEditableTextPara.hxx>
 #include <editeng/editengdllapi.h>
 
-namespace com::sun::star::accessibility { class XAccessible; }
-
 class SvxEditSourceAdapter;
 
 namespace accessibility
commit 18673eb45c2f46c520f0dbbac53de09e969d43e5
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Aug 14 19:26:36 2025 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Fri Aug 15 06:48:39 2025 +0200

    vcl a11y: Return OAccessible in Window::GetAccessibleParent
    
    ... instead of a reference to the abstract XAccessible UNO
    interface.
    
    Change-Id: I067235fd7e915da52ba4ccc7202441da63cdf0bd
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189633
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    Tested-by: Jenkins

diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx
index 7b3ba5fc78e2..06b5a5478446 100644
--- a/include/vcl/window.hxx
+++ b/include/vcl/window.hxx
@@ -66,9 +66,6 @@ enum class VclEventId;
 enum class PointerStyle;
 
 namespace com::sun::star {
-    namespace accessibility {
-        class XAccessible;
-    }
     namespace awt {
         class XVclWindowPeer;
     }
@@ -1132,7 +1129,7 @@ public:
     sal_uInt16                          GetAccessibleChildWindowCount();
     vcl::Window*                        GetAccessibleChildWindow( sal_uInt16 n 
);
 
-    css::uno::Reference<css::accessibility::XAccessible> GetAccessibleParent() 
const;
+    rtl::Reference<comphelper::OAccessible> GetAccessibleParent() const;
     // Explicitly set an accessible parent (usually not needed)
     void SetAccessibleParent(const rtl::Reference<comphelper::OAccessible>& 
rpParent);
 
diff --git a/vcl/source/window/accessibility.cxx 
b/vcl/source/window/accessibility.cxx
index 9d4f29aa6e35..52ab05b313d0 100644
--- a/vcl/source/window/accessibility.cxx
+++ b/vcl/source/window/accessibility.cxx
@@ -257,7 +257,7 @@ void Window::SetAccessibleParent(const 
rtl::Reference<comphelper::OAccessible>&
     mpWindowImpl->mpAccessibleInfos->pAccessibleParent = rpParent;
 }
 
-css::uno::Reference<css::accessibility::XAccessible> 
Window::GetAccessibleParent() const
+rtl::Reference<comphelper::OAccessible> Window::GetAccessibleParent() const
 {
     if (!mpWindowImpl)
         return nullptr;
commit ed93e03aaea97dfa52ae71e044d3df93800342e0
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu Aug 14 19:11:51 2025 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Fri Aug 15 06:48:33 2025 +0200

    vcl a11y: Use OAccessible when explicitly setting Window a11y parent
    
    ... instead of the abstract XAccessible UNO interface.
    
    Change-Id: Ifc7a398c1ab78b254d349c35a339358b101a338f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189632
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx
index 9c3fc6f569d9..7b3ba5fc78e2 100644
--- a/include/vcl/window.hxx
+++ b/include/vcl/window.hxx
@@ -1134,7 +1134,7 @@ public:
 
     css::uno::Reference<css::accessibility::XAccessible> GetAccessibleParent() 
const;
     // Explicitly set an accessible parent (usually not needed)
-    void                                SetAccessibleParent(const 
css::uno::Reference<css::accessibility::XAccessible>& rxParent);
+    void SetAccessibleParent(const rtl::Reference<comphelper::OAccessible>& 
rpParent);
 
     void                                SetAccessibleRole( sal_uInt16 nRole );
     sal_uInt16                          GetAccessibleRole() const;
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index a442605ad701..1c92cbc58c0e 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -194,7 +194,7 @@ struct ImplAccessibleInfos
                         pAccessibleName;
     std::optional<OUString>
                         pAccessibleDescription;
-    css::uno::Reference<css::accessibility::XAccessible> xAccessibleParent;
+    rtl::Reference<comphelper::OAccessible> pAccessibleParent;
     VclPtr<vcl::Window> pLabeledByWindow;
     VclPtr<vcl::Window> pLabelForWindow;
 
diff --git a/vcl/source/window/accessibility.cxx 
b/vcl/source/window/accessibility.cxx
index 9735058785e5..9d4f29aa6e35 100644
--- a/vcl/source/window/accessibility.cxx
+++ b/vcl/source/window/accessibility.cxx
@@ -249,12 +249,12 @@ vcl::Window* Window::GetAccessibleChildWindow( sal_uInt16 
n )
     return pChild;
 }
 
-void Window::SetAccessibleParent(const 
css::uno::Reference<css::accessibility::XAccessible>& rxParent)
+void Window::SetAccessibleParent(const 
rtl::Reference<comphelper::OAccessible>& rpParent)
 {
     if (!mpWindowImpl->mpAccessibleInfos)
         mpWindowImpl->mpAccessibleInfos.reset(new ImplAccessibleInfos);
 
-    mpWindowImpl->mpAccessibleInfos->xAccessibleParent = rxParent;
+    mpWindowImpl->mpAccessibleInfos->pAccessibleParent = rpParent;
 }
 
 css::uno::Reference<css::accessibility::XAccessible> 
Window::GetAccessibleParent() const
@@ -262,8 +262,8 @@ css::uno::Reference<css::accessibility::XAccessible> 
Window::GetAccessibleParent
     if (!mpWindowImpl)
         return nullptr;
 
-    if (mpWindowImpl->mpAccessibleInfos && 
mpWindowImpl->mpAccessibleInfos->xAccessibleParent.is())
-        return mpWindowImpl->mpAccessibleInfos->xAccessibleParent;
+    if (mpWindowImpl->mpAccessibleInfos && 
mpWindowImpl->mpAccessibleInfos->pAccessibleParent.is())
+        return mpWindowImpl->mpAccessibleInfos->pAccessibleParent;
 
     if (vcl::Window* pAccessibleParentWin = GetAccessibleParentWindow())
         return pAccessibleParentWin->GetAccessible();
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index ec2aaa4ee657..420e78e1d46b 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -221,7 +221,7 @@ void Window::dispose()
     }
 
     if (mpWindowImpl->mpAccessibleInfos)
-        mpWindowImpl->mpAccessibleInfos->xAccessibleParent.clear();
+        mpWindowImpl->mpAccessibleInfos->pAccessibleParent.clear();
 
     ImplSVData* pSVData = ImplGetSVData();
 

Reply via email to