summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
authorMichael BrĂ¼ning <michael.bruning@theqtcompany.com>2015-01-20 16:20:42 +0100
committerMichael BrĂ¼ning <michael.bruning@theqtcompany.com>2015-01-23 11:52:08 +0100
commitd95b9295c970401939d2779cbdc9e2a8c7965277 (patch)
tree16dacd587d16ebf84369783faeca45c5e8178ff8 /src/core
parent82bef8eb423bc7a9f607fda95cd980a8b2816056 (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.cpp6
-rw-r--r--src/core/browser_accessibility_manager_qt.h2
-rw-r--r--src/core/browser_accessibility_qt.cpp3
-rw-r--r--src/core/browser_accessibility_qt.h2
-rw-r--r--src/core/render_widget_host_view_qt.cpp11
-rw-r--r--src/core/render_widget_host_view_qt.h7
-rw-r--r--src/core/web_contents_adapter.cpp2
-rw-r--r--src/core/web_contents_adapter_client.h2
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;