editeng/source/accessibility/AccessibleEditableTextPara.cxx |   20 -
 include/editeng/AccessibleEditableTextPara.hxx              |    7 
 offapi/UnoApi_offapi.mk                                     |    2 
 offapi/com/sun/star/drawing/AccessibleShape.idl             |    3 
 offapi/com/sun/star/text/AccessibleParagraphView.idl        |  164 ------------
 offapi/com/sun/star/text/AccessibleTextGraphicObject.idl    |   90 ------
 sw/source/core/access/accgraphic.cxx                        |    2 
 sw/source/core/access/accheaderfooter.cxx                   |    3 
 sw/source/core/access/accpara.cxx                           |    3 
 9 files changed, 5 insertions(+), 289 deletions(-)

New commits:
commit a7233f6e5f42b466f818db31e0a54e38011e3163
Author:     Michael Weghorn <[email protected]>
AuthorDate: Tue Jun 24 10:26:39 2025 +0200
Commit:     Michael Weghorn <[email protected]>
CommitDate: Wed Jun 25 07:39:45 2025 +0200

    sw a11y: Don't declare suport for non-existing services
    
    There are no "com.sun.star.text.AccessibleFooterView"
    and "com.sun.star.text.AccessibleHeaderView" services
    defined anywhere, so don't declare support for them
    in SwAccessibleHeaderFooter::getSupportedServiceNames.
    
    Change-Id: Id7652f75ef7ce824d52c99ed595da37b89a0c152
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186878
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/sw/source/core/access/accheaderfooter.cxx 
b/sw/source/core/access/accheaderfooter.cxx
index 52bd73a59474..9d185ec4cd6a 100644
--- a/sw/source/core/access/accheaderfooter.cxx
+++ b/sw/source/core/access/accheaderfooter.cxx
@@ -80,8 +80,7 @@ OUString SAL_CALL 
SwAccessibleHeaderFooter::getImplementationName()
 
 Sequence< OUString > SAL_CALL 
SwAccessibleHeaderFooter::getSupportedServiceNames()
 {
-    return { (AccessibleRole::HEADER == 
GetRole())?u"com.sun.star.text.AccessibleHeaderView"_ustr:u"com.sun.star.text.AccessibleFooterView"_ustr,
-             sAccessibleServiceName };
+    return { sAccessibleServiceName };
 }
 
 sal_Int32 SAL_CALL SwAccessibleHeaderFooter::getBackground()
commit 8dbd25d58bd259748b4d3c9c572c694e155c8c8b
Author:     Michael Weghorn <[email protected]>
AuthorDate: Tue Jun 24 10:23:06 2025 +0200
Commit:     Michael Weghorn <[email protected]>
CommitDate: Wed Jun 25 07:39:39 2025 +0200

    [API CHANGE]: a11y: Drop com.sun.star.text.AccessibleTextGraphicObject
    
    Drop the unpublished service
    "com.sun.star.text.AccessibleTextGraphicObject"
    because it's unused. (The IDL file only documents some
    internal implementation details of the a11y class
    implementing the service.)
    
    This is one step towards dropping the XServiceInfo
    implementation from a11y classes, which will also help
    avoid linker issues seen on Windows related to multiple
    classes subclassing
    cppu::ImplInheritanceHelper<class 
comphelper::OAccessibleComponentHelper,class com::sun::star::lang::XServiceInfo>
    seen with upcoming commit
    
        Change-Id: Ib56a9ddb1c36356943c2dfd7a5705351ee43e9d9
        Author: Michael Weghorn <[email protected]>
        Date:   Mon May 26 12:24:52 2025 +0200
    
            vcl a11y: Let OAccessibleComponentHelper implement XAccessible
    
    (Gerrit change [1], Windows CI log: [2]).
    
    A search in Google and on Ask [3] didn't give
    any results that would suggest this unpublished service
    could be relevant for third party code.
    (Instances of the service couldn't be created by external
    code anyway.)
    
    [1] https://gerrit.libreoffice.org/c/core/+/185849/6
    [2] https://ci.libreoffice.org/job/gerrit_windows/200107/console
    [3] https://ask.libreoffice.org/
    
    Change-Id: I8446acfda2bb7a51c464c2bedf7bab2628cdbadc
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186877
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk
index bb7aa1f752a2..b381d2be328f 100644
--- a/offapi/UnoApi_offapi.mk
+++ b/offapi/UnoApi_offapi.mk
@@ -1301,7 +1301,6 @@ $(eval $(call 
gb_UnoApi_add_idlfiles_noheader,offapi,com/sun/star/task,\
        Job \
 ))
 $(eval $(call gb_UnoApi_add_idlfiles_noheader,offapi,com/sun/star/text,\
-       AccessibleTextGraphicObject \
        AutoTextEntry \
        AutoTextGroup \
        BaseFrame \
diff --git a/offapi/com/sun/star/text/AccessibleTextGraphicObject.idl 
b/offapi/com/sun/star/text/AccessibleTextGraphicObject.idl
deleted file mode 100644
index e259d8331d1a..000000000000
--- a/offapi/com/sun/star/text/AccessibleTextGraphicObject.idl
+++ /dev/null
@@ -1,90 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-
-
-module com {  module sun {  module star {  module text {
-
-
-/** The accessible view of graphics.
-
-     @since OOo 1.1.2
- */
-service AccessibleTextGraphicObject
-{
-    /** This interface comprises the basic accessibility of text graphics.
-
-        <ul>
-            <li>The parent returned by
-                
::com::sun::star::accessibility::XAccessibleContext::getAccessibleParent()
-                is the accessible view of a paragraph if the graphic is bound 
as
-                character, and the accessible view of the document (or of a
-                page in the page preview) in any other case.
-            <li>There are no children returned by
-                
::com::sun::star::accessibility::XAccessibleContext::getAccessibleChild().
-            <li>The role is
-                ::com::sun::star::accessibility::AccessibleRole::GRAPHIC
-            <li>The name is the one assigned to the graphic in the text
-                document. This means that it is not internationalized.
-            <li>The description is the one assigned to the graphic in the text
-                document. This means that it is not internationalized. If no
-                description has been set, the description equals the name.
-            <li>There are no relations.
-            <li>The following states might be contained in the state set
-                returned by
-                
::com::sun::star::accessibility::XAccessibleContext::getAccessibleStateSet():
-                <ul>
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::DEFUNC
-                        (indicates that
-                        the document window has been closed or the graphic
-                        is not existing any longer)
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::EDITABLE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::ENABLED
-                        (always contained)
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::OPAQUE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::SELECTABLE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::SELECTED
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::FOCUSABLE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::FOCUSED
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::SHOWING
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::VISIBLE
-                </ul>
-            <li>The locale is the one the text document itself.
-        </ul>
-
-     */
-    interface ::com::sun::star::accessibility::XAccessibleContext;
-
-    /** This interface describes the graphical representation of a
-          graphic.
-     */
-    interface ::com::sun::star::accessibility::XAccessibleComponent;
-
-    /** This interface gives access to the image size and its description.
-     */
-    interface ::com::sun::star::accessibility::XAccessibleImage;
-
-    /** This is the interface for listeners */
-    interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
-};
-
-
-}; }; }; };
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/access/accgraphic.cxx 
b/sw/source/core/access/accgraphic.cxx
index 393ad572c906..101f11221297 100644
--- a/sw/source/core/access/accgraphic.cxx
+++ b/sw/source/core/access/accgraphic.cxx
@@ -46,7 +46,7 @@ OUString SAL_CALL SwAccessibleGraphic::getImplementationName()
 
 Sequence< OUString > SAL_CALL SwAccessibleGraphic::getSupportedServiceNames()
 {
-    return { u"com.sun.star.text.AccessibleTextGraphicObject"_ustr, 
sAccessibleServiceName };
+    return { sAccessibleServiceName };
 }
 
 //  Return this object's role.
commit 55f2e804a119046ef14d640523dd490c80efed6a
Author:     Michael Weghorn <[email protected]>
AuthorDate: Tue Jun 24 10:14:11 2025 +0200
Commit:     Michael Weghorn <[email protected]>
CommitDate: Wed Jun 25 07:39:32 2025 +0200

    [API CHANGE]: a11y: Drop com.sun.star.text.AccessibleParagraphView
    
    Drop the unpublished service
    "com.sun.star.text.AccessibleParagraphView"
    because it's unused. (The IDL file only documents some
    internal implementation details of the a11y classes
    implementing the service. It also isn't fully up to
    date, e.g. the description of the accessible name.)
    
    For AccessibleEditableTextPara, also no longer implement
    the XServiceInfo interface, as the now dropped service was the
    only one that was supported.
    
    This is one step towards dropping the XServiceInfo
    implementation from a11y classes, which will also help
    avoid linker issues seen on Windows related to multiple
    classes subclassing
    cppu::ImplInheritanceHelper<class 
comphelper::OAccessibleComponentHelper,class com::sun::star::lang::XServiceInfo>
    seen with upcoming commit
    
        Change-Id: Ib56a9ddb1c36356943c2dfd7a5705351ee43e9d9
        Author: Michael Weghorn <[email protected]>
        Date:   Mon May 26 12:24:52 2025 +0200
    
            vcl a11y: Let OAccessibleComponentHelper implement XAccessible
    
    (Gerrit change [1], Windows CI log: [2]).
    
    A search in Google and on Ask [3] didn't give
    any results that would suggest this unpublished service
    could be relevant for third party code.
    (Instances of the service couldn't be created by external
    code anyway.)
    
    [1] https://gerrit.libreoffice.org/c/core/+/185849/6
    [2] https://ci.libreoffice.org/job/gerrit_windows/200107/console
    [3] https://ask.libreoffice.org/
    
    Change-Id: Iee961e76ff7af1dab46d26cd844763970adc98c4
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186876
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/editeng/source/accessibility/AccessibleEditableTextPara.cxx 
b/editeng/source/accessibility/AccessibleEditableTextPara.cxx
index fb9c766e06b9..71d927e06782 100644
--- a/editeng/source/accessibility/AccessibleEditableTextPara.cxx
+++ b/editeng/source/accessibility/AccessibleEditableTextPara.cxx
@@ -2426,26 +2426,6 @@ sal_Int32 SAL_CALL 
AccessibleEditableTextPara::getNumberOfLineWithCaret(  )
     return nRes;
 }
 
-
-// XServiceInfo
-OUString SAL_CALL AccessibleEditableTextPara::getImplementationName()
-{
-
-    return u"AccessibleEditableTextPara"_ustr;
-}
-
-sal_Bool SAL_CALL AccessibleEditableTextPara::supportsService (const OUString& 
sServiceName)
-{
-
-    return cppu::supportsService(this, sServiceName);
-}
-
-uno::Sequence< OUString> SAL_CALL 
AccessibleEditableTextPara::getSupportedServiceNames()
-{
-    // #105185# Using correct service now
-    return { u"com.sun.star.text.AccessibleParagraphView"_ustr };
-}
-
 }  // end of namespace accessibility
 
 
diff --git a/include/editeng/AccessibleEditableTextPara.hxx 
b/include/editeng/AccessibleEditableTextPara.hxx
index 887acf43eb77..3fa129df8385 100644
--- a/include/editeng/AccessibleEditableTextPara.hxx
+++ b/include/editeng/AccessibleEditableTextPara.hxx
@@ -58,7 +58,7 @@ class UNLESS_MERGELIBS(EDITENG_DLLPUBLIC) 
AccessibleEditableTextPara final
           comphelper::OAccessibleComponentHelper, 
css::accessibility::XAccessible,
           css::accessibility::XAccessibleEditableText,
           css::accessibility::XAccessibleTextAttributes, 
css::accessibility::XAccessibleHypertext,
-          css::accessibility::XAccessibleMultiLineText, 
css::lang::XServiceInfo>,
+          css::accessibility::XAccessibleMultiLineText>,
       private ::comphelper::OCommonAccessibleText
 {
 
@@ -149,11 +149,6 @@ public:
     virtual css::accessibility::TextSegment SAL_CALL getTextAtLineWithCaret(  
) override;
     virtual ::sal_Int32 SAL_CALL getNumberOfLineWithCaret(  ) override;
 
-    // XServiceInfo
-    virtual OUString SAL_CALL getImplementationName() override;
-    virtual sal_Bool SAL_CALL supportsService (const OUString& sServiceName) 
override;
-    virtual css::uno::Sequence< OUString> SAL_CALL getSupportedServiceNames() 
override;
-
     /** Set the current index in the accessibility parent
 
         @attention This method does not lock the SolarMutex,
diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk
index 844f9c69e058..bb7aa1f752a2 100644
--- a/offapi/UnoApi_offapi.mk
+++ b/offapi/UnoApi_offapi.mk
@@ -1301,7 +1301,6 @@ $(eval $(call 
gb_UnoApi_add_idlfiles_noheader,offapi,com/sun/star/task,\
        Job \
 ))
 $(eval $(call gb_UnoApi_add_idlfiles_noheader,offapi,com/sun/star/text,\
-       AccessibleParagraphView \
        AccessibleTextGraphicObject \
        AutoTextEntry \
        AutoTextGroup \
diff --git a/offapi/com/sun/star/drawing/AccessibleShape.idl 
b/offapi/com/sun/star/drawing/AccessibleShape.idl
index f1d6d5c9ed16..5b3b61aec2de 100644
--- a/offapi/com/sun/star/drawing/AccessibleShape.idl
+++ b/offapi/com/sun/star/drawing/AccessibleShape.idl
@@ -72,8 +72,7 @@ service AccessibleShape
             shapes or accessible text paragraphs.  Only group shapes, 3D scene
             shapes, and OLE shapes may contain other shapes as children.
             Some of the shapes may have text paragraphs as (additional)
-            children.  See ::com::sun::star::text::AccessibleParagraphView for
-            details of how this text is represented.</li>
+            children.</li>
         <li>Parent: The parent is either the document view as represented by
             AccessibleDrawDocumentView or a group shape, 3D
             scene shape, or OLE shape.</li>
diff --git a/offapi/com/sun/star/text/AccessibleParagraphView.idl 
b/offapi/com/sun/star/text/AccessibleParagraphView.idl
deleted file mode 100644
index 108faedd0fd2..000000000000
--- a/offapi/com/sun/star/text/AccessibleParagraphView.idl
+++ /dev/null
@@ -1,164 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-
-module com {  module sun {  module star {  module text {
-
-
-/** The accessible view of a paragraph fragment.
-
-
-     @since OOo 1.1.2
- */
-service AccessibleParagraphView
-{
-    /** This interface gives access to a paragraph fragment that is at least
-          partially visible on the screen. A paragraph fragment is the portion
-        of a paragraph that is displayed on a single page or a in a single
-        column.
-
-        <ul>
-            <li>The parent returned by
-                
::com::sun::star::accessibility::XAccessibleContext::getAccessibleParent()
-                is the accessible view of a text document (in this case the
-                paragraph is contained in a page body) or the accessible
-                view of a header, footer, footnote, endnote, table cell,
-                text frame, page or shape.</li>
-            <li>The children returned by
-                
::com::sun::star::accessibility::XAccessibleContext::getAccessibleChild()
-                are the graphics, text boxes and OLE objects that are bound
-                <em>as</em> character within the paragraph. Graphics, text
-                boxes and OLE objects that are bound to the paragraph or
-                <em>to</em> a character within the paragraph are not
-                children of the paragraph fragment but of the document view
-                itself.</li>
-            <li>The role is either
-                ::com::sun::star::accessibility::AccessibleRole::PARAGRAPH,
-                ::com::sun::star::accessibility::AccessibleRole::BLOCK_QUOTE or
-                ::com::sun::star::accessibility::AccessibleRole::HEADING.
-                The latter is returned
-                if the paragraph's style is contained in the chapter
-                numbering of a text document.
-            <li>The name is "paragraph" or "heading" (or the equivalent term
-                in application's language) with a number appended.
-            <li>The description contains the term "paragraph" (or the 
equivalent
-                term in application's language) and the first sentence of
-                the paragraph.
-            <li>There are no relations.
-            <li>The following states are supported by the
-                accessible state bitset returned by
-                
::com::sun::star::accessibility::XAccessibleContext::getAccessibleStateSet().
-                <ul>
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::DEFUNC
-                        (indicates that
-                        the document window has been closed or the paragraph
-                        fragment is not existing any longer).
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::EDITABLE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::ENABLED
-                        (always contained)
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::MULTI_LINE
-                        (always contained)
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::MULTI_SELECTABLE
-                        (always contained)
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::OPAQUE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::SHOWING
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::VISIBLE
-                    
<li>::com::sun::star::accessibility::AccessibleStateType::FOCUSED
-                </ul>
-            <li>Depending of the application's region setting, the locale is
-                the western, Asian or complex language of the paragraph.
-        </ul>
-
-     */
-    interface ::com::sun::star::accessibility::XAccessibleContext;
-
-    /** This interface describes the graphical representation of a paragraph
-          fragment.
-     */
-    interface ::com::sun::star::accessibility::XAccessibleComponent;
-
-    /** This interface gives access to a paragraph fragment's text. The text
-          contains the paragraph's editable text as well as generated text,
-        like chapter numbers, hyphens or fields. Characters of generated
-        text contribute to the text's character indexing. However, it is not
-        possible to set the caret or start a selection within generated text.
-        <p>For text frames, graphics, etc. that are bound as character some
-        text is generated that contains the objects description.
-        <p>The attributes (or properties) returned by
-        
::com::sun::star::accessibility::XAccessibleText::getCharacterAttributes()
-        are a sub set of the properties described by the service
-        ::com::sun::star::style::CharacterProperties. For
-        properties that have Asian and complex counterparts, the value that
-        is visible is returned. This can be in fact the western, Asian or
-        complex value. It's not possible to change the value of any property
-        by using
-        
::com::sun::star::accessibility::XAccessibleEditableText::setAttributes().
-        <p><em>TODO: If there is a demand, some attributes might be added that
-        tells whether the character at a certain index is editable or 
generated.
-        </em>
-
-     */
-    [optional] interface 
::com::sun::star::accessibility::XAccessibleEditableText;
-
-    /** This interface is a subset of
-        ::com::sun::star::accessibility::XAccessibleEditableText
-        and gives access to a paragraph
-        fragment's text in a read-only mode.  The text contains the
-        paragraph's text (changeable as well as generated text, like chapter
-        numbers, hyphens or fields). Characters of generated text contribute
-        to the text's character indexing.
-        <p>For text frames, graphics, etc. that are bound as character
-        some text is generated that contains the objects description.
-        <p>The attributes (or properties) returned by
-        
::com::sun::star::accessibility::XAccessibleText::getCharacterAttributes()
-        are a sub set of the properties described by the service
-        ::com::sun::star::style::CharacterProperties. For
-        properties that have Asian and complex counterparts, the value that
-        is visible is returned. This can be in fact the western, Asian or
-        complex value.
-        <p><em>TODO: If there is a demand, some attributes might be added
-        that tells whether the character at a certain index is changeable or
-        generated.
-        </em>
-     */
-    interface ::com::sun::star::accessibility::XAccessibleText;
-
-    /** This interface is for selecting the paragraph's children. Multi
-        selection is supported only for children that are multi selectable
-        in the GUI, too.
-    */
-    [optional] interface ::com::sun::star::accessibility::XAccessibleSelection;
-
-    /** This is the interface for listeners.
-    */
-    interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
-
-        /** This interface gives access to the default attributes of a 
paragraph
-            and to the run attributes of a certain character in a paragraph
-
-            @since OOo 2.0.4
-        */
-        [optional] interface 
::com::sun::star::accessibility::XAccessibleTextAttributes;
-
-};
-
-
-}; }; }; };
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/core/access/accpara.cxx 
b/sw/source/core/access/accpara.cxx
index f4e40ae870ad..fa62e4f46e60 100644
--- a/sw/source/core/access/accpara.cxx
+++ b/sw/source/core/access/accpara.cxx
@@ -106,7 +106,6 @@ namespace com::sun::star::text {
     class XText;
 }
 
-constexpr OUString sServiceName = 
u"com.sun.star.text.AccessibleParagraphView"_ustr;
 constexpr OUStringLiteral sImplementationName = 
u"com.sun.star.comp.Writer.SwAccessibleParagraphView";
 
 const SwTextFrame* SwAccessibleParagraph::GetTextFrame() const
@@ -794,7 +793,7 @@ OUString SAL_CALL 
SwAccessibleParagraph::getImplementationName()
 
 uno::Sequence< OUString > SAL_CALL 
SwAccessibleParagraph::getSupportedServiceNames()
 {
-    return { sServiceName, sAccessibleServiceName };
+    return { sAccessibleServiceName };
 }
 
 static uno::Sequence< OUString > const & getAttributeNames()

Reply via email to