OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/accessibility/accessibility_ui.h" | 5 #include "content/browser/accessibility/accessibility_ui.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/json/json_writer.h" | 9 #include "base/json/json_writer.h" |
10 #include "base/strings/string_number_conversions.h" | 10 #include "base/strings/string_number_conversions.h" |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 target_data->SetInteger(kPidField, base::GetProcId(handle)); | 59 target_data->SetInteger(kPidField, base::GetProcId(handle)); |
60 target_data->SetString(kFaviconUrlField, favicon_url.spec()); | 60 target_data->SetString(kFaviconUrlField, favicon_url.spec()); |
61 target_data->SetInteger(kAccessibilityModeField, | 61 target_data->SetInteger(kAccessibilityModeField, |
62 accessibility_mode); | 62 accessibility_mode); |
63 return target_data; | 63 return target_data; |
64 } | 64 } |
65 | 65 |
66 base::DictionaryValue* BuildTargetDescriptor(RenderViewHost* rvh) { | 66 base::DictionaryValue* BuildTargetDescriptor(RenderViewHost* rvh) { |
67 WebContentsImpl* web_contents = static_cast<WebContentsImpl*>( | 67 WebContentsImpl* web_contents = static_cast<WebContentsImpl*>( |
68 WebContents::FromRenderViewHost(rvh)); | 68 WebContents::FromRenderViewHost(rvh)); |
69 AccessibilityMode accessibility_mode = web_contents->GetAccessibilityMode(); | 69 AccessibilityMode accessibility_mode = AccessibilityModeOff; |
70 | 70 |
71 std::string title; | 71 std::string title; |
72 GURL url; | 72 GURL url; |
73 GURL favicon_url; | 73 GURL favicon_url; |
74 if (web_contents) { | 74 if (web_contents) { |
75 // TODO(nasko): Fix the following code to use a consistent set of data | 75 // TODO(nasko): Fix the following code to use a consistent set of data |
76 // across the URL, title, and favicon. | 76 // across the URL, title, and favicon. |
77 url = web_contents->GetURL(); | 77 url = web_contents->GetURL(); |
78 title = base::UTF16ToUTF8(web_contents->GetTitle()); | 78 title = base::UTF16ToUTF8(web_contents->GetTitle()); |
79 NavigationController& controller = web_contents->GetController(); | 79 NavigationController& controller = web_contents->GetController(); |
80 NavigationEntry* entry = controller.GetVisibleEntry(); | 80 NavigationEntry* entry = controller.GetVisibleEntry(); |
81 if (entry != NULL && entry->GetURL().is_valid()) | 81 if (entry != NULL && entry->GetURL().is_valid()) |
82 favicon_url = entry->GetFavicon().url; | 82 favicon_url = entry->GetFavicon().url; |
| 83 accessibility_mode = web_contents->GetAccessibilityMode(); |
83 } | 84 } |
84 | 85 |
85 return BuildTargetDescriptor(url, | 86 return BuildTargetDescriptor(url, |
86 title, | 87 title, |
87 favicon_url, | 88 favicon_url, |
88 rvh->GetProcess()->GetID(), | 89 rvh->GetProcess()->GetID(), |
89 rvh->GetRoutingID(), | 90 rvh->GetRoutingID(), |
90 accessibility_mode); | 91 accessibility_mode); |
91 } | 92 } |
92 | 93 |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
232 formatter->SetFilters(filters); | 233 formatter->SetFilters(filters); |
233 formatter->FormatAccessibilityTree(&accessibility_contents_utf16); | 234 formatter->FormatAccessibilityTree(&accessibility_contents_utf16); |
234 | 235 |
235 result->Set("tree", | 236 result->Set("tree", |
236 new base::StringValue( | 237 new base::StringValue( |
237 base::UTF16ToUTF8(accessibility_contents_utf16))); | 238 base::UTF16ToUTF8(accessibility_contents_utf16))); |
238 web_ui()->CallJavascriptFunction("accessibility.showTree", *(result.get())); | 239 web_ui()->CallJavascriptFunction("accessibility.showTree", *(result.get())); |
239 } | 240 } |
240 | 241 |
241 } // namespace content | 242 } // namespace content |
OLD | NEW |