Age | Commit message (Collapse) | Author |
|
This renames the source and header files according to the
new class names without a "5" in them, as mentioned in
Change-Id: Idf422f82ca9dafbb70e9a64de9c8cfc4cc8c0909
(qt5: Remove "5" from class names in qt5 VCL plugin):
> Renaming the headers and source files will be done
> in a separate commit to make tracking git history easier.
Change-Id: If955e77c8ba508d0a2e01e3a9df1be6dc04c4e4e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122806
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Rename classes for the qt5 VCL plugin to no longer
contain the Qt version number "5" in them, e.g.
"Qt5Widget" -> "QtWidget".
Also, adapt some variable names and comments
accordingly.
The code will be used for an upcoming qt6 VCL plugin
as well, so a "Qt" prefix fits better than a "Qt5"
one.
Renaming the headers and source files will be done
in a separate commit to make tracking git history easier.
Change-Id: Idf422f82ca9dafbb70e9a64de9c8cfc4cc8c0909
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122805
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: I2abfbc69a422a56dc07afd76f0c7a8ead1891830
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122398
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Let 'Qt5AccessibleWidget' derive from 'QAccessibleTableCellInterface'
and implement the most important methods.
This is e.g. one of the steps needed to make Orca announce
the focused cell in Calc.
Since there's no specific XInterface for table cells
make use of the fact that a table cell's parent is a table
and query information from there, similar to how the following
commit does for winaccessibility:
commit 97a88e30e2e084ab860635ff4e0a03442d8a12af
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Wed Sep 8 14:37:53 2021 +0100
tdf#100086 tdf#124832 wina11y: Implement IAccessibleTableCell
Change-Id: I160bc04f3e4fcf7b77723540aba6945b8fdf36ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122395
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
They're unused and at first glance look like they might
be overriding the non-virtual methods
from 'QAccessibleInterface' with the same name that
do something more useful (calling 'interface_cast'
with the corresponding 'QAccessible::InterfaceType'
param).
Change-Id: I9258a5f9386f9a7d23bb35cfa33e55a169eb753e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122394
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
This makes use of the newly introduced
XAccessibleValue::getMinimumIncrement method,
s. Change-Id: Ie148a4e1cedbdbb5964f8565c81611d3480465cb,
"Add XAccessibleValue::getMinimumIncrement method".
With this in place, Accerciser now shows the correct
"Minimum increment" and the exact decimal value instead
of a rounded integer value for FormattedFields, s.
note in commit message for
Change-Id: I8af326c2d24c1801147a56ea2e2a886ab42ac634
"a11y: Expose FormattedField as spinbox" for more details.
Change-Id: Ia9d07552197357c81ae8ea3b62e2de07e82148bd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119597
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The accessibility interfaces are implemented by the object
implementing 'XAccessibilityContext' which is often the same
as the 'XAccessible' (in which case the corresponding
'XAccessible::getAccessibleContext()' call just returns a
reference to self), but it doesn't have to be that way.
From offapi/com/sun/star/modules.idl:
> /** UNO Accessibility API
>
> <p>This modules contains the basic interfaces of the UAA (UNO
> Accessibility API). Services that describe how these interfaces are
> implemented can be found in other modules. The services in this module
> describe only what every accessible object has to support.</p>
>
> <p>Making a class accessible starts by supporting the
> ::com::sun::star::accessibility::XAccessible interface.
> This interface's only method returns the actual accessibility object, an
> instance of ::com::sun::star::accessibility::XAccessibleContext.
> These two interfaces may be implemented by the same class in which case
> a call to ::com::sun::star::accessibility::XAccessible getAccessible()
> returns the same object that is
> called. Alternatively the implementation of the
> ::com::sun::star::accessibility::XAccessibleContext
> interface can be done by another class. This makes it possible to put
> all accessibility implementations into their own library which has only
> to be loaded when necessary.</p>
>
> <p>Note that all other interfaces have to be implemented by the same
> class that implements the
> ::com::sun::star::accessibility::XAccessibleContext
> interface. Note also that there is no way back from an accessibility
> object to the object from which it has been obtained by means of the
> UAA. If you need such a back-link you have to provide one on your
> own.</p>
> */
> module accessibility {};
This e.g. makes Accerciser show the correct values of the "URL" and
"Text" controls in Writer's "Insert" -> "Hyperlink" dialog.
Change-Id: I909b1fdf5e1e7ca50db5d5191ae69cb558a49dc8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119364
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
* handle case where out params are nullptr
* set fallback values for out params at the beginning
This e.g. makes Accerciser show '-1' for both,
startIndex and endIndex for the text interface of the
"URL" and "Text" controls in Writer's "Insert" -> "Hyperlink" dialog
along with no text. Making the actual text show up
if there is any will be handled in an upcoming commit.
Change-Id: Ie864f729ad06e28684bd426e4ba37b8a9d4d4634
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119363
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Use 'XAccessibleText::getCaretPosition', similar to
how 'Qt5AccessibleWidget::setCursorPosition' calls
'XAccessibleText::setCaretPosition'.
Change-Id: Ic9e4533d6a39de90fee7ec2e8e0bd3fc6a69bba0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119320
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
The Orca screen reader uses
'IAccessibleText::textAtOffset' e.g. in
order to retrieve the text of the current Writer
paragraph on cursor movement.
With this and various other WIP changes
to qt5 a11y on top which are required to make Orca
speak at all (well, at least sometimes...), Orca
now also speaks the text of paragraphs that contain
more than just a single character.
The single-character case was working because
Orca has a special handling for this; a comment
in the source code says:
"We do this because Gecko's implementation of getTextAtOffset
is broken if there is just one character in the string.")
This implementation is inspired by the
corresponding winaccessibility one,
see 'CAccTextBase::get_textAtOffset' in
winaccessibility/source/UAccCOM/AccTextBase.cxx.
Change-Id: I67775a03c6e4384f410e1e9d727d7a412ba4112e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119310
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
This addresses warnings like
warn:vcl.qt5:53343:53343:vcl/qt5/Qt5AccessibleWidget.cxx:639: Unmapped state: 17
seen e.g. when navigating to a Writer paragraph in Accerciser when
using LO with the kf5 VCL plugin.
With this in place, the "multi line" state is correctly shown in
Accerciser.
Change-Id: Ib38a7374d9c81f2d5c361809583f711f4eadccba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119295
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
This addresses warnings like
warn:vcl.qt5:151782:151782:vcl/qt5/Qt5AccessibleWidget.cxx:636: Unmapped state: 31
which I started seeing when running LO with kf5 VCL plugin and Orca
enabled after
commit ddbc111555607e62b94b74aacadd6a964b9fe4a5
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Mon Jul 19 17:13:04 2021 +0200
qt5 a11y: Set proper a11y states
had fixed handling of a11y states.
Change-Id: I00b8f2f75954fbd7d9e5f0807b51e5632d1a8035
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119248
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Skip attributes with empty string value in
'Qt5AccessibleWidget::attributes'.
Besides not being a useful value, I also
got a crash using Accerciser to navigate in Calc's
"Format Cells" dialog -> "Font Effects" -> "Text Decoration"
-> "Overlining" -> "Overlining".
'Qt5AccessibleWidget::attributes' had returned
"font-family:;font-size:0pt;font-weight:normal;"
and 'AtSpiAdaptor::getAttributes' (from the Qt library)
aborts, since it splits the "font-family:" part at the colon,
then expects two substrings: one for the attribute name, one
for the value - but there was no value set:
QString joined = interface->textInterface()->attributes(offset, &startOffset, &endOffset);
const QStringList attributes = joined.split (QLatin1Char(';'), Qt::SkipEmptyParts, Qt::CaseSensitive);
for (const QString &attr : attributes) {
QStringList items;
items = attr.split(QLatin1Char(':'), Qt::SkipEmptyParts, Qt::CaseSensitive);
-> AtSpiAttribute attribute = atspiTextAttribute(items[0], items[1]);
if (!attribute.isNull())
set[attribute.name] = attribute.value;
}
The IAccessible2 spec for the "background-color" text attribute [1]
doesn't specify any default value to be used.
Backtrace:
Thread 1 received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(rr) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007f4dcd0bd537 in __GI_abort () at abort.c:79
#2 0x00007f4dba7fd810 in qt_message_fatal(QtMsgType, QMessageLogContext const&, QString const&) (context=..., message=...) at global/qlogging.cpp:1914
#3 0x00007f4dba7f9d48 in QMessageLogger::fatal(char const*, ...) const (this=0x7ffc30a4a6b0, msg=0x7f4dbab9ebb0 "ASSERT failure in %s: \"%s\", file %s, line %d") at global/qlogging.cpp:893
#4 0x00007f4dba7f1484 in qt_assert_x(char const*, char const*, char const*, int) (where=0x7f4db778eb36 "QList<T>::operator[]", what=0x7f4db778eac8 "index out of range", file=0x7f4db778ea90 "../../../include/QtCore/../../src/corelib/tools/qlist.h", line=579)
at global/qglobal.cpp:3366
#5 0x00007f4db7736a65 in QList<QString>::operator[](int) (this=0x7ffc30a4a730, i=1) at ../../../include/QtCore/../../src/corelib/tools/qlist.h:579
#6 0x00007f4db773017e in AtSpiAdaptor::getAttributes(QAccessibleInterface*, int, bool) const (this=0x557748f27800, interface=0x7f4d8c07cc30, offset=9, includeDefaults=true) at atspiadaptor.cpp:2059
#7 0x00007f4db772cd74 in AtSpiAdaptor::textInterface(QAccessibleInterface*, QString const&, QDBusMessage const&, QDBusConnection const&) (this=0x557748f27800, interface=0x7f4d8c07cc30, function=..., message=..., connection=...) at atspiadaptor.cpp:1802
#8 0x00007f4db77274f8 in AtSpiAdaptor::handleMessage(QDBusMessage const&, QDBusConnection const&) (this=0x557748f27800, message=..., connection=...) at atspiadaptor.cpp:1286
#9 0x00007f4db7fe4d04 in QDBusConnectionPrivate::activateObject(QDBusConnectionPrivate::ObjectTreeNode&, QDBusMessage const&, int) (this=0x7f4d8c014b00, node=..., msg=..., pathStartPos=27) at qdbusintegrator.cpp:1458
#10 0x00007f4db7fe58ca in QDBusActivateObjectEvent::placeMetaCall(QObject*) (this=0x557753615310) at qdbusintegrator.cpp:1617
#11 0x00007f4dbaab3c66 in QObject::event(QEvent*) (this=0x557748f27800, e=0x557753615310) at kernel/qobject.cpp:1314
#12 0x00007f4db96be845 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=0x557747e30970, receiver=0x557748f27800, e=0x557753615310) at kernel/qapplication.cpp:3632
#13 0x00007f4db96bbcfb in QApplication::notify(QObject*, QEvent*) (this=0x557747f1d8b0, receiver=0x557748f27800, e=0x557753615310) at kernel/qapplication.cpp:2972
#14 0x00007f4dbaa70aba in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x557748f27800, event=0x557753615310) at kernel/qcoreapplication.cpp:1064
#15 0x00007f4dbaa71452 in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=0x557748f27800, event=0x557753615310) at kernel/qcoreapplication.cpp:1462
#16 0x00007f4dbaa7213a in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x557747eff460) at kernel/qcoreapplication.cpp:1821
#17 0x00007f4dbaa71acc in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1680
#18 0x00007f4dbaaff079 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x557748056a30) at kernel/qeventdispatcher_glib.cpp:277
#19 0x00007f4dbfe4ce6b in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007f4dbfe4d118 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007f4dbfe4d1cf in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007f4dbaaff7a2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x557748062a70, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#23 0x00007f4db76af8fc in QXcbGlibEventDispatcher::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x557748062a70, flags=...) at qxcbeventdispatcher.cpp:143
#24 0x00007f4db9255353 in Qt5Instance::DoYield(bool, bool) (this=0x557747f22580, bWait=4, bHandleAllCurrentEvents=2) at .../libreoffice/vcl/qt5/Qt5Instance.cxx:400
#25 0x00007f4db9255465 in Qt5Instance::AnyInput(VclInputFlags) (this=0xd87f0c9bbde3ed00, nType=(VclInputFlags::PAINT | VclInputFlags::TIMER | VclInputFlags::OTHER | VclInputFlags::APPEVENT | unknown: 0x7fc0))
at .../libreoffice/vcl/qt5/Qt5Instance.cxx:422
#26 0x00007f4dc594b64a in ImplYield(bool, bool) (i_bWait=true, i_bAllEvents=false) at .../libreoffice/vcl/source/app/svapp.cxx:465
#27 0x00007f4dc594be0b in Application::Yield() () at .../libreoffice/vcl/source/app/svapp.cxx:532
#28 0x00007f4dc594b357 in Application::Execute() () at .../libreoffice/vcl/source/app/svapp.cxx:444
#29 0x00007f4dcd2c4226 in desktop::Desktop::Main() (this=0x7ffc30a4c540) at .../libreoffice/desktop/source/app/app.cxx:1602
#30 0x00007f4dc5967cc6 in ImplSVMain() () at .../libreoffice/vcl/source/app/svmain.cxx:199
#31 0x00007f4dc5967de7 in SVMain() () at .../libreoffice/vcl/source/app/svmain.cxx:231
#32 0x00007f4dcd324e9f in soffice_main() () at .../libreoffice/desktop/source/app/sofficemain.cxx:98
#33 0x000055774613895d in sal_main () at .../libreoffice/desktop/source/app/main.c:49
#34 0x0000557746138943 in main (argc=2, argv=0x7ffc30a4c8b8) at .../libreoffice/desktop/source/app/main.c:47
[1] https://wiki.linuxfoundation.org/accessibility/iaccessible2/textattributes
Change-Id: I5e9d5121e69340ff728a87b4a6cb5c182d9ad11b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119247
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Behavior should be unchanged.
This is in preparation of changing handling for empty
values in an upcoming commit.
Change-Id: If913680ea544c24fea6e418fb27ccdcb396920cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119246
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Set the states actually set in the
'XAccessibleStateSet', rather than setting states
0 to n-1, with n being the number of states present
in the state set.
With this commit in place, Accerciser now e.g.
initially correctly shows the 'checked' attribute
for checkboxes only if they are actually checked.
(Better handling of updating states still needs
to be implemented separately.)
Change-Id: Idbc84f5754eae65cee471834c322b8ddfdb0bb29
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119223
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
This addresses
warn:vcl.qt5:75450:75450:vcl/qt5/Qt5AccessibleWidget.cxx:633: Unmapped state: 9
seen when running LO with kf5 VCL plugin and the Orca screen
reader enabled.
Change-Id: I05e7b0cbbdce63300288ab4d74afc0933c93ec9e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118847
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
to reduce the churn, we leave the existing constructor in place,
and add a clang plugin to detect when the value passed to the
existing constructor may contain transparency/alpha data.
i.e. we leave expressions like Color(0xffffff) alone, but
warn about any non-constant expression, and any expression
like Color(0xff000000)
Change-Id: Id2ce58e08882d9b7bd0b9f88eca97359dcdbcc8c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109362
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...with qt5-qtbase-devel-5.15.1-1.fc33.x86_64 on Fedora 33:
> ~/lo/core/vcl/qt5/Qt5AccessibleWidget.cxx: In function ‘QAccessible::Relation {anonymous}::lcl_matchUnoRelation(short int)’:
> ~/lo/core/vcl/qt5/Qt5AccessibleWidget.cxx:138:20: error: ‘constexpr QFlags<T>::QFlags(QFlags<T>::Zero) [with Enum = QAccessible::RelationFlag; QFlags<T>::Zero = int QFlags<QAccessible::RelationFlag>::Private::*]’ is deprecated: Use default constructor instead [-Werror=deprecated-declarations]
> 138 | return nullptr;
> | ^~~~~~~
> In file included from /usr/include/qt5/QtCore/qglobal.h:1304,
> from /usr/include/qt5/QtCore/qnamespace.h:43,
> from /usr/include/qt5/QtCore/qobjectdefs.h:48,
> from /usr/include/qt5/QtCore/qobject.h:46,
> from /usr/include/qt5/QtCore/QObject:1,
> from ~/lo/core/vcl/inc/qt5/Qt5AccessibleWidget.hxx:14,
> from ~/lo/core/vcl/qt5/Qt5AccessibleWidget.cxx:20:
> /usr/include/qt5/QtCore/qflags.h:123:80: note: declared here
> 123 | QT_DEPRECATED_X("Use default constructor instead") Q_DECL_CONSTEXPR inline QFlags(Zero) noexcept : i(0) {}
> | ^~~~~~
Change-Id: Ic0c113fe208764e8bc0b9c3fbf7358d6af4000ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103474
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
'QAccessibleCache::insert' from the Qt library has a
'Q_ASSERT' checking that the corresponding 'QObject' for
which the 'QAccessibleInterface' provides information
is actually the same as the object passed as a parameter:
QAccessible::Id QAccessibleCache::insert(QObject *object, QAccessibleInterface *iface) const
{
// ...
QObject *obj = iface->object();
-> Q_ASSERT(object == obj);
However, 'Qt5AccessibleWidget::object' so far was always returning
'nullptr', triggering this assert when using a Qt version
not built with 'QT_NO_DEBUG'.
To fix this, remember and return the object as needed.
Change-Id: I4015b4c37aa8a073b02465df580a7235884e6cf3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102196
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: Ie8fa026becb1899e466fb0e7dbb987290788aaf2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96207
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I05b02a2f8b4b9091c7de0f7e98409d5b608ed250
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94610
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Use new accessibility scroll type compatible with IAccessible2.
Change-Id: I0967d1c56425e1e860db34f4b9c17427e531fe02
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93636
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: Ibc7bffe3bb2bf67f85102c03f48e3b44d89c60cc
Reviewed-on: https://gerrit.libreoffice.org/84334
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I1ee81de7ef03447991e12dcf01aef7858408dc40
Reviewed-on: https://gerrit.libreoffice.org/77975
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: I0bd1d26f6fc4052b812fde33ebd1d63111426942
Reviewed-on: https://gerrit.libreoffice.org/76627
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Handle special values for offset in 'Qt5AccessibleWidget::attributes'
the same way that the base class's 'QAccessibleTextWidget::attributes'
does, s. [1].
In particular, an offset matching the text length can
be passed e.g. by "accerciser" or screen readers,
which previously resulted in an 'IndexOutOfBoundsException'
being thrown when the index was later checked in the
call to 'VCLXAccessibleStatusBarItem::getCharacterAttributes'.
See also 'IAccessibleText::attributes' documentation at [2] and
the page on special offset values referenced there [3].
[1] https://code.qt.io/cgit/qt/qtbase.git/tree/src/widgets/accessible/qaccessiblewidgets.cpp?h=5.12.4#n791
[2] https://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/interface_i_accessible_text.html#a29e5c8f69ec13c683ed6bca53333e6a5
[3] https://accessibility.linuxfoundation.org/a11yspecs/ia2/docs/html/_general_info.html#_specialOffsets
Change-Id: I623995aeb689b31c5b49fb3ace8e4dd4c18927d2
Reviewed-on: https://gerrit.libreoffice.org/73225
Tested-by: Jenkins
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
|
|
Kind of a regression from commit 4d382636b0b1 ("qt5: Add basic
a11y support"), which made it public for a single call.
Change-Id: I631a861a98388223770cfca2704c3ddee6a0a8a0
Reviewed-on: https://gerrit.libreoffice.org/71836
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: I6bdb9aa89a8a5181b096f47f90ab6fb5711e7447
Reviewed-on: https://gerrit.libreoffice.org/69541
Tested-by: Jenkins
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
|
|
The repro scenario is closing a slideshow with screen reader on.
Some object are already disposed by the time [full-screen] win with
presentation closes
Change-Id: I7e2ae7a5b694daaf7355ef93d87a998c9f2e345a
Reviewed-on: https://gerrit.libreoffice.org/65931
Tested-by: Jenkins
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
|
|
otherwise Desktop::Main will do it and soffice will crash w/ empty
error msg
Change-Id: I56768909227a6ff158ae353e1eff9b249d6ba9d4
Reviewed-on: https://gerrit.libreoffice.org/65357
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: I908bf6bb54ced0a43069b1ac1928f0655d2bbe9f
Reviewed-on: https://gerrit.libreoffice.org/62890
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I6d9ae80daa7cc6f14868691ac499b897271d683a
Reviewed-on: https://gerrit.libreoffice.org/62889
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: Ibe5b518f393cb0e15e578240549f6547f2c28dba
Reviewed-on: https://gerrit.libreoffice.org/62888
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: Ife5a5075fcfbfd83425c021b9f535c1f5e3e8d7e
Reviewed-on: https://gerrit.libreoffice.org/62740
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: I21106ac31484c4bf47363e3805315c5fb698e172
Reviewed-on: https://gerrit.libreoffice.org/62682
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I32713889f92f56bd1ec711116ac8232a6a462163
|
|
error: converting to ‘bool’ from ‘std::nullptr_t’ requires
direct-initialization
Change-Id: Id002e2bf0363ddde1a1172cf6364180dbcac64ee
|
|
Change-Id: I4e655a2b4c6a0057935ac5e47c93b16e763d4357
Reviewed-on: https://gerrit.libreoffice.org/62675
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: Ic632a2253afb960cda43f84905dd519e9052c0eb
Reviewed-on: https://gerrit.libreoffice.org/62668
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Only a few basic attributes for now
Change-Id: I1147e4feaf9eac3664142a678e918a65e9a7b2a3
Reviewed-on: https://gerrit.libreoffice.org/62633
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
This broke my Windows build with interesting error messages:
Qt5AccessibleWidget.cxx(772): error C2440: "=": "sal_Int32 *"
kann nicht in "int *" konvertiert werden
Qt5AccessibleWidget.cxx(772): note: Die Typen, auf die verwiesen
wird, sind nicht verknuepft; die Konvertierung erfordert einen
reinterpret_cast-Operator oder eine Typumwandlung im C- oder
Funktionsformat.
Same for line 774.
So actually return the selection parts depending on the provided
int pointers.
Change-Id: Iffbe4481883450b9dacefa867ba7035861d62cdf
Reviewed-on: https://gerrit.libreoffice.org/62635
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Needs to be part of Qt5AccessibleWidget
Change-Id: I3543cb3b5834c9967066733f0dbd73e974175892
Reviewed-on: https://gerrit.libreoffice.org/62515
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I184bad8a6915048d425f8baa56d2e5675d4b97d1
Reviewed-on: https://gerrit.libreoffice.org/62512
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
Tested-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
when called from the destructor it is no longer alive
Change-Id: Ia68272253f9c459b2647a0bd389e833fb0b519e3
Reviewed-on: https://gerrit.libreoffice.org/62228
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: Idb2fb2f880b4e848adc213a4e2cea33c5eb56f05
Reviewed-on: https://gerrit.libreoffice.org/61424
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
And while at it annotate Qt5Font fall-throughs.
Change-Id: I31a73407f3228f303236983df17c66bc88eef6c5
Reviewed-on: https://gerrit.libreoffice.org/61557
Tested-by: Jenkins
Tested-by: Rene Engelhard <rene@debian.org>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: Iee80b40d2c33a0464abfc285360e76774c644b32
Reviewed-on: https://gerrit.libreoffice.org/61372
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: Ia431650586ec26f5dc321cb162afa632ddb53ab3
Reviewed-on: https://gerrit.libreoffice.org/61361
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I85e310a4e2cf8e9f726d8d7c6ac8bbb399f0cd7c
|
|
Change-Id: I89693a01bd3e89f6d4000901c01accf88b453691
Reviewed-on: https://gerrit.libreoffice.org/61232
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|