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/core | |
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/core')
-rw-r--r-- | src/core/browser_accessibility_manager_qt.cpp | 6 | ||||
-rw-r--r-- | src/core/browser_accessibility_manager_qt.h | 2 | ||||
-rw-r--r-- | src/core/browser_accessibility_qt.cpp | 3 | ||||
-rw-r--r-- | src/core/browser_accessibility_qt.h | 2 | ||||
-rw-r--r-- | src/core/render_widget_host_view_qt.cpp | 11 | ||||
-rw-r--r-- | src/core/render_widget_host_view_qt.h | 7 | ||||
-rw-r--r-- | src/core/web_contents_adapter.cpp | 2 | ||||
-rw-r--r-- | src/core/web_contents_adapter_client.h | 2 |
8 files changed, 32 insertions, 3 deletions
diff --git a/src/core/browser_accessibility_manager_qt.cpp b/src/core/browser_accessibility_manager_qt.cpp index 1adb69be7..0157c8602 100644 --- a/src/core/browser_accessibility_manager_qt.cpp +++ b/src/core/browser_accessibility_manager_qt.cpp @@ -48,9 +48,14 @@ BrowserAccessibilityManager* BrowserAccessibilityManager::Create( BrowserAccessibilityDelegate* delegate, BrowserAccessibilityFactory* factory) { +#ifndef QT_NO_ACCESSIBILITY return new BrowserAccessibilityManagerQt(0, initial_tree, delegate); +#else + return 0; +#endif // QT_NO_ACCESSIBILITY } +#ifndef QT_NO_ACCESSIBILITY BrowserAccessibility *BrowserAccessibilityFactoryQt::Create() { return new BrowserAccessibilityQt(); @@ -128,5 +133,6 @@ void BrowserAccessibilityManagerQt::NotifyAccessibilityEvent(ui::AXEvent event_t break; } } +#endif // QT_NO_ACCESSIBILITY } diff --git a/src/core/browser_accessibility_manager_qt.h b/src/core/browser_accessibility_manager_qt.h index 5d8498d01..49b3af3b2 100644 --- a/src/core/browser_accessibility_manager_qt.h +++ b/src/core/browser_accessibility_manager_qt.h @@ -38,6 +38,7 @@ #define BROWSER_ACCESSIBILITY_MANAGER_QT_H #include "content/browser/accessibility/browser_accessibility_manager.h" +#ifndef QT_NO_ACCESSIBILITY #include <QtCore/qobject.h> QT_BEGIN_NAMESPACE @@ -74,4 +75,5 @@ private: } +#endif // QT_NO_ACCESSIBILITY #endif diff --git a/src/core/browser_accessibility_qt.cpp b/src/core/browser_accessibility_qt.cpp index 8f0dd0572..9d7dbe8d8 100644 --- a/src/core/browser_accessibility_qt.cpp +++ b/src/core/browser_accessibility_qt.cpp @@ -38,6 +38,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#ifndef QT_NO_ACCESSIBILITY #include "browser_accessibility_qt.h" #include "third_party/WebKit/public/web/WebAXEnums.h" @@ -896,3 +897,5 @@ void BrowserAccessibilityQt::modelChange(QAccessibleTableModelChangeEvent *) } } // namespace content + +#endif // QT_NO_ACCESSIBILITY diff --git a/src/core/browser_accessibility_qt.h b/src/core/browser_accessibility_qt.h index db190ffc4..6baab98b3 100644 --- a/src/core/browser_accessibility_qt.h +++ b/src/core/browser_accessibility_qt.h @@ -36,6 +36,7 @@ #ifndef BROWSER_ACCESSIBILITY_QT_H #define BROWSER_ACCESSIBILITY_QT_H +#ifndef QT_NO_ACCESSIBILITY #include <QtGui/qaccessible.h> #include "content/browser/accessibility/browser_accessibility.h" @@ -145,4 +146,5 @@ public: } +#endif // QT_NO_ACCESSIBILITY #endif diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp index e17459634..bf4d5bf37 100644 --- a/src/core/render_widget_host_view_qt.cpp +++ b/src/core/render_widget_host_view_qt.cpp @@ -245,15 +245,18 @@ RenderWidgetHostViewQt::RenderWidgetHostViewQt(content::RenderWidgetHost* widget , m_initPending(false) { m_host->SetView(this); - +#ifndef QT_NO_ACCESSIBILITY QAccessible::installActivationObserver(this); if (QAccessible::isActive()) content::BrowserAccessibilityStateImpl::GetInstance()->EnableAccessibility(); +#endif // QT_NO_ACCESSIBILITY } RenderWidgetHostViewQt::~RenderWidgetHostViewQt() { +#ifndef QT_NO_ACCESSIBILITY QAccessible::removeActivationObserver(this); +#endif // QT_NO_ACCESSIBILITY } void RenderWidgetHostViewQt::setDelegate(RenderWidgetHostViewQtDelegate* delegate) @@ -347,10 +350,14 @@ gfx::NativeViewAccessible RenderWidgetHostViewQt::GetNativeViewAccessible() content::BrowserAccessibilityManager* RenderWidgetHostViewQt::CreateBrowserAccessibilityManager(content::BrowserAccessibilityDelegate* delegate) { +#ifndef QT_NO_ACCESSIBILITY return new content::BrowserAccessibilityManagerQt( m_adapterClient->accessibilityParentObject(), content::BrowserAccessibilityManagerQt::GetEmptyDocument(), delegate); +#else + return 0; +#endif // QT_NO_ACCESSIBILITY } // Set focus to the associated View component. @@ -941,6 +948,7 @@ void RenderWidgetHostViewQt::handleInputMethodEvent(QInputMethodEvent *ev) } } +#ifndef QT_NO_ACCESSIBILITY void RenderWidgetHostViewQt::accessibilityActiveChanged(bool active) { if (active) @@ -948,6 +956,7 @@ void RenderWidgetHostViewQt::accessibilityActiveChanged(bool active) else content::BrowserAccessibilityStateImpl::GetInstance()->DisableAccessibility(); } +#endif // QT_NO_ACCESSIBILITY void RenderWidgetHostViewQt::handleWheelEvent(QWheelEvent *ev) { diff --git a/src/core/render_widget_host_view_qt.h b/src/core/render_widget_host_view_qt.h index ee11888ad..93e7e75b4 100644 --- a/src/core/render_widget_host_view_qt.h +++ b/src/core/render_widget_host_view_qt.h @@ -52,6 +52,7 @@ #include <QRect> #include <QtGlobal> #include <QtGui/qaccessible.h> +#include <QtGui/QTouchEvent> #include "delegated_frame_node.h" @@ -61,7 +62,6 @@ class QFocusEvent; class QHoverEvent; class QKeyEvent; class QMouseEvent; -class QTouchEvent; class QVariant; class QWheelEvent; class QAccessibleInterface; @@ -94,7 +94,9 @@ class RenderWidgetHostViewQt , public ui::GestureProviderClient , public RenderWidgetHostViewQtDelegateClient , public base::SupportsWeakPtr<RenderWidgetHostViewQt> +#ifndef QT_NO_ACCESSIBILITY , public QAccessible::ActivationObserver +#endif // QT_NO_ACCESSIBILITY { public: RenderWidgetHostViewQt(content::RenderWidgetHost* widget); @@ -198,8 +200,9 @@ public: // Overridden from content::BrowserAccessibilityDelegate virtual content::BrowserAccessibilityManager* CreateBrowserAccessibilityManager(content::BrowserAccessibilityDelegate* delegate) Q_DECL_OVERRIDE; +#ifndef QT_NO_ACCESSIBILITY virtual void accessibilityActiveChanged(bool active) Q_DECL_OVERRIDE; - +#endif // QT_NO_ACCESSIBILITY void didFirstVisuallyNonEmptyLayout(); private: diff --git a/src/core/web_contents_adapter.cpp b/src/core/web_contents_adapter.cpp index d7dfcb97c..38573d833 100644 --- a/src/core/web_contents_adapter.cpp +++ b/src/core/web_contents_adapter.cpp @@ -670,6 +670,7 @@ BrowserContextQt* WebContentsAdapter::browserContext() return d->browserContextAdapter->browserContext(); } +#ifndef QT_NO_ACCESSIBILITY QAccessibleInterface *WebContentsAdapter::browserAccessible() { Q_D(const WebContentsAdapter); @@ -680,6 +681,7 @@ QAccessibleInterface *WebContentsAdapter::browserAccessible() content::BrowserAccessibilityQt *accQt = static_cast<content::BrowserAccessibilityQt*>(acc); return accQt; } +#endif // QT_NO_ACCESSIBILITY void WebContentsAdapter::runJavaScript(const QString &javaScript) { diff --git a/src/core/web_contents_adapter_client.h b/src/core/web_contents_adapter_client.h index f4e2c658f..8252a73ca 100644 --- a/src/core/web_contents_adapter_client.h +++ b/src/core/web_contents_adapter_client.h @@ -169,7 +169,9 @@ public: virtual void passOnFocus(bool reverse) = 0; // returns the last QObject (QWidget/QQuickItem) based object in the accessibility // hierarchy before going into the BrowserAccessibility tree +#ifndef QT_NO_ACCESSIBILITY virtual QObject *accessibilityParentObject() = 0; +#endif // QT_NO_ACCESSIBILITY virtual void javaScriptConsoleMessage(JavaScriptConsoleMessageLevel level, const QString& message, int lineNumber, const QString& sourceID) = 0; virtual void authenticationRequired(const QUrl &requestUrl, const QString &realm, bool isProxy, const QString &challengingHost, QString *outUser, QString *outPassword) = 0; virtual void runGeolocationPermissionRequest(const QUrl &securityOrigin) = 0; |