summaryrefslogtreecommitdiffstats
path: root/src/core/browser_accessibility_manager_qt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/browser_accessibility_manager_qt.cpp')
-rw-r--r--src/core/browser_accessibility_manager_qt.cpp25
1 files changed, 18 insertions, 7 deletions
diff --git a/src/core/browser_accessibility_manager_qt.cpp b/src/core/browser_accessibility_manager_qt.cpp
index 2d1d9f1ae..b1d7f1a22 100644
--- a/src/core/browser_accessibility_manager_qt.cpp
+++ b/src/core/browser_accessibility_manager_qt.cpp
@@ -40,30 +40,41 @@
#include "browser_accessibility_manager_qt.h"
#include "ui/accessibility/ax_enums.mojom.h"
+
#include "browser_accessibility_qt.h"
+#include "render_widget_host_view_qt.h"
using namespace blink;
namespace content {
-BrowserAccessibilityManager* BrowserAccessibilityManager::Create(
- const ui::AXTreeUpdate& initialTree,
- BrowserAccessibilityDelegate* delegate)
+// static
+BrowserAccessibilityManager *BrowserAccessibilityManager::Create(
+ const ui::AXTreeUpdate &initialTree,
+ BrowserAccessibilityDelegate *delegate)
{
#if QT_CONFIG(accessibility)
- return new BrowserAccessibilityManagerQt(nullptr, initialTree, delegate);
+ Q_ASSERT(delegate);
+ QObject *parent = nullptr;
+ if (delegate->AccessibilityIsMainFrame()) {
+ auto *access = static_cast<QtWebEngineCore::WebContentsAccessibilityQt *>(delegate->AccessibilityGetWebContentsAccessibility());
+ parent = access ? access->accessibilityParentObject() : nullptr;
+ }
+ return new BrowserAccessibilityManagerQt(parent, initialTree, delegate);
#else
return nullptr;
#endif // QT_CONFIG(accessibility)
}
-BrowserAccessibility *BrowserAccessibility::Create()
+// static
+BrowserAccessibilityManager *BrowserAccessibilityManager::Create(
+ BrowserAccessibilityDelegate *delegate)
{
#if QT_CONFIG(accessibility)
- return new BrowserAccessibilityQt();
+ return BrowserAccessibilityManager::Create(BrowserAccessibilityManagerQt::GetEmptyDocument(), delegate);
#else
return nullptr;
-#endif // QT_CONFIG(accessibility)
+#endif
}
#if QT_CONFIG(accessibility)