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

Side by Side Diff: content/browser/accessibility/accessibility_ui.cc

Issue 2285933003: Remove more usage of the base::ListValue::Append(Value*) overload. (Closed)
Patch Set: rebase Created 4 years, 3 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 unified diff | Download patch
OLDNEW
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 <memory>
8
7 #include "base/bind.h" 9 #include "base/bind.h"
8 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
9 #include "base/json/json_writer.h" 11 #include "base/json/json_writer.h"
10 #include "base/strings/string_number_conversions.h" 12 #include "base/strings/string_number_conversions.h"
11 #include "base/strings/utf_string_conversions.h" 13 #include "base/strings/utf_string_conversions.h"
12 #include "base/values.h" 14 #include "base/values.h"
13 #include "content/browser/accessibility/accessibility_tree_formatter.h" 15 #include "content/browser/accessibility/accessibility_tree_formatter.h"
14 #include "content/browser/accessibility/accessibility_tree_formatter_blink.h" 16 #include "content/browser/accessibility/accessibility_tree_formatter_blink.h"
15 #include "content/browser/accessibility/browser_accessibility_manager.h" 17 #include "content/browser/accessibility/browser_accessibility_manager.h"
16 #include "content/browser/accessibility/browser_accessibility_state_impl.h" 18 #include "content/browser/accessibility/browser_accessibility_state_impl.h"
(...skipping 22 matching lines...) Expand all
39 static const char kFaviconUrlField[] = "favicon_url"; 41 static const char kFaviconUrlField[] = "favicon_url";
40 static const char kPidField[] = "pid"; 42 static const char kPidField[] = "pid";
41 static const char kAccessibilityModeField[] = "a11y_mode"; 43 static const char kAccessibilityModeField[] = "a11y_mode";
42 44
43 namespace content { 45 namespace content {
44 46
45 namespace { 47 namespace {
46 48
47 bool g_show_internal_accessibility_tree = false; 49 bool g_show_internal_accessibility_tree = false;
48 50
49 base::DictionaryValue* BuildTargetDescriptor( 51 std::unique_ptr<base::DictionaryValue> BuildTargetDescriptor(
50 const GURL& url, 52 const GURL& url,
51 const std::string& name, 53 const std::string& name,
52 const GURL& favicon_url, 54 const GURL& favicon_url,
53 int process_id, 55 int process_id,
54 int route_id, 56 int route_id,
55 AccessibilityMode accessibility_mode, 57 AccessibilityMode accessibility_mode,
56 base::ProcessHandle handle = base::kNullProcessHandle) { 58 base::ProcessHandle handle = base::kNullProcessHandle) {
57 base::DictionaryValue* target_data = new base::DictionaryValue(); 59 std::unique_ptr<base::DictionaryValue> target_data(
60 new base::DictionaryValue());
58 target_data->SetInteger(kProcessIdField, process_id); 61 target_data->SetInteger(kProcessIdField, process_id);
59 target_data->SetInteger(kRouteIdField, route_id); 62 target_data->SetInteger(kRouteIdField, route_id);
60 target_data->SetString(kUrlField, url.spec()); 63 target_data->SetString(kUrlField, url.spec());
61 target_data->SetString(kNameField, net::EscapeForHTML(name)); 64 target_data->SetString(kNameField, net::EscapeForHTML(name));
62 target_data->SetInteger(kPidField, base::GetProcId(handle)); 65 target_data->SetInteger(kPidField, base::GetProcId(handle));
63 target_data->SetString(kFaviconUrlField, favicon_url.spec()); 66 target_data->SetString(kFaviconUrlField, favicon_url.spec());
64 target_data->SetInteger(kAccessibilityModeField, 67 target_data->SetInteger(kAccessibilityModeField,
65 accessibility_mode); 68 accessibility_mode);
66 return target_data; 69 return target_data;
67 } 70 }
68 71
69 base::DictionaryValue* BuildTargetDescriptor(RenderViewHost* rvh) { 72 std::unique_ptr<base::DictionaryValue> BuildTargetDescriptor(
73 RenderViewHost* rvh) {
70 WebContentsImpl* web_contents = static_cast<WebContentsImpl*>( 74 WebContentsImpl* web_contents = static_cast<WebContentsImpl*>(
71 WebContents::FromRenderViewHost(rvh)); 75 WebContents::FromRenderViewHost(rvh));
72 AccessibilityMode accessibility_mode = AccessibilityModeOff; 76 AccessibilityMode accessibility_mode = AccessibilityModeOff;
73 77
74 std::string title; 78 std::string title;
75 GURL url; 79 GURL url;
76 GURL favicon_url; 80 GURL favicon_url;
77 if (web_contents) { 81 if (web_contents) {
78 // TODO(nasko): Fix the following code to use a consistent set of data 82 // TODO(nasko): Fix the following code to use a consistent set of data
79 // across the URL, title, and favicon. 83 // across the URL, title, and favicon.
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 web_contents->GetRootBrowserAccessibilityManager()->GetRoot(), 257 web_contents->GetRootBrowserAccessibilityManager()->GetRoot(),
254 &accessibility_contents_utf16); 258 &accessibility_contents_utf16);
255 result->Set("tree", 259 result->Set("tree",
256 new base::StringValue( 260 new base::StringValue(
257 base::UTF16ToUTF8(accessibility_contents_utf16))); 261 base::UTF16ToUTF8(accessibility_contents_utf16)));
258 web_ui()->CallJavascriptFunctionUnsafe("accessibility.showTree", 262 web_ui()->CallJavascriptFunctionUnsafe("accessibility.showTree",
259 *(result.get())); 263 *(result.get()));
260 } 264 }
261 265
262 } // namespace content 266 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698