Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(893)

Unified Diff: content/browser/accessibility/dump_accessibility_tree_helper.cc

Issue 12335101: Move some accessibility methods, enums and interfaces into the content/public API. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Fix virtual method with no implementation, non-explicit single argument constructor Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/accessibility/dump_accessibility_tree_helper.cc
diff --git a/content/browser/accessibility/dump_accessibility_tree_helper.cc b/content/browser/accessibility/dump_accessibility_tree_helper.cc
index 99efca21b3209a2a2b3c40fd44d04799ecb465cb..8d6b31cda3a4cb9521fe5fc514f56ef288bd2f5c 100644
--- a/content/browser/accessibility/dump_accessibility_tree_helper.cc
+++ b/content/browser/accessibility/dump_accessibility_tree_helper.cc
@@ -8,6 +8,10 @@
#include "base/memory/scoped_ptr.h"
#include "base/string_util.h"
#include "base/utf_string_conversions.h"
+#include "content/browser/accessibility/browser_accessibility_manager.h"
+#include "content/port/browser/render_widget_host_view_port.h"
+#include "content/public/browser/render_view_host.h"
+#include "content/public/browser/web_contents.h"
namespace content {
namespace {
@@ -15,16 +19,33 @@ const int kIndentSpaces = 4;
const char* kSkipString = "@NO_DUMP";
}
-DumpAccessibilityTreeHelper::DumpAccessibilityTreeHelper() {
+DumpAccessibilityTreeHelper::DumpAccessibilityTreeHelper(
+ BrowserAccessibility* node)
+ : node_(node) {
Initialize();
}
+// static
+AccessibilityTreeFormatter* AccessibilityTreeFormatter::From(
+ RenderViewHost* rvh) {
+ RenderWidgetHostViewPort* host_view = static_cast<RenderWidgetHostViewPort*>(
+ WebContents::FromRenderViewHost(rvh)->GetRenderWidgetHostView());
+
+ content::BrowserAccessibilityManager* manager =
+ host_view->GetBrowserAccessibilityManager();
+ if (!manager)
+ return NULL;
+
+ content::BrowserAccessibility* root = manager->GetRoot();
+ return new DumpAccessibilityTreeHelper(root);
+}
+
+
DumpAccessibilityTreeHelper::~DumpAccessibilityTreeHelper() {
}
-void DumpAccessibilityTreeHelper::DumpAccessibilityTree(
- BrowserAccessibility* node, string16* contents) {
- RecursiveDumpAccessibilityTree(node, contents, 0);
+void DumpAccessibilityTreeHelper::FormatAccessibilityTree(string16* contents) {
+ RecursiveDumpAccessibilityTree(node_, contents, 0);
}
void DumpAccessibilityTreeHelper::RecursiveDumpAccessibilityTree(
@@ -51,7 +72,7 @@ void DumpAccessibilityTreeHelper::SetFilters(
}
bool DumpAccessibilityTreeHelper::MatchesFilters(
- const string16& text, bool default_result) {
+ const string16& text, bool default_result) const {
std::vector<Filter>::const_iterator iter = filters_.begin();
bool allow = default_result;
for (iter = filters_.begin(); iter != filters_.end(); ++iter) {

Powered by Google App Engine
This is Rietveld 408576698