diff options
author | Peter Varga <pvarga@inf.u-szeged.hu> | 2020-01-15 10:47:37 +0100 |
---|---|---|
committer | Peter Varga <pvarga@inf.u-szeged.hu> | 2020-02-17 23:25:11 +0000 |
commit | 2d7a173b1f00c108cdf2ab451ff7f9af0094c2fa (patch) | |
tree | f2126b080c08b3f249105835d6a111092bb4e1e4 /src/webengine/render_widget_host_view_qt_delegate_quick.cpp | |
parent | 2cbd4ba7703756c3b0b5b37b118e755e5ea0bfe6 (diff) |
Fix quick accessibility on macOS
Same as the widget fix:
ffdf7ece Fix widget accessibility on macOS
This patch depends on a focusChild() fix in qtdeclarative:
6420ad91d3 Fix QAccessibleQuickWindow::focusChild() to return focused descendant
Task-number: QTBUG-78284
Task-number: QTBUG-81539
Change-Id: If0da937d2c778a158ce02e1433b28ca0888692d8
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/webengine/render_widget_host_view_qt_delegate_quick.cpp')
-rw-r--r-- | src/webengine/render_widget_host_view_qt_delegate_quick.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp index ac32671aa..ede85ca69 100644 --- a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp +++ b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp @@ -373,4 +373,53 @@ bool RenderWidgetHostViewQtDelegateQuick::copySurface(const QRect &rect, const Q return true; } +#if QT_CONFIG(accessibility) +RenderWidgetHostViewQtDelegateQuickAccessible::RenderWidgetHostViewQtDelegateQuickAccessible(RenderWidgetHostViewQtDelegateQuick *o, QQuickWebEngineView *view) + : QAccessibleObject(o) + , m_view(view) +{ +} + +QAccessibleInterface *RenderWidgetHostViewQtDelegateQuickAccessible::parent() const +{ + return QAccessible::queryAccessibleInterface(m_view)->parent(); +} + +QString RenderWidgetHostViewQtDelegateQuickAccessible::text(QAccessible::Text) const +{ + return QString(); +} + +QAccessible::Role RenderWidgetHostViewQtDelegateQuickAccessible::role() const +{ + return QAccessible::Client; +} + +QAccessible::State RenderWidgetHostViewQtDelegateQuickAccessible::state() const +{ + return QAccessible::queryAccessibleInterface(m_view)->state(); +} + +QAccessibleInterface *RenderWidgetHostViewQtDelegateQuickAccessible::focusChild() const +{ + return QAccessible::queryAccessibleInterface(m_view)->focusChild(); +} + +int RenderWidgetHostViewQtDelegateQuickAccessible::childCount() const +{ + return QAccessible::queryAccessibleInterface(m_view)->childCount(); +} + +QAccessibleInterface *RenderWidgetHostViewQtDelegateQuickAccessible::child(int index) const +{ + return QAccessible::queryAccessibleInterface(m_view)->child(index); +} + +int RenderWidgetHostViewQtDelegateQuickAccessible::indexOfChild(const QAccessibleInterface *c) const +{ + return QAccessible::queryAccessibleInterface(m_view)->indexOfChild(c); +} + +#endif // QT_CONFIG(accessibility) + } // namespace QtWebEngineCore |