summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMorten Sørvig <morten.sorvig@qt.io>2023-03-01 13:11:10 +0100
committerMorten Sørvig <morten.sorvig@qt.io>2023-05-02 14:54:19 +0200
commit3c23d701a777522e96e210e5836bc5803a951d77 (patch)
tree5c244762bea3b8593700f4933ebe8bacbca89471
parentb6d04c8a823ab8486d72ca6dd72ab3007a6627a7 (diff)
wasm: build with -no-feature-accessibility
Add #ifdefs around the accessibility implementation. Fixes: QTBUG-111509 Pick-to: 6.5 Change-Id: I9a600781b4bf9545f046efa75f962cc40fe196a6 Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io>
-rw-r--r--src/plugins/platforms/wasm/qwasmaccessibility.cpp7
-rw-r--r--src/plugins/platforms/wasm/qwasmaccessibility.h4
-rw-r--r--src/plugins/platforms/wasm/qwasmintegration.cpp12
-rw-r--r--src/plugins/platforms/wasm/qwasmwindow.cpp4
4 files changed, 22 insertions, 5 deletions
diff --git a/src/plugins/platforms/wasm/qwasmaccessibility.cpp b/src/plugins/platforms/wasm/qwasmaccessibility.cpp
index 0509e69c13..b0e16d8b36 100644
--- a/src/plugins/platforms/wasm/qwasmaccessibility.cpp
+++ b/src/plugins/platforms/wasm/qwasmaccessibility.cpp
@@ -5,10 +5,13 @@
#include "qwasmscreen.h"
#include "qwasmwindow.h"
#include "qwasmintegration.h"
-#include <QtGui/private/qaccessiblebridgeutils_p.h>
#include <QtGui/qwindow.h>
+#if QT_CONFIG(accessibility)
+
+#include <QtGui/private/qaccessiblebridgeutils_p.h>
+
Q_LOGGING_CATEGORY(lcQpaAccessibility, "qt.qpa.accessibility")
// Qt WebAssembly a11y backend
@@ -729,3 +732,5 @@ void QWasmAccessibility::onHtmlEventReceived(emscripten::val event)
EMSCRIPTEN_BINDINGS(qtButtonEvent) {
function("qtEventReceived", &QWasmAccessibility::onHtmlEventReceived);
}
+
+#endif // QT_CONFIG(accessibility)
diff --git a/src/plugins/platforms/wasm/qwasmaccessibility.h b/src/plugins/platforms/wasm/qwasmaccessibility.h
index dd9770179a..7582f468ae 100644
--- a/src/plugins/platforms/wasm/qwasmaccessibility.h
+++ b/src/plugins/platforms/wasm/qwasmaccessibility.h
@@ -4,6 +4,8 @@
#ifndef QWASMACCESIBILITY_H
#define QWASMACCESIBILITY_H
+#if QT_CONFIG(accessibility)
+
#include <QtCore/qhash.h>
#include <private/qstdweb_p.h>
#include <qpa/qplatformaccessibility.h>
@@ -81,4 +83,6 @@ private:
};
+#endif // QT_CONFIG(accessibility)
+
#endif
diff --git a/src/plugins/platforms/wasm/qwasmintegration.cpp b/src/plugins/platforms/wasm/qwasmintegration.cpp
index 2bdb3b7c69..5dc96e0f3c 100644
--- a/src/plugins/platforms/wasm/qwasmintegration.cpp
+++ b/src/plugins/platforms/wasm/qwasmintegration.cpp
@@ -76,10 +76,12 @@ EMSCRIPTEN_BINDINGS(qtQWasmIntegraton)
QWasmIntegration *QWasmIntegration::s_instance;
QWasmIntegration::QWasmIntegration()
- : m_fontDb(nullptr),
- m_desktopServices(nullptr),
- m_clipboard(new QWasmClipboard),
- m_accessibility(new QWasmAccessibility)
+ : m_fontDb(nullptr)
+ , m_desktopServices(nullptr)
+ , m_clipboard(new QWasmClipboard)
+#if QT_CONFIG(accessibility)
+ , m_accessibility(new QWasmAccessibility)
+#endif
{
s_instance = this;
@@ -142,7 +144,9 @@ QWasmIntegration::~QWasmIntegration()
delete m_desktopServices;
if (m_platformInputContext)
delete m_platformInputContext;
+#if QT_CONFIG(accessibility)
delete m_accessibility;
+#endif
for (const auto &elementAndScreen : m_screens)
elementAndScreen.second->deleteScreen();
diff --git a/src/plugins/platforms/wasm/qwasmwindow.cpp b/src/plugins/platforms/wasm/qwasmwindow.cpp
index 8e2d203ba7..d1582d8801 100644
--- a/src/plugins/platforms/wasm/qwasmwindow.cpp
+++ b/src/plugins/platforms/wasm/qwasmwindow.cpp
@@ -134,7 +134,9 @@ QWasmWindow::~QWasmWindow()
m_compositor->removeWindow(this);
if (m_requestAnimationFrameId > -1)
emscripten_cancel_animation_frame(m_requestAnimationFrameId);
+#if QT_CONFIG(accessibility)
QWasmAccessibility::removeAccessibilityEnableButton(window());
+#endif
}
void QWasmWindow::onRestoreClicked()
@@ -212,10 +214,12 @@ void QWasmWindow::initialize()
m_normalGeometry = rect;
QPlatformWindow::setGeometry(m_normalGeometry);
+#if QT_CONFIG(accessibility)
// Add accessibility-enable button. The user can activate this
// button to opt-in to accessibility.
if (window()->isTopLevel())
QWasmAccessibility::addAccessibilityEnableButton(window());
+#endif
}
QWasmScreen *QWasmWindow::platformScreen() const