office-gobmx/vcl/qt5
Michael Weghorn c64b823b74 tdf#155447 qt a11y: Report accessible ID
For Qt >= 6.8, report the accessible ID provided by
`XAccessibleContext2::getAccessibleId` when
`QtAccessibleWidget::text` gets called with param
`QAccessible::Identifier`, as introduced in
qtbase commit [1]:

    commit 9ec1de2528b871099d416d15592fcc5ef9242a64
    Author: Jens Trillmann <jens.trillmann@governikus.de>
    Date:   Wed Mar 13 14:00:38 2024 +0100

        Add Identifier role to QAccessible and use it in OS interfaces

        * Unify the default identifier creation for QAccessibleInterface on
          all platforms to be the same as the previous identifier on Linux.
          This may change some identifiers on Windows.

        [ChangeLog][QAccessible][QAccessibleInterface] Add possibility to
        add unique identifier to QAccessibleInterface to give a11y elements
        consistent identifiers.

        Task-number: QTBUG-123361
        Change-Id: I8c42956a4c497e71909d71dcb27bc87433937b69
        Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>

`VCLXAccessibleComponent::getAccessibleId` returns the ID
of the corresponding `vcl::Window` which equals to the GtkBuilder ID
set in the .ui file, e.g. "SpellingDialog" for the spelling dialog
(see `cui/uiconfig/ui/spellingdialog.ui`).

This could be used for reliable identification by ATs, e.g.
to identify the spelling dialog and specific widgets in it
(see tdf#155447) or for automated tests.

[1] https://code.qt.io/cgit/qt/qtbase.git/commit/?id=9ec1de2528b871099d416d15592fcc5ef9242a64

Change-Id: I2281d15c38a229410469c29a14fdc4221aeb3e1e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170583
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-17 06:25:06 +02:00
..
QtAccessibleEventListener.cxx
QtAccessibleRegistry.cxx
QtAccessibleWidget.cxx
QtBitmap.cxx
QtClipboard.cxx
QtData.cxx
QtDragAndDrop.cxx
QtFilePicker.cxx
QtFont.cxx
QtFontFace.cxx
QtFrame.cxx
QtGraphics.cxx
QtGraphics_Controls.cxx
QtGraphics_GDI.cxx
QtGraphics_Text.cxx
QtInstance.cxx
QtInstance_Print.cxx
QtInstanceContainer.cxx
QtInstanceDialog.cxx
QtInstanceMessageDialog.cxx
QtInstanceWidget.cxx
QtInstanceWindow.cxx
QtMainWindow.cxx
QtMenu.cxx
QtObject.cxx
QtOpenGLContext.cxx
QtPainter.cxx
QtPrinter.cxx
QtSvpGraphics.cxx
QtSvpSurface.cxx
QtSvpVirtualDevice.hxx
QtSystem.cxx
QtTimer.cxx
QtTools.cxx
QtTransferable.cxx
QtVirtualDevice.cxx
QtWidget.cxx
QtX11Support.cxx
QtXAccessible.cxx