Merge lp:~gerboland/qtubuntu/a11y into lp:qtubuntu

Proposed by Gerry Boland
Status: Merged
Approved by: Nick Dedekind
Approved revision: 346
Merged at revision: 356
Proposed branch: lp:~gerboland/qtubuntu/a11y
Merge into: lp:qtubuntu
Diff against target: 43 lines (+11/-0)
2 files modified
src/ubuntumirclient/integration.cpp (+9/-0)
src/ubuntumirclient/integration.h (+2/-0)
To merge this branch: bzr merge lp:~gerboland/qtubuntu/a11y
Reviewer Review Type Date Requested Status
Nick Dedekind (community) Approve
Unity8 CI Bot continuous-integration Approve
Review via email: mp+309045@code.launchpad.net

Commit message

Enable Accessibility

Description of the change

Handiest way to test:

1. sudo systemctl stop lightdm
2. run sudo mir_demo_server --arw-file
3. in another VT, do following:

/usr/lib/at-spi2-core/at-spi-bus-launcher --launch-immediately
/usr/lib/at-spi2-core/at-spi2-registryd

This brings up the DBus server used by the A11Y framework.

4. In a third VT, install "accerciser" and run with:
MIR_SOCKET=/tmp/mir_socket python3 /usr/bin/accerciser
you should see it appear on screen.

Can double-check it works with "GDK_BACKEND=mir gedit" - accerciser allows you dig into the accessible portions of applications, which are used by screenreaders and other accessible technologies.

5. Now test Qt apps appear similarly in accerciser:
export QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1 QT_ACCESSIBILITY=1

QT_DEBUG_ACCESSIBILITY=1 /usr/lib/x86_64-linux-gnu/qt5/examples/widgets/mainwindows/application/application

To post a comment you must log in.
Revision history for this message
Unity8 CI Bot (unity8-ci-bot) wrote :

FAILED: Continuous integration, rev:346
https://unity8-jenkins.ubuntu.com/job/lp-qtubuntu-ci/150/
Executed test runs:

Click here to trigger a rebuild:
https://unity8-jenkins.ubuntu.com/job/lp-qtubuntu-ci/150/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Unity8 CI Bot (unity8-ci-bot) wrote :

PASSED: Continuous integration, rev:346
https://unity8-jenkins.ubuntu.com/job/lp-qtubuntu-ci/151/
Executed test runs:
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build/3192
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-0-fetch/3220
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=vivid+overlay/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=vivid+overlay/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=xenial+overlay/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=xenial+overlay/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=zesty/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=amd64,release=zesty/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=vivid+overlay/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=vivid+overlay/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=xenial+overlay/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=xenial+overlay/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=zesty/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=armhf,release=zesty/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=vivid+overlay/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=vivid+overlay/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=xenial+overlay/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=xenial+overlay/3076/artifact/output/*zip*/output.zip
    SUCCESS: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=zesty/3076
        deb: https://unity8-jenkins.ubuntu.com/job/build-2-binpkg/arch=i386,release=zesty/3076/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://unity8-jenkins.ubuntu.com/job/lp-qtubuntu-ci/151/rebuild

review: Approve (continuous-integration)
Revision history for this message
Nick Dedekind (nick-dedekind) wrote :

Tested and works. Looks good from here.

review: Approve
lp:~gerboland/qtubuntu/a11y updated
347. By Gerry Boland

Merge trunk

348. By Gerry Boland

Stick to existing var naming standard

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/ubuntumirclient/integration.cpp'
2--- src/ubuntumirclient/integration.cpp 2016-10-04 16:20:07 +0000
3+++ src/ubuntumirclient/integration.cpp 2016-11-04 15:14:33 +0000
4@@ -39,6 +39,7 @@
5 #include <QtPlatformSupport/private/qgenericunixfontdatabase_p.h>
6 #include <QtPlatformSupport/private/qgenericunixeventdispatcher_p.h>
7 #include <QtPlatformSupport/private/qeglpbuffer_p.h>
8+#include <QtPlatformSupport/private/bridge_p.h>
9 #include <QOpenGLContext>
10 #include <QOffscreenSurface>
11
12@@ -372,3 +373,11 @@
13 QPlatformIntegration::destroyScreen(screen);
14 #endif
15 }
16+
17+QPlatformAccessibility *UbuntuClientIntegration::accessibility() const
18+{
19+ if (!mAccessibility) {
20+ mAccessibility.reset(new QSpiAccessibleBridge());
21+ }
22+ return mAccessibility.data();
23+}
24
25=== modified file 'src/ubuntumirclient/integration.h'
26--- src/ubuntumirclient/integration.h 2016-09-22 19:45:30 +0000
27+++ src/ubuntumirclient/integration.h 2016-11-04 15:14:33 +0000
28@@ -59,6 +59,7 @@
29 QPlatformClipboard* clipboard() const override;
30 void initialize() override;
31 QPlatformOffscreenSurface *createPlatformOffscreenSurface(QOffscreenSurface *surface) const override;
32+ QPlatformAccessibility *accessibility() const override;
33
34 // New methods.
35 MirConnection *mirConnection() const { return mMirConnection; }
36@@ -83,6 +84,7 @@
37
38 UbuntuInput* mInput;
39 QPlatformInputContext* mInputContext;
40+ mutable QScopedPointer<QPlatformAccessibility> mAccessibility;
41 QScopedPointer<UbuntuDebugExtension> mDebugExtension;
42 QScopedPointer<UbuntuScreenObserver> mScreenObserver;
43 qreal mScaleFactor;

Subscribers

People subscribed via source and target branches