diff options
author | Michael BrĂ¼ning <michael.bruning@theqtcompany.com> | 2015-01-20 16:20:42 +0100 |
---|---|---|
committer | Michael BrĂ¼ning <michael.bruning@theqtcompany.com> | 2015-01-23 11:52:08 +0100 |
commit | d95b9295c970401939d2779cbdc9e2a8c7965277 (patch) | |
tree | 16dacd587d16ebf84369783faeca45c5e8178ff8 /src/webengine | |
parent | 82bef8eb423bc7a9f607fda95cd980a8b2816056 (diff) |
Enable building Qt WebEngine without accessiblity enabled.
This adds guards that for QT_NO_ACCESSIBILITY being not defined
around the code that uses accessibility types.
It disables the quicknanobrowser and quicktestbrowser examples
which need Qt QuickControls, which has a hard dependency to
accessibility being enabled.
Task-number: QTBUG-43305
Change-Id: Ifa39e3ce447ebc2124f52e00b29b1d7d2231035e
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
Diffstat (limited to 'src/webengine')
-rw-r--r-- | src/webengine/api/qquickwebengineview.cpp | 12 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineview_p.h | 2 | ||||
-rw-r--r-- | src/webengine/api/qquickwebengineview_p_p.h | 5 |
3 files changed, 18 insertions, 1 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 92807380f..a93cd7079 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -64,16 +64,20 @@ #include <QScreen> #include <QStringBuilder> #include <QUrl> +#ifndef QT_NO_ACCESSIBILITY #include <private/qquickaccessibleattached_p.h> +#endif // QT_NO_ACCESSIBILITY QT_BEGIN_NAMESPACE +#ifndef QT_NO_ACCESSIBILITY static QAccessibleInterface *webAccessibleFactory(const QString &, QObject *object) { if (QQuickWebEngineView *v = qobject_cast<QQuickWebEngineView*>(object)) return new QQuickWebEngineViewAccessible(v); return 0; } +#endif // QT_NO_ACCESSIBILITY QQuickWebEngineViewPrivate::QQuickWebEngineViewPrivate() : adapter(0) @@ -105,7 +109,9 @@ QQuickWebEngineViewPrivate::QQuickWebEngineViewPrivate() // 1x, 2x, 3x etc assets that fit an integral number of pixels. setDevicePixelRatio(qMax(1, qRound(webPixelRatio))); } +#ifndef QT_NO_ACCESSIBILITY QAccessible::installFactory(&webAccessibleFactory); +#endif // QT_NO_ACCESSIBILITY } QQuickWebEngineViewPrivate::~QQuickWebEngineViewPrivate() @@ -414,11 +420,13 @@ void QQuickWebEngineViewPrivate::runMouseLockPermissionRequest(const QUrl &secur adapter->grantMouseLockPermission(false); } +#ifndef QT_NO_ACCESSIBILITY QObject *QQuickWebEngineViewPrivate::accessibilityParentObject() { Q_Q(QQuickWebEngineView); return q; } +#endif // QT_NO_ACCESSIBILITY BrowserContextAdapter *QQuickWebEngineViewPrivate::browserContextAdapter() { @@ -438,6 +446,7 @@ void QQuickWebEngineViewPrivate::setDevicePixelRatio(qreal devicePixelRatio) m_dpiScale = devicePixelRatio / screen->devicePixelRatio(); } +#ifndef QT_NO_ACCESSIBILITY QQuickWebEngineViewAccessible::QQuickWebEngineViewAccessible(QQuickWebEngineView *o) : QAccessibleObject(o) {} @@ -484,6 +493,7 @@ QAccessible::State QQuickWebEngineViewAccessible::state() const QAccessible::State s; return s; } +#endif // QT_NO_ACCESSIBILITY void QQuickWebEngineViewPrivate::adoptWebContents(WebContentsAdapter *webContents) { @@ -520,8 +530,10 @@ QQuickWebEngineView::QQuickWebEngineView(QQuickItem *parent) this->setActiveFocusOnTab(true); this->setFlag(QQuickItem::ItemIsFocusScope); +#ifndef QT_NO_ACCESSIBILITY QQuickAccessibleAttached *accessible = QQuickAccessibleAttached::qmlAttachedProperties(this); accessible->setRole(QAccessible::Grouping); +#endif // QT_NO_ACCESSIBILITY } QQuickWebEngineView::~QQuickWebEngineView() diff --git a/src/webengine/api/qquickwebengineview_p.h b/src/webengine/api/qquickwebengineview_p.h index f3ef133ae..d625dbdd9 100644 --- a/src/webengine/api/qquickwebengineview_p.h +++ b/src/webengine/api/qquickwebengineview_p.h @@ -168,7 +168,9 @@ private: friend class QQuickWebEngineViewExperimental; friend class QQuickWebEngineViewExperimentalExtension; friend class QQuickWebEngineNewViewRequest; +#ifndef QT_NO_ACCESSIBILITY friend class QQuickWebEngineViewAccessible; +#endif // QT_NO_ACCESSIBILITY }; QT_END_NAMESPACE diff --git a/src/webengine/api/qquickwebengineview_p_p.h b/src/webengine/api/qquickwebengineview_p_p.h index f97f2a8cf..964a4f0d9 100644 --- a/src/webengine/api/qquickwebengineview_p_p.h +++ b/src/webengine/api/qquickwebengineview_p_p.h @@ -174,7 +174,9 @@ public: virtual void authenticationRequired(const QUrl&, const QString&, bool, const QString&, QString*, QString*) Q_DECL_OVERRIDE { } virtual void runMediaAccessPermissionRequest(const QUrl &securityOrigin, MediaRequestFlags requestFlags) Q_DECL_OVERRIDE; virtual void runMouseLockPermissionRequest(const QUrl &securityOrigin) Q_DECL_OVERRIDE; +#ifndef QT_NO_ACCESSIBILITY virtual QObject *accessibilityParentObject() Q_DECL_OVERRIDE; +#endif // QT_NO_ACCESSIBILITY virtual WebEngineSettings *webEngineSettings() const Q_DECL_OVERRIDE; virtual void allowCertificateError(const QExplicitlySharedDataPointer<CertificateErrorController> &errorController); virtual void runGeolocationPermissionRequest(QUrl const&) Q_DECL_OVERRIDE; @@ -206,6 +208,7 @@ private: qreal m_dpiScale; }; +#ifndef QT_NO_ACCESSIBILITY class QQuickWebEngineViewAccessible : public QAccessibleObject { public: @@ -221,7 +224,7 @@ public: private: QQuickWebEngineView *engineView() const { return static_cast<QQuickWebEngineView*>(object()); } }; - +#endif // QT_NO_ACCESSIBILITY QT_END_NAMESPACE QML_DECLARE_TYPE(QQuickWebEngineViewExperimental) |