Commit Graph

41 Commits

Author SHA1 Message Date
Michael Weghorn f408944598 a11y atspi: Clean up logging a bit
Based on the discussion on logging style in the
Gerrit change for commit
5145d3899d
("a11y atspi: Support AT-SPI table cell interface"),
clean up the logging in AtSpiAdaptor a bit:

* convert uses of qCDebug to qCWarning where the
  log message contained "WARNING"/"warning"
  or it seems worth that severity.

* drop extra prefixes of "Qt AtSpiAdaptor:"
  in the log messages, since the logging
  category is already named "qt.accessibility.atspi"
  and only used here

* more consistently start log messages with
  uppercase letter and drop unnecessary extra spaces

The switch to qCWarning implies that these log
messages are output by default.

Change-Id: I1665a8ee8d64e4eab33a3b15906a7cb7357fd73c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-10-26 16:34:35 +02:00
Harald Sitter 75e8754875 a11y: support GetAccessibleId for at-spi
This introduces a new helper function accessibleIdForAccessible
(inspired by Windows' automationIdForAccessible) to synthesize an id out
of the objectNames of the accessible parent chain. The id is then
exposed via the GetAccessibleId D-Bus function for consumption in a11y
tools.

Change-Id: If72b86c5864c43f4ca842aa11423dd8aea0dde4a
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
2022-10-25 15:19:41 +02:00
Fushan Wen c9758d76c7 Send string to Atspi DBus interface on name/description changed
Orca only accepts string or list type for
object:property-change:accessible-name and
object:property-change:accessible-description events. This fixes
NameChanged and DescriptionChanged not being announced by Orca.

This also adds check for accessible interface and will ignore events
from invalid interfaces on name/description changed.

See also: https://gitlab.gnome.org/GNOME/orca/-/issues/255

Pick-to: 6.4 6.2
Change-Id: Iaaa50678e7223951e0f3af99c5e04aa7458e4d0d
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-10-10 08:23:20 +00:00
Marc Mutz df9d882d41 Port from container.count()/length() to size()
This is semantic patch using ClangTidyTransformator:

  auto QtContainerClass = expr(hasType(namedDecl(hasAnyName(<classes>)))).bind(o)
  makeRule(cxxMemberCallExpr(on(QtContainerClass),
                             callee(cxxMethodDecl(hasAnyName({"count", "length"),
                                                  parameterCountIs(0))))),
           changeTo(cat(access(o, cat("size"), "()"))),
           cat("use 'size()' instead of 'count()/length()'"))

a.k.a qt-port-to-std-compatible-api with config Scope: 'Container'.

<classes> are:

    // sequential:
    "QByteArray",
    "QList",
    "QQueue",
    "QStack",
    "QString",
    "QVarLengthArray",
    "QVector",
    // associative:
    "QHash",
    "QMultiHash",
    "QMap",
    "QMultiMap",
    "QSet",
    // Qt has no QMultiSet

Change-Id: Ibe8837be96e8d30d1846881ecd65180c1bc459af
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-10-04 07:40:08 +02:00
Fushan Wen c6b1c33814 Send string to Atspi DBus interface on value changed for comboboxes
Orca only accepts string or list type for
object:property-change:accessible-name events. This fixes
NameChanged not being announced by Orca.

Pick-to: 6.4 6.2
Change-Id: Ib30fed94aad70b98400deec5e31630b4f8c22e26
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2022-09-29 17:37:16 +00:00
Mate Barany cf396c2da9 QtGui: Use isEmpty() to check for empty string
This commit addresses a comment from the review of QTBUG-98434.

Use isEmpty() to check whether the string is empty or not.

Task-number: QTBUG-103100
Change-Id: Ia7c298bc4436d974b0369e178a370764c1dbe051
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2022-09-21 14:01:43 +02:00
Mate Barany ec19ced731 QtGui: Fix mismatches between string types and string literals
This commit addresses some comments from the review of QTBUG-98434.

Some strings were initialized with incorrect literal types - fix the
mismatches between the string types and string literals.

Task-number: QTBUG-103100
Change-Id: I5f9f8a2c1583c21711f7b9ff177917f20690b5a3
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-09-21 14:00:37 +02:00
Michael Weghorn ce16eb2679 a11y atspi: Forward table model change to AT-SPI
This adds handling for QAccessible::TableModelChanged
by forwarding the events to AT-SPI, s.a. the list of
AT-SPI events at [1].

[1] https://accessibility.linuxfoundation.org/a11yspecs/atspi/adoc/atspi-events.html

Change-Id: I0a2b64caf96126b4827a03886ce4a73f98429b7f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-09-10 02:43:30 +02:00
Michael Weghorn dad2797aee a11y atspi: Move comment to better place
Move the comment about setting the
ATSPI_STATE_MANAGES_DESCENDANTS state to the
place where the state is actually set.

Change-Id: Ia6956d36db86e935b4fab03b1892cf4e8a709c0f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-09-10 02:43:29 +02:00
Michael Weghorn 5462485a59 a11y atspi: Add null check in GetRowHeader handling
Just like the GetColumnHeader case already does, check
that the cell isn't nullptr before trying to retrieve
the table cell interface from it.

(Not doing so e.g. resulted in a crash with WIP branches
of LibreOffice and Orca to make selected cells with a
child index not fitting into 32 bit work, s.a.
https://bugs.documentfoundation.org/show_bug.cgi?id=150683 )

Pick-to: 6.4 6.3
Change-Id: Idd55fd1f0c49b616c732ddb683814605a46ff319
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-09-05 18:29:12 +02:00
Sona Kurazyan 50b05e3e2a Move qVersion() from qglobal.h to qlibraryinfo.h
Since qVersion() might be called also from C code, disable the parts of
qlibraryinfo.h that are relevant only for C++ code if __cplusplus is not
defined.

[ChangeLog][Potentially Source-Incompatible Changes] qVersion() is
moved from qglobal.h to qlibraryinfo.h, '#include <QtCore/QLibraryInfo>'
needs to be added where it's used.

Task-number: QTBUG-99313
Change-Id: I3363ef3fa4073114e5151cb3a2a1e8282ad42a4d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2022-09-01 13:26:30 +02:00
Michael Weghorn 063344c8b9 a11y atspi: Send SelectionChanged AT-SPI event on selection change
When using QAccessibleEvents of types QAccessible::Selection,
QAccessible::SelectionAdd and QAccessible::SelectionRemove,
Qt (internally) also always uses QAccessbibleEvent::setChild to
set the child that has been (un)selected.
As a consequence, the interface retrieved using
QAccessibleEvent::accessibleInterface here is not the
a11y object in which the selection has changed, but
the child, so notifying about a change to its selected
state (as happens here in the AT-SPI adapter) is in line
with that.

For AT-SPI, assistive technology (like the Orca screen reader)
often reacts to the SelectionChanged event on the object
managing the selection, so send a corresponding event
for the parent of the (un)selected child as well.

(Besides the lack of support for the AT-SPI Selection
interface - s. QTBUG-105909 - the fact that this event
wasn't sent previously e.g. turned out to be one reason
for the Orca screen reader not announcing selected cells in
the Qt 6 based UI variant of LibreOffice Calc.)

Change-Id: Icc8b9a7ecc77bc5394fd1ab4f8163caed951ba86
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-27 05:38:02 +02:00
Michael Weghorn 2910a6b308 a11y atspi: Forward SelectionWithin change to AT-SPI
QAccessible::SelectionWithin is meant to be used
when several changes to a selection have occurred
(instead of using multiple QAccessible::SelectionAdd
and QAccessible::SelectionRemoved events).

So far, that event was simply ignored by the AT-SPI
adapter.

Forward that as a SelectionChanged event to AT-SPI.

Change-Id: Ia8187f82b9b96b7ca5b52bf0a0923bbf4c777ad1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-27 05:37:55 +02:00
Michael Weghorn e81e7c3d99 a11y atspi: Drop FIXME that doesn't need action
The reply *is* needed.

Otherwise, e.g. running
examples/widgets/widgets/spinboxes/spinboxes
and clicking on the a11y objects for the spinboxes
in Accerciser's [1] treeview of the app's a11y
hierarchy makes Accerciser output this and crash:

> $ accerciser
> dbus[67434]: arguments to dbus_message_unref() were incorrect, assertion "message != NULL" failed in file ../../../dbus/dbus-message.c line 1727.
> This is normally a bug in some application using the D-Bus library.
>
>   D-Bus not built with -rdynamic so unable to print a backtrace
> Aborted (core dumped)

[1] https://gitlab.gnome.org/GNOME/accerciser

diff --git a/src/gui/accessible/linux/atspiadaptor.cpp b/src/gui/accessible/linux/atspiadaptor.cpp
index cdc27132c9..6b8a9fcaac 100644

Change-Id: I442d3130623ccae096a6b79577874a6fd95c8aa2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-27 02:07:55 +02:00
Michael Weghorn 9ab11c726e a11y atspi: Support text interface's GetStringAtOffset
The GetStringAtOffset method was added to the
AT-SPI Text interface in at-spi2-core commmit [1]:

    commit 56220f05bc8b7683911658e1a8aff4a1ab3cab8d
    Author: Mike Gorse <mgorse@suse.com>
    Date:   Mon Aug 19 16:43:02 2013 -0500

        Add atspi_text_get_string_at_offset

As compared to GetTextAtOffset, which is very similar and
already supported in Qt's AT-SPI adapter, the new method
uses a new enum, AtspiTextGranularity, to specify the region
of text that should be returned.

Other than AtspiTextBoundaryType (that is used by
GetTextAtOffset), AtspiTextGranularity now also has
a value for the paragraph granularity
(ATSPI_TEXT_GRANULARITY_PARAGRAPH).

While AtspiTextBoundaryType has two enum values for the
word/sentence/line boundaries (ATSPI_TEXT_BOUNDARY_WORD_START and
ATSPI_TEXT_BOUNDARY_WORD_END, etc.), AtspiTextGranularity
doesn't have this any more, but ATSPI_TEXT_GRANULARITY_WORD
etc. seem to correspond to what the variants ending on "_START"
do when used with GetTextAtOffset, since the documentation says that
the range is "defined by the boundaries of a word
starting at the beginning of the current word and finishing
at the beginning of the following one, if present." (and likewise
for ATSPI_TEXT_GRANULARITY_SENTENCE, ATSPI_TEXT_GRANULARITY_LINE,
ATSPI_TEXT_GRANULARITY_PARAGRAPH).

In order to support GetStringAtOffset, this
adds a new mapping from the AtspiTextGranularity enum values
to the corresponding QAccessible::TextBoundaryType, similar
to what's done for the AtspiTextBoundaryType in the
handling of the GetTextAtOffset method.

The existing AtSpiAdaptor::qAccessibleBoundaryType
method is renamed to
AtSpiAdaptor::qAccessibleBoundaryTypeFromAtspiBoundaryType
to clearer distinguish it from the newly introduced
AtSpiAdaptor::qAccessibleBoundaryTypeFromAtspiTextGranularity.

No similar new alternatives have been added
to AT-SPI for GetTextBeforeOffset and GetTextAfterOffset.

[1] 56220f05bc

Fixes: QTBUG-105811
Change-Id: I674a760e80c349baea89dcb4ac7aecdef9b2b45f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-27 02:07:54 +02:00
Michael Weghorn 45121669f5 a11y atspi: Handle AT-SPI Text's ScrollSubstringTo
This implements handling for the ScrollSubstringTo
method from the AT-SPI Text interface by calling
QAccessibleTextInterface::scrollToSubstring with
the given text offsets.

While the AT-SPI method has an additional parameter
for the scroll type that specifies where on screen
to place the given substring (s. doc at [1]), there
is no equivalent in
QAccessibleTextInterface::scrollToSubstring,
so ignore that parameter.

[1] https://lazka.github.io/pgi-docs/Atspi-2.0/classes/Text.html#Atspi.Text.scroll_substring_to

Fixes: QTBUG-105854
Change-Id: I390e1316c5c55cb646a299499a5f87c9c6945a44
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-27 02:07:54 +02:00
Michael Weghorn 0131dbd2f9 a11y atspi: Drop commented out "say hello to d-bus" code
This looks like a remnant of previous WIP code and was
added in commit 8e1ff45e74
("Add Linux Accessibility Bridge").

Change-Id: I8fab2c3554af101ed134715a4d4a494bdb01fc98
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-19 04:43:01 +02:00
Michael Weghorn e6599bfa61 a11y atspi: Send correct D-Bus reply for GetAttributeValue
Only return a string for the attribute value
(an empty string if the attribute is not set).

The previous implementation was based on the incorrect
signature in the XML spec for the AT-SPI Text interface from
before the AT-SPI commit that removed the extra out params [1]:

    commit 8786849ce6e9914383aa766ff9ce7e00f5b2178d
    Author: Patryk Kaczmarek <patryk.k@samsung.com>
    Date:   Mon Sep 28 14:23:15 2015 +0200

        Fixed atspi_text_ functions

          * atspi_text_get_text_attribute_value
              Fixed dbus signature in _atspi_dbus_call function
              and add missing argument for string.

          * atspi_text_get_default_attributes
              Receiving return value by reference from hash table

        https://bugzilla.gnome.org/show_bug.cgi?id=755731

[1] 8786849ce6

Fixes: QTBUG-105752
Pick-to: 6.4
Change-Id: I66d3c484ecc4b469684635723242c915e4365e6a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-19 02:43:00 +00:00
Michael Weghorn c2289ca582 a11y atspi: Add missing closing tag in introspection XML
Pick-to: 6.4
Change-Id: I4497353ef33a10b94141b24b9cda3fa7ee3e17b9
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-19 02:42:58 +00:00
Michael Weghorn 5145d3899d a11y atspi: Support AT-SPI table cell interface
QAccessibleTableCellInterface provides everything
needed to support the AT-SPI TableCell interface [1].

Therefore, expose that AT-SPI interface and implement
handling of the corresponding methods.

[1] https://gitlab.gnome.org/GNOME/at-spi2-core/-/blob/master/xml/TableCell.xml

Fixes: QTBUG-104793
Change-Id: Ie7068c029eaf911186daf3956f11cfd4eb2800a6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 18:12:50 +02:00
Michael Weghorn f350956548 a11y atspi: Forward change of focused state
The focused state exists in both, Qt
(QAccessible::State::focused) and AT-SPI, so forwarding
changes to that state is straightforward.

However, so far, changes to the focused state in a
QAccessible::StateChanged event were just ignored
and not forwarded to the AT-SPI layer.

While announcing focus changes to Qt's own widgets works
without that because it uses events of type QAccessible::Focus
instead of QAccessibleStateChangeEvent with the focused
state set, this is not exactly the same and just ignoring the
focused state in QAccessible::StateChanged events e.g. turned out to
be one cause for the Orca screen reader not announcing UI elements
when they received focus in the Qt-based UI variant of LibreOffice,
which uses QAccessible::StateChanged with the focused flag
set (s.a. LibreOffice commit [1]).

[1] https://git.libreoffice.org/core/commit/8c3e8af0e60865ec6d38e2117efdb4ed2f10a20c

Change-Id: If226af28960048c56af32979477605d6860e30e9
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 15:02:26 +00:00
Michael Weghorn ee35afc117 a11y atspi: Drop 'if (0)' branch
Change-Id: Ie175405298ed03752b48a8b74d23bd5f1b0b148e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 17:02:26 +02:00
Michael Weghorn 7594e8ca4d a11y atspi: Send D-Bus reply for "GetCaption" in expected format
Just like for the "GetSummary" case, the argument in the
reply for this AT-SPI table method needs to
be wrapped in a variant.

Fixes this warning from the output of the client side
using libatspi:

> (accerciser:181933): dbind-WARNING **: 11:50:36.394: atspi_dbus_get_property:
> expected a variant when fetching Caption from interface org.a11y.atspi.Table; got (so)

Fixes: QTBUG-105520
Pick-to: 6.4 6.3 6.2
Change-Id: I18167359e4cd3bb14a94289ac7481f9e39a18ad0
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 10:49:36 +02:00
Michael Weghorn a32a3aa388 a11y atspi: Add support for ATSPI_COORD_TYPE_PARENT
So far, only screen coordinates (`ATSPI_COORD_TYPE_SCREEN`)
and coordinates relative to the widget's top-level window
(`ATSPI_COORD_TYPE_WINDOW`) were supported.

In at-spi 2.30, a third coordinate type, describing
coordinates relative to the widget's immediate parent,
was added: `ATSPI_COORD_TYPE_PARENT` (commit: [1])

This commit adds the handling to convert to and
from that coord type as well and unifies the
existing handling to convert to/from screen coordinates
by introducing two static helper methods
(`AtSpiAdaptor::translateToScreenCoordinates` and
`AtSpiAdaptor::translateFromScreenCoordinates`) and
making use of those wherever conversion needs to
be done.

In addition, also add a check to only handle
requests using a coordinate type that is one of those
that is actually supported instead of returning
incorrect values (for the case that new coord types
should be introduced in AT-SPI in the future).

[1] 737c9853b6

Fixes: QTBUG-105313
Change-Id: Ia8752bd6a35328cc2de33ecad08f2964735f41ae
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 10:48:59 +02:00
Michael Weghorn fa0e24b641 a11y atspi: translate coords for GetOffsetAtPoint the right way
The coordinate type for "GetOffsetAtPoint" describes the
coordinate type of the input coordinates and
`QAccessibleTextInterface::offsetAtPoint` expects the
coordinates in screen coordinates.

Therefore, if window-relative coordinates are given,
the screen coordinates of the window need to be added
(not subtracted) to the window-relative coordinates of the point
in order to calculate the screen coordinates of the point.

Fixes: QTBUG-105281
Pick-to: 6.4 6.3 6.2
Change-Id: I5517335c0c0d6a47b8c45c7e4f8f8b5a91f0fcd7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 04:46:59 +02:00
Michael Weghorn 49c966bc85 a11y atspi: Take dialog into account as top-level window
Since a dialog is also a top-level window, it should be taken
into account when trying to find the accessible's top-level
window, relative to which the position will be calulated for
`ATSPI_COORD_TYPE_WINDOW`.

Fixes: QTBUG-105042
Pick-to: 6.4 6.3 6.2
Change-Id: I74fae096fd886bab04187c122f268c26c91b86ab
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 02:46:59 +00:00
Michael Weghorn d40dacf5f4 a11y atspi: Fix incorrect use of x instead of y position
Fixes: QTBUG-105031
Pick-to: 6.4 6.3 6.2
Change-Id: I26fcbfbd5a90982b87dda89b2880efe937f099d8
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-08-17 04:46:59 +02:00
Allan Sandfeld Jensen f53f709504 Replace QT_NO_ACCESSIBILITY with QT_CONFIG(accessibility)
Pick-to: 6.4
Change-Id: Iee4bd8970810be1b23bdba65a74de912401dca65
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2022-06-15 18:03:30 +02:00
Lucie Gérard 05fc3aef53 Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
Files that have to be modified by hand are modified.
License files are organized under LICENSES directory.

Task-number: QTBUG-67283
Change-Id: Id880c92784c40f3bbde861c0d93f58151c18b9f1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2022-05-16 16:37:38 +02:00
Marc Mutz a440a8e8c5 QtGui: includemocs
Including moc files directly into their classes' TU tends to improve
codegen and enables extended compiler warnings, e.g. about unused
private functions or fields.

Pick-to: 6.3 6.2 5.15
Task-number: QTBUG-102886
Change-Id: I1945741794c25679a9d94c0d68c8642e2c823502
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2022-04-29 07:30:59 +02:00
Sona Kurazyan 9a55c695c7 QtGui: replace remaining uses of QLatin1String with QLatin1StringView
Task-number: QTBUG-98434
Change-Id: I98c27030c783f968cbf38dc966ce486dc366b302
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2022-04-28 05:58:52 +02:00
Sona Kurazyan 7b6b133746 QtGui: use _L1 for for creating Latin-1 string literals
Task-number: QTBUG-98434
Change-Id: Idcb71c1d27125333a53b6bdd3e1af0d4c66617fa
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2022-04-28 05:58:52 +02:00
Sona Kurazyan f0a72abfe3 AtSpiAdaptor: fix debug messages to output the values before clearing
Pick-to: 6.3 6.2
Change-Id: I945922c90396840128a79cb11443bf4ef5aadb13
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2022-04-26 09:01:01 +02:00
Sona Kurazyan a5b9600356 QtGui: stop using QLatin1Char constructor for creating char literals
Required for porting away from QLatin1Char/QLatin1String in scope of
QTBUG-98434.

Change-Id: I308d86cefcbfd126929b68f9a853d420840c965f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
2022-04-13 18:34:15 +02:00
Lars Knoll e7e7540aec Deprecate int based convert/canConvert
Better to provide the correct meta type to convert to.

Change-Id: I8e0d46e4ba482186201c157e302c03874bd38e7b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-08-24 00:19:18 +02:00
Allan Sandfeld Jensen 5747f31392 Another round of 0->nullptr cleanup
Change-Id: Ic8db7dc252f8fea46eb5a4f334726d6c7f4645a6
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-07-31 12:56:50 +02:00
Lu YaNing 1ac7bf1ed4 Linux: fix crash in AtSpi adaptor when handling window activation
fix The window has been quickly activated or disabled will cause a crash .

Fixes: QTBUG-84643
Pick-to: 5.15
Change-Id: I0fd0918a3fc1898ddffd97009a4e92702ecd9ed4
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-07-14 12:33:23 +08:00
Lars Schmertmann 6ce2f3f26b Add ; to Q_UNUSED
This is required to remove the ; from the macro with Qt 6.

Task-number: QTBUG-82978
Change-Id: I3f0b6717956ca8fa486bed9817b89dfa19f5e0e1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2020-07-07 11:51:48 +02:00
Friedemann Kleint 23282ac23d SPI Accessibility: Remove global variable
Change it into a member variable of QSpiAccessibleBridge.

Task-number: QTBUG-83255
Change-Id: Ia781a7c86723e343680bf804be6393640f83a516
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2020-07-06 22:23:49 +02:00
Jarek Kobus 23b7e7972e Use QList instead of QVector in platformsupport
Task-number: QTBUG-84469
Change-Id: I8e4e6626cc840bc9c8bce014c595da9080025dd8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2020-07-06 13:43:11 +02:00
Friedemann Kleint 9e733622a6 Move linuxaccessibility to QtGui
Change some too-generic file names.

Task-number: QTBUG-83255
Change-Id: I4497ee2508bc323566f4061d4547707b7bda7a77
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2020-07-06 11:15:08 +02:00