Implement the IAccessible table2 interface for itemviews.
This is simpler than what we have in complexwidgets.
For now it is only used on Linux.
The new table2 interface is ifdef'ed to only be used on X11.
Improve handling of accessible events and clean up.
There are two xfails for the Table and Tree where sibling
navigation is not implemented yet.
Reviewed-by: Gabi
(cherry picked from commit e797ba558dddd45522b5a317316e497e9efc44a8)
(cherry picked from commit eff5ecc5d8f65fa25d6cfd6ed96a9d2a00d0c663)
(cherry picked from commit d29876008fad400bca8d6b37e5d5f61dd1bcb39d)
(cherry picked from commit 2a326fdc8f8bf2bd2c5764394616100906d9db2d)
(cherry picked from commit 9b72e79e20d0d3560e0b064b8b0d75e35feb720e)
(cherry picked from commit 075b0f744363842ed4179c644d933d461389544f)
Change-Id: I654f74991830ae1fc7df7cc91d930390fb88b2a4
Reviewed-on: http://codereview.qt.nokia.com/3274
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Several required fixes and changes to fix problems that arose
when porting SceneGraph's QSGTextInput and QSGTextEdit to
use QSGTextNode, especially related to having selections
on the text.
Also fixes crashes with the threaded renderer on Mac OS X
when using the TextEdit or TextInput elements.
Task-number: QTBUG-18019, QTBUG-20017
Change-Id: I67f24465352daa1d2cb12b6d2f378feb676c9804
Reviewed-on: http://codereview.qt.nokia.com/2864
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Loading of fallback fonts from the font cache was broken.
While iterating through fallback fonts, we would incorrectly skip any
fonts which were already in the cache. This would cause unstable lookup
results for some fonts, depending on the order in which fonts were
loaded during the current process.
Change-Id: I56a6a07e93196ed14f33f4cc181e41c5b8f19498
Reviewed-on: http://codereview.qt.nokia.com/3059
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This is more conforming to the AT-SPI specs.
Also we have working relations for the label when a buddy is set.
Reviewed-by: Gabi
(cherry picked from commit 8be3168aa2f300f9a93a53b417704f3f10b1dc8b)
Change-Id: I1831d5063b003df2d209aba99d54558b6493a3e9
Reviewed-on: http://codereview.qt.nokia.com/3027
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Add boundary helper functions to the QAccessibleTextInterface.
Move LineEdit over to use QTextBoundaryFinder.
Reviewed-by: Jan-Arve
(cherry picked from commit c1ec1a95806cda54d5b4e9f8ed159a611bd75964)
Change-Id: Ib93599c49110aab50debe1e3fb0073dd34071c87
Reviewed-on: http://codereview.qt.nokia.com/3025
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
According to the UBA, the object replacement character should be
considered ON. There's no reason to special case its directionality, as
the bidi algorithm will already have given it an implicit
directionality.
Task-number: QTBUG-20910
Reviewed-by: Lars
(cherry picked from commit 2657bfa7c4de9f114331d1714a306b3999ae30d8)
Change-Id: I1c8e45d67ef44b1b6f96edb2f5074331b5422eb7
Reviewed-on: http://codereview.qt.nokia.com/2999
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
When a virtual object is registered with the SubPath option
it will handle all dbus calls to itself and all child paths.
It needs to reimplement handleMessage for that purpose.
Introspection needs to be implemented manually in the introspect function.
Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
(cherry picked from commit b07919b3de8cff3e44b7271062372b14bcda5b83)
(cherry picked from commit 997c2dfed7a04da2fac577f1c29b89bda4939e2d)
(cherry picked from commit c676b7095d826dc2d006f52a4b234546af5e2137)
Change-Id: I003007604b286af8000959756ce9d25c17306f5b
Reviewed-on: http://codereview.qt.nokia.com/3051
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Also return dock widget title.
Reviewed-by: Gabriel de Dietrich <gabriel.dietrich-de@nokia.com>
(cherry picked from commit 276d16583b80da2838f9af47e15fe3a83cdb0485)
Change-Id: I8d66bec4212cc2b1df8c9b041375d7455c6a76a3
Reviewed-on: http://codereview.qt.nokia.com/3023
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Do not send accessibility focus events when menus are involved.
There are focus events to preserve the old focus when showing a new popup window.
Reviewed-by: Jan-Arve
(cherry picked from commit 32079bb0b348ef5f7126e69be9bcfb249c1a6412)
Change-Id: Id4838a3aede1d60a1850385e97660d085f055d64
Reviewed-on: http://codereview.qt.nokia.com/3021
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
This was known to be unstable on mac, but appears to be unstable on
Linux also.
Task-number: QTBUG-20987
Change-Id: I760533c32cf13d24f8428f120813eb590b202182
Reviewed-on: http://codereview.qt.nokia.com/3131
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Wait for window shown on _all_ platforms, not just X11.
QEXPECT_FAIL a test which relies on QCursor::setPos, which is currently
unimplemented for qpa (QTBUG-20753).
Change-Id: I72412476afc7e52ccb6cab4306ff791b7e7d8d93
Reviewed-on: http://codereview.qt.nokia.com/3118
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Throwing C++ exceptions through the event loop doesn't work if the Glib
event loop is used, so conditionally skip that part of the test.
Change-Id: Ic27ebf4eb75bd1cf7c7e35f371f29bcfc0e1844a
Reviewed-on: http://codereview.qt.nokia.com/2471
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
This test unstably fails because font lookup is somewhat broken for qpa.
Task-number: QTBUG-20986
Change-Id: Id4ebd35e979d8837d32b58e5ed9c1df3ac15827a
Reviewed-on: http://codereview.qt.nokia.com/3130
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
The necessary font handling code for qrawfont currently seems to be
unimplemented for all qpa backends.
Task-number: QTBUG-20976
Change-Id: I2b5c511936892e2754c0ee809b7a558f44d1d132
Reviewed-on: http://codereview.qt.nokia.com/3116
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
These tests were written to compare two different methods of drawing
text, to ensure the result was the same. However, if _both_ methods
turned out to be complete no-ops, the test would unexpectedly pass, as
it never verified that anything was painted. Add additional
verification steps and QEXPECT_FAIL them on qpa for now.
Task-number: QTBUG-20977
Change-Id: I1ce1b7c2bcd683fc9eeaeb8d1483268e56f5cf08
Reviewed-on: http://codereview.qt.nokia.com/3117
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
The `lackey' helper app was disabled by
ccd5228a93, but the tests which depend on
it weren't disabled - so, of course, they fail.
None of these tests will work until the circular dependency is fixed
(the tests are in qtbase and they depend on qtscript which depends on
qtbase).
Change-Id: I8e41b4182f5ea57a71ec810a30a21ba1c7217db3
Reviewed-on: http://codereview.qt.nokia.com/3122
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Doing an async exit of the test event loop is unsafe - it means that
a call to exitLoop may be left pending from one testfunction, causing
future testfunctions to fail. This in fact was happening for the
multipleDifferentLookups testfunction, which was running the event loop
for two milliseconds at a time until a certain amount of lookups was
done. It was common for the loop to timeout after the lookup had
completed but before the async exitLoop had been processed.
Make it simple, do a synchronous exitLoop.
Change-Id: I2ffe6989bddc091ddd42b218a75f7a8ff160cf53
Reviewed-on: http://codereview.qt.nokia.com/3124
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
This autotest sometimes passes and sometimes fails, making its result
insignificant for the purpose of detecting regressions.
Task-number: QTBUG-20984
Change-Id: I1454649384b60501be0bec238dfb18cfc85d5f54
Reviewed-on: http://codereview.qt.nokia.com/3129
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
This test fails on qpa because it uses QCursor::setPos, which is
unimplemented.
Task-number: QTBUG-20753
Change-Id: I8b77261e9ddfa8f57cebdbd83c93a367a8cf8bea
Reviewed-on: http://codereview.qt.nokia.com/3128
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
This test crashes sometimes (but not always), making its result
insignificant for the purpose of detecting regressions.
Task-number: QTBUG-20981
Change-Id: I65e9c449ef342fad17be2364964774f229970aaa
Reviewed-on: http://codereview.qt.nokia.com/3125
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
X11 is currently the only platform with a "real" implementation of
QTest::qWaitForWindowShown. All others merely process events for some
fixed interval, and assume that this is sufficient for the window to be
placed. In practice, the current interval is too short for slower
machines.
Change-Id: I956cd747d0b30577f5072a9a08da88dabc76906c
Reviewed-on: http://codereview.qt.nokia.com/3060
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
This test fails on qpa because QPixmap::grabWindow is not implemented
for that platform.
Task-number: QTBUG-20863
Change-Id: I19afdac231922113c1b491dee27c2ea91e121b85
Reviewed-on: http://codereview.qt.nokia.com/3123
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
This test will fail if the window manager doesn't give the widget the
geometry it requested. The test was verifying this precondition, but
only on QWS. It doesn't make sense to limit this check to QWS,
as other platforms can have small screens too.
Change-Id: I3fec905c28ac2f85ebfd621f84f2269a673e318e
Reviewed-on: http://codereview.qt.nokia.com/3061
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
The test fails on some qpa, xcb configurations, but not others.
The difference between the passing and failing configurations is
unknown.
Task-number: QTBUG-20956
Change-Id: I0dc7c3e598ce1116ef5f2280d9285dda82f14f10
Reviewed-on: http://codereview.qt.nokia.com/3064
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
If sync.profile points to a location that does not exist in the
%modules section, the version header cannot be written.
Report the error clearly so this problem can be identified.
Change-Id: Ib681087f46362487ffb621221d33cf9b7e54df2f
Reviewed-on: http://codereview.qt.nokia.com/2761
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
We are trying to test the case of having a widget right next to the edge
of the screen, but the window manager is likely to forbid this geometry
in many cases. When this happens, we can't continue the test.
Change-Id: I6bce2263bdf444221c5303e83d70a254bbb9194c
Reviewed-on: http://codereview.qt.nokia.com/2892
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Visible status should not influence child count and
other properties.
Reviewed-by: Jan-Arve
(cherry picked from commit b6a6953d21a95c402e8a5010c1ea5131509eeea3)
Change-Id: I854349bfe48ab3d81bb9eee284965461b1e66aef
Reviewed-on: http://codereview.qt.nokia.com/3019
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
This was most likely a copy and paste error.
Reviewed-by: Denis Dzyubenko
(cherry picked from commit e29ef45e404dbe888c0848eb28317a10b2aff768)
Change-Id: I55dec5b9d101f9015f97cf453dc804d3cc22db8d
Reviewed-on: http://codereview.qt.nokia.com/3018
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
separate_debug_info was previously stored in .qmake.cache, and
therefore only affected qtbase. Store it as a QT_CONFIG setting instead,
and add it to CONFIG for all Qt plugins and modules.
Change-Id: I940c8cb30f1c42c85f4d0342e6a482f20677ff04
Reviewed-on: http://codereview.qt.nokia.com/2975
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>