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

Side by Side Diff: chrome/browser/ui/webui/inspect_ui.cc

Issue 22277007: chrome://inspect: Add "open", "close" and "reload" actions to Devices tab (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « chrome/browser/ui/webui/inspect_ui.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/ui/webui/inspect_ui.h" 5 #include "chrome/browser/ui/webui/inspect_ui.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
11 #include "base/json/json_writer.h" 11 #include "base/json/json_writer.h"
12 #include "base/memory/ref_counted_memory.h" 12 #include "base/memory/ref_counted_memory.h"
13 #include "base/strings/string_number_conversions.h" 13 #include "base/strings/string_number_conversions.h"
14 #include "base/strings/string_util.h" 14 #include "base/strings/string_util.h"
15 #include "base/strings/stringprintf.h"
15 #include "base/strings/utf_string_conversions.h" 16 #include "base/strings/utf_string_conversions.h"
16 #include "base/values.h" 17 #include "base/values.h"
17 #include "chrome/browser/devtools/devtools_window.h" 18 #include "chrome/browser/devtools/devtools_window.h"
18 #include "chrome/browser/extensions/extension_service.h" 19 #include "chrome/browser/extensions/extension_service.h"
19 #include "chrome/browser/profiles/profile.h" 20 #include "chrome/browser/profiles/profile.h"
20 #include "chrome/browser/ui/tab_contents/tab_contents_iterator.h" 21 #include "chrome/browser/ui/tab_contents/tab_contents_iterator.h"
21 #include "chrome/browser/ui/webui/theme_source.h" 22 #include "chrome/browser/ui/webui/theme_source.h"
22 #include "chrome/common/pref_names.h" 23 #include "chrome/common/pref_names.h"
23 #include "chrome/common/url_constants.h" 24 #include "chrome/common/url_constants.h"
24 #include "content/public/browser/browser_thread.h" 25 #include "content/public/browser/browser_thread.h"
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 68
68 static const char kAppTargetType[] = "app"; 69 static const char kAppTargetType[] = "app";
69 static const char kExtensionTargetType[] = "extension"; 70 static const char kExtensionTargetType[] = "extension";
70 static const char kPageTargetType[] = "page"; 71 static const char kPageTargetType[] = "page";
71 static const char kWorkerTargetType[] = "worker"; 72 static const char kWorkerTargetType[] = "worker";
72 static const char kAdbTargetType[] = "adb_page"; 73 static const char kAdbTargetType[] = "adb_page";
73 74
74 static const char kInitUICommand[] = "init-ui"; 75 static const char kInitUICommand[] = "init-ui";
75 static const char kInspectCommand[] = "inspect"; 76 static const char kInspectCommand[] = "inspect";
76 static const char kTerminateCommand[] = "terminate"; 77 static const char kTerminateCommand[] = "terminate";
78 static const char kReloadCommand[] = "reload";
79 static const char kOpenCommand[] = "open";
80
77 static const char kPortForwardingEnabledCommand[] = 81 static const char kPortForwardingEnabledCommand[] =
78 "set-port-forwarding-enabled"; 82 "set-port-forwarding-enabled";
79 static const char kPortForwardingConfigCommand[] = "set-port-forwarding-config"; 83 static const char kPortForwardingConfigCommand[] = "set-port-forwarding-config";
80 84
81 static const char kTargetTypeField[] = "type"; 85 static const char kTargetTypeField[] = "type";
82 static const char kAttachedField[] = "attached"; 86 static const char kAttachedField[] = "attached";
83 static const char kProcessIdField[] = "processId"; 87 static const char kProcessIdField[] = "processId";
84 static const char kRouteIdField[] = "routeId"; 88 static const char kRouteIdField[] = "routeId";
85 static const char kUrlField[] = "url"; 89 static const char kUrlField[] = "url";
86 static const char kNameField[] = "name"; 90 static const char kNameField[] = "name";
87 static const char kFaviconUrlField[] = "faviconUrl"; 91 static const char kFaviconUrlField[] = "faviconUrl";
88 static const char kPidField[] = "pid"; 92 static const char kPidField[] = "pid";
89 static const char kAdbSerialField[] = "adbSerial"; 93 static const char kAdbSerialField[] = "adbSerial";
90 static const char kAdbModelField[] = "adbModel"; 94 static const char kAdbModelField[] = "adbModel";
91 static const char kAdbBrowserNameField[] = "adbBrowserName"; 95 static const char kAdbBrowserNameField[] = "adbBrowserName";
92 static const char kAdbPageIdField[] = "adbPageId"; 96 static const char kAdbGlobalIdField[] = "adbGlobalId";
93 static const char kAdbBrowsersField[] = "browsers"; 97 static const char kAdbBrowsersField[] = "browsers";
94 static const char kAdbPagesField[] = "pages"; 98 static const char kAdbPagesField[] = "pages";
95 99
96 DictionaryValue* BuildTargetDescriptor( 100 DictionaryValue* BuildTargetDescriptor(
97 const std::string& target_type, 101 const std::string& target_type,
98 bool attached, 102 bool attached,
99 const GURL& url, 103 const GURL& url,
100 const std::string& name, 104 const std::string& name,
101 const GURL& favicon_url, 105 const GURL& favicon_url,
102 int process_id, 106 int process_id,
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 : inspect_ui_(inspect_ui) {} 175 : inspect_ui_(inspect_ui) {}
172 virtual ~InspectMessageHandler() {} 176 virtual ~InspectMessageHandler() {}
173 177
174 private: 178 private:
175 // WebUIMessageHandler implementation. 179 // WebUIMessageHandler implementation.
176 virtual void RegisterMessages() OVERRIDE; 180 virtual void RegisterMessages() OVERRIDE;
177 181
178 void HandleInitUICommand(const ListValue* args); 182 void HandleInitUICommand(const ListValue* args);
179 void HandleInspectCommand(const ListValue* args); 183 void HandleInspectCommand(const ListValue* args);
180 void HandleTerminateCommand(const ListValue* args); 184 void HandleTerminateCommand(const ListValue* args);
185 void HandleReloadCommand(const ListValue* args);
186 void HandleOpenCommand(const ListValue* args);
181 void HandlePortForwardingEnabledCommand(const ListValue* args); 187 void HandlePortForwardingEnabledCommand(const ListValue* args);
182 void HandlePortForwardingConfigCommand(const ListValue* args); 188 void HandlePortForwardingConfigCommand(const ListValue* args);
183 189
184 bool GetProcessAndRouteId(const ListValue* args, 190 static bool GetProcessAndRouteId(const ListValue* args,
185 int* process_id, 191 int* process_id,
186 int* route_id); 192 int* route_id);
193
194 static bool GetRemotePageId(const ListValue* args, std::string* page_id);
187 195
188 InspectUI* inspect_ui_; 196 InspectUI* inspect_ui_;
189 197
190 DISALLOW_COPY_AND_ASSIGN(InspectMessageHandler); 198 DISALLOW_COPY_AND_ASSIGN(InspectMessageHandler);
191 }; 199 };
192 200
193 void InspectMessageHandler::RegisterMessages() { 201 void InspectMessageHandler::RegisterMessages() {
194 web_ui()->RegisterMessageCallback(kInitUICommand, 202 web_ui()->RegisterMessageCallback(kInitUICommand,
195 base::Bind(&InspectMessageHandler::HandleInitUICommand, 203 base::Bind(&InspectMessageHandler::HandleInitUICommand,
196 base::Unretained(this))); 204 base::Unretained(this)));
197 web_ui()->RegisterMessageCallback(kInspectCommand, 205 web_ui()->RegisterMessageCallback(kInspectCommand,
198 base::Bind(&InspectMessageHandler::HandleInspectCommand, 206 base::Bind(&InspectMessageHandler::HandleInspectCommand,
199 base::Unretained(this))); 207 base::Unretained(this)));
200 web_ui()->RegisterMessageCallback(kTerminateCommand, 208 web_ui()->RegisterMessageCallback(kTerminateCommand,
201 base::Bind(&InspectMessageHandler::HandleTerminateCommand, 209 base::Bind(&InspectMessageHandler::HandleTerminateCommand,
202 base::Unretained(this))); 210 base::Unretained(this)));
203 web_ui()->RegisterMessageCallback(kPortForwardingEnabledCommand, 211 web_ui()->RegisterMessageCallback(kPortForwardingEnabledCommand,
204 base::Bind(&InspectMessageHandler::HandlePortForwardingEnabledCommand, 212 base::Bind(&InspectMessageHandler::HandlePortForwardingEnabledCommand,
205 base::Unretained(this))); 213 base::Unretained(this)));
206 web_ui()->RegisterMessageCallback(kPortForwardingConfigCommand, 214 web_ui()->RegisterMessageCallback(kPortForwardingConfigCommand,
207 base::Bind(&InspectMessageHandler::HandlePortForwardingConfigCommand, 215 base::Bind(&InspectMessageHandler::HandlePortForwardingConfigCommand,
208 base::Unretained(this))); 216 base::Unretained(this)));
217 web_ui()->RegisterMessageCallback(kReloadCommand,
218 base::Bind(&InspectMessageHandler::HandleReloadCommand,
219 base::Unretained(this)));
220 web_ui()->RegisterMessageCallback(kOpenCommand,
221 base::Bind(&InspectMessageHandler::HandleOpenCommand,
222 base::Unretained(this)));
209 } 223 }
210 224
211 void InspectMessageHandler::HandleInitUICommand(const ListValue*) { 225 void InspectMessageHandler::HandleInitUICommand(const ListValue*) {
212 inspect_ui_->InitUI(); 226 inspect_ui_->InitUI();
213 } 227 }
214 228
215 void InspectMessageHandler::HandleInspectCommand(const ListValue* args) { 229 void InspectMessageHandler::HandleInspectCommand(const ListValue* args) {
216 Profile* profile = Profile::FromWebUI(web_ui()); 230 Profile* profile = Profile::FromWebUI(web_ui());
217 if (!profile) 231 if (!profile)
218 return; 232 return;
219 233
234 std::string page_id;
235 if (GetRemotePageId(args, &page_id)) {
236 inspect_ui_->InspectRemotePage(page_id);
237 return;
238 }
239
220 int process_id; 240 int process_id;
221 int route_id; 241 int route_id;
222 if (!GetProcessAndRouteId(args, &process_id, &route_id) || process_id == 0 242 if (!GetProcessAndRouteId(args, &process_id, &route_id) || process_id == 0
223 || route_id == 0) { 243 || route_id == 0) {
224 // Check for ADB page id
225 const DictionaryValue* data;
226 std::string page_id;
227 if (args->GetSize() == 1 && args->GetDictionary(0, &data) &&
228 data->GetString(kAdbPageIdField, &page_id)) {
229 inspect_ui_->InspectRemotePage(page_id);
230 }
231 return; 244 return;
232 } 245 }
233 246
234 RenderViewHost* rvh = RenderViewHost::FromID(process_id, route_id); 247 RenderViewHost* rvh = RenderViewHost::FromID(process_id, route_id);
235 if (rvh) { 248 if (rvh) {
236 DevToolsWindow::OpenDevToolsWindow(rvh); 249 DevToolsWindow::OpenDevToolsWindow(rvh);
237 return; 250 return;
238 } 251 }
239 252
240 scoped_refptr<DevToolsAgentHost> agent_host( 253 scoped_refptr<DevToolsAgentHost> agent_host(
241 DevToolsAgentHost::GetForWorker(process_id, route_id)); 254 DevToolsAgentHost::GetForWorker(process_id, route_id));
242 if (!agent_host.get()) 255 if (!agent_host.get())
243 return; 256 return;
244 257
245 DevToolsWindow::OpenDevToolsWindowForWorker(profile, agent_host.get()); 258 DevToolsWindow::OpenDevToolsWindowForWorker(profile, agent_host.get());
246 } 259 }
247 260
248 static void TerminateWorker(int process_id, int route_id) { 261 static void TerminateWorker(int process_id, int route_id) {
249 WorkerService::GetInstance()->TerminateWorker(process_id, route_id); 262 WorkerService::GetInstance()->TerminateWorker(process_id, route_id);
250 } 263 }
251 264
252 void InspectMessageHandler::HandleTerminateCommand(const ListValue* args) { 265 void InspectMessageHandler::HandleTerminateCommand(const ListValue* args) {
266 std::string page_id;
267 if (GetRemotePageId(args, &page_id)) {
268 inspect_ui_->CloseRemotePage(page_id);
269 return;
270 }
271
253 int process_id; 272 int process_id;
254 int route_id; 273 int route_id;
255 if (!GetProcessAndRouteId(args, &process_id, &route_id)) 274 if (!GetProcessAndRouteId(args, &process_id, &route_id))
256 return; 275 return;
257 276
258 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, 277 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE,
259 base::Bind(&TerminateWorker, process_id, route_id)); 278 base::Bind(&TerminateWorker, process_id, route_id));
260 } 279 }
261 280
281 void InspectMessageHandler::HandleReloadCommand(const ListValue* args) {
282 std::string page_id;
283 if (GetRemotePageId(args, &page_id))
284 inspect_ui_->ReloadRemotePage(page_id);
285 }
286
287 void InspectMessageHandler::HandleOpenCommand(const ListValue* args) {
288 std::string browser_id;
289 std::string url;
290 if (args->GetSize() == 2 &&
291 args->GetString(0, &browser_id) &&
292 args->GetString(1, &url)) {
293 inspect_ui_->OpenRemotePage(browser_id, url);
294 }
295 }
296
262 bool InspectMessageHandler::GetProcessAndRouteId(const ListValue* args, 297 bool InspectMessageHandler::GetProcessAndRouteId(const ListValue* args,
263 int* process_id, 298 int* process_id,
264 int* route_id) { 299 int* route_id) {
265 const DictionaryValue* data; 300 const DictionaryValue* data;
266 if (args->GetSize() == 1 && args->GetDictionary(0, &data) && 301 if (args->GetSize() == 1 && args->GetDictionary(0, &data) &&
267 data->GetInteger(kProcessIdField, process_id) && 302 data->GetInteger(kProcessIdField, process_id) &&
268 data->GetInteger(kRouteIdField, route_id)) { 303 data->GetInteger(kRouteIdField, route_id)) {
269 return true; 304 return true;
270 } 305 }
271 return false; 306 return false;
(...skipping 16 matching lines...) Expand all
288 const ListValue* args) { 323 const ListValue* args) {
289 Profile* profile = Profile::FromWebUI(web_ui()); 324 Profile* profile = Profile::FromWebUI(web_ui());
290 if (!profile) 325 if (!profile)
291 return; 326 return;
292 327
293 const DictionaryValue* dict_src; 328 const DictionaryValue* dict_src;
294 if (args->GetSize() == 1 && args->GetDictionary(0, &dict_src)) 329 if (args->GetSize() == 1 && args->GetDictionary(0, &dict_src))
295 profile->GetPrefs()->Set(prefs::kDevToolsPortForwardingConfig, *dict_src); 330 profile->GetPrefs()->Set(prefs::kDevToolsPortForwardingConfig, *dict_src);
296 } 331 }
297 332
333 bool InspectMessageHandler::GetRemotePageId(const ListValue* args,
334 std::string* page_id) {
335 const DictionaryValue* data;
336 if (args->GetSize() == 1 && args->GetDictionary(0, &data) &&
337 data->GetString(kAdbGlobalIdField, page_id)) {
338 return true;
339 }
340 return false;
341 }
342
298 } // namespace 343 } // namespace
299 344
300 class InspectUI::WorkerCreationDestructionListener 345 class InspectUI::WorkerCreationDestructionListener
301 : public WorkerServiceObserver, 346 : public WorkerServiceObserver,
302 public base::RefCountedThreadSafe<WorkerCreationDestructionListener> { 347 public base::RefCountedThreadSafe<WorkerCreationDestructionListener> {
303 public: 348 public:
304 WorkerCreationDestructionListener() 349 WorkerCreationDestructionListener()
305 : discovery_ui_(NULL) {} 350 : discovery_ui_(NULL) {}
306 351
307 void Init(InspectUI* workers_ui) { 352 void Init(InspectUI* workers_ui) {
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 } 457 }
413 458
414 void InspectUI::InspectRemotePage(const std::string& id) { 459 void InspectUI::InspectRemotePage(const std::string& id) {
415 RemotePages::iterator it = remote_pages_.find(id); 460 RemotePages::iterator it = remote_pages_.find(id);
416 if (it != remote_pages_.end()) { 461 if (it != remote_pages_.end()) {
417 Profile* profile = Profile::FromWebUI(web_ui()); 462 Profile* profile = Profile::FromWebUI(web_ui());
418 it->second->Inspect(profile); 463 it->second->Inspect(profile);
419 } 464 }
420 } 465 }
421 466
467 void InspectUI::ReloadRemotePage(const std::string& id) {
468 RemotePages::iterator it = remote_pages_.find(id);
469 if (it != remote_pages_.end())
470 it->second->Reload();
471 }
472
473 void InspectUI::CloseRemotePage(const std::string& id) {
474 RemotePages::iterator it = remote_pages_.find(id);
475 if (it != remote_pages_.end())
476 it->second->Close();
477 }
478
479 void InspectUI::OpenRemotePage(const std::string& browser_id,
480 const std::string& url) {
481 GURL gurl(url);
482 if (!gurl.is_valid()) {
483 gurl = GURL("http://" + url);
484 if (!gurl.is_valid())
485 return;
486 }
487 RemoteBrowsers::iterator it = remote_browsers_.find(browser_id);
488 if (it != remote_browsers_.end())
489 it->second->Open(gurl.spec());
490 }
491
422 void InspectUI::PopulateLists() { 492 void InspectUI::PopulateLists() {
423 std::set<RenderViewHost*> tab_rvhs; 493 std::set<RenderViewHost*> tab_rvhs;
424 for (TabContentsIterator it; !it.done(); it.Next()) 494 for (TabContentsIterator it; !it.done(); it.Next())
425 tab_rvhs.insert(it->GetRenderViewHost()); 495 tab_rvhs.insert(it->GetRenderViewHost());
426 496
427 scoped_ptr<ListValue> target_list(new ListValue()); 497 scoped_ptr<ListValue> target_list(new ListValue());
428 498
429 std::vector<RenderViewHost*> rvh_vector = 499 std::vector<RenderViewHost*> rvh_vector =
430 DevToolsAgentHost::GetValidRenderViewHosts(); 500 DevToolsAgentHost::GetValidRenderViewHosts();
431 501
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
497 content::WebUIDataSource* source = 567 content::WebUIDataSource* source =
498 content::WebUIDataSource::Create(chrome::kChromeUIInspectHost); 568 content::WebUIDataSource::Create(chrome::kChromeUIInspectHost);
499 source->AddResourcePath("inspect.css", IDR_INSPECT_CSS); 569 source->AddResourcePath("inspect.css", IDR_INSPECT_CSS);
500 source->AddResourcePath("inspect.js", IDR_INSPECT_JS); 570 source->AddResourcePath("inspect.js", IDR_INSPECT_JS);
501 source->SetDefaultResource(IDR_INSPECT_HTML); 571 source->SetDefaultResource(IDR_INSPECT_HTML);
502 return source; 572 return source;
503 } 573 }
504 574
505 void InspectUI::RemoteDevicesChanged( 575 void InspectUI::RemoteDevicesChanged(
506 DevToolsAdbBridge::RemoteDevices* devices) { 576 DevToolsAdbBridge::RemoteDevices* devices) {
577 remote_browsers_.clear();
507 remote_pages_.clear(); 578 remote_pages_.clear();
508 ListValue device_list; 579 ListValue device_list;
509 for (DevToolsAdbBridge::RemoteDevices::iterator dit = devices->begin(); 580 for (DevToolsAdbBridge::RemoteDevices::iterator dit = devices->begin();
510 dit != devices->end(); ++dit) { 581 dit != devices->end(); ++dit) {
511 DevToolsAdbBridge::RemoteDevice& device = *(dit->get()); 582 DevToolsAdbBridge::RemoteDevice* device = dit->get();
512 DictionaryValue* device_data = new DictionaryValue(); 583 DictionaryValue* device_data = new DictionaryValue();
513 device_data->SetString(kAdbModelField, device.model()); 584 device_data->SetString(kAdbModelField, device->model());
514 device_data->SetString(kAdbSerialField, device.serial()); 585 device_data->SetString(kAdbSerialField, device->serial());
586 std::string device_id = base::StringPrintf(
587 "device:%s",
588 device->serial().c_str());
589 device_data->SetString(kAdbGlobalIdField, device_id);
515 ListValue* browser_list = new ListValue(); 590 ListValue* browser_list = new ListValue();
516 device_data->Set(kAdbBrowsersField, browser_list); 591 device_data->Set(kAdbBrowsersField, browser_list);
517 592
518 DevToolsAdbBridge::RemoteBrowsers& browsers = device.browsers(); 593 DevToolsAdbBridge::RemoteBrowsers& browsers = device->browsers();
519 for (DevToolsAdbBridge::RemoteBrowsers::iterator bit = 594 for (DevToolsAdbBridge::RemoteBrowsers::iterator bit =
520 browsers.begin(); bit != browsers.end(); ++bit) { 595 browsers.begin(); bit != browsers.end(); ++bit) {
521 DevToolsAdbBridge::RemoteBrowser& browser = *(bit->get()); 596 DevToolsAdbBridge::RemoteBrowser* browser = bit->get();
522 DictionaryValue* browser_data = new DictionaryValue(); 597 DictionaryValue* browser_data = new DictionaryValue();
523 browser_data->SetString(kAdbBrowserNameField, browser.name()); 598 browser_data->SetString(kAdbBrowserNameField, browser->name());
599 std::string browser_id = base::StringPrintf(
600 "browser:%s:%s:%s",
601 device->serial().c_str(),
602 browser->socket().c_str(),
603 browser->name().c_str());
604 browser_data->SetString(kAdbGlobalIdField, browser_id);
605 remote_browsers_[browser_id] = browser;
524 ListValue* page_list = new ListValue(); 606 ListValue* page_list = new ListValue();
525 browser_data->Set(kAdbPagesField, page_list); 607 browser_data->Set(kAdbPagesField, page_list);
526 608
527 DevToolsAdbBridge::RemotePages& pages = browser.pages(); 609 DevToolsAdbBridge::RemotePages& pages = browser->pages();
528 for (DevToolsAdbBridge::RemotePages::iterator it = 610 for (DevToolsAdbBridge::RemotePages::iterator it =
529 pages.begin(); it != pages.end(); ++it) { 611 pages.begin(); it != pages.end(); ++it) {
530 DevToolsAdbBridge::RemotePage* page = it->get(); 612 DevToolsAdbBridge::RemotePage* page = it->get();
531 DictionaryValue* page_data = BuildTargetDescriptor(kAdbTargetType, 613 DictionaryValue* page_data = BuildTargetDescriptor(
532 false, GURL(page->url()), page->title(), GURL(page->favicon_url()), 614 kAdbTargetType, page->attached(),
615 GURL(page->url()), page->title(), GURL(page->favicon_url()),
533 0, 0); 616 0, 0);
534 page_data->SetString(kAdbPageIdField, page->global_id()); 617 std::string page_id = base::StringPrintf("page:%s:%s:%s",
618 device->serial().c_str(),
619 browser->socket().c_str(),
620 page->id().c_str());
621 page_data->SetString(kAdbGlobalIdField, page_id);
622 remote_pages_[page_id] = page;
535 page_list->Append(page_data); 623 page_list->Append(page_data);
536 remote_pages_[page->global_id()] = page;
537 } 624 }
538 browser_list->Append(browser_data); 625 browser_list->Append(browser_data);
539 } 626 }
540 device_list.Append(device_data); 627 device_list.Append(device_data);
541 } 628 }
542 web_ui()->CallJavascriptFunction("populateDeviceLists", device_list); 629 web_ui()->CallJavascriptFunction("populateDeviceLists", device_list);
543 } 630 }
544 631
545 void InspectUI::UpdatePortForwardingEnabled() { 632 void InspectUI::UpdatePortForwardingEnabled() {
546 Profile* profile = Profile::FromWebUI(web_ui()); 633 Profile* profile = Profile::FromWebUI(web_ui());
547 const base::Value* value = profile->GetPrefs()->FindPreference( 634 const base::Value* value = profile->GetPrefs()->FindPreference(
548 prefs::kDevToolsPortForwardingEnabled)->GetValue(); 635 prefs::kDevToolsPortForwardingEnabled)->GetValue();
549 web_ui()->CallJavascriptFunction("updatePortForwardingEnabled", *value); 636 web_ui()->CallJavascriptFunction("updatePortForwardingEnabled", *value);
550 637
551 } 638 }
552 639
553 void InspectUI::UpdatePortForwardingConfig() { 640 void InspectUI::UpdatePortForwardingConfig() {
554 Profile* profile = Profile::FromWebUI(web_ui()); 641 Profile* profile = Profile::FromWebUI(web_ui());
555 const base::Value* value = profile->GetPrefs()->FindPreference( 642 const base::Value* value = profile->GetPrefs()->FindPreference(
556 prefs::kDevToolsPortForwardingConfig)->GetValue(); 643 prefs::kDevToolsPortForwardingConfig)->GetValue();
557 web_ui()->CallJavascriptFunction("updatePortForwardingConfig", *value); 644 web_ui()->CallJavascriptFunction("updatePortForwardingConfig", *value);
558 } 645 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/inspect_ui.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698