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

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

Issue 2248133002: [DevTools] Add UI for adding remote targets (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: [DevTools] Add UI for adding remote targets 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
« 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 "base/macros.h" 7 #include "base/macros.h"
8 #include "base/stl_util.h" 8 #include "base/stl_util.h"
9 #include "chrome/browser/devtools/devtools_targets_ui.h" 9 #include "chrome/browser/devtools/devtools_targets_ui.h"
10 #include "chrome/browser/devtools/devtools_ui_bindings.h" 10 #include "chrome/browser/devtools/devtools_ui_bindings.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 const char kReloadCommand[] = "reload"; 43 const char kReloadCommand[] = "reload";
44 const char kOpenCommand[] = "open"; 44 const char kOpenCommand[] = "open";
45 const char kInspectBrowser[] = "inspect-browser"; 45 const char kInspectBrowser[] = "inspect-browser";
46 const char kLocalHost[] = "localhost"; 46 const char kLocalHost[] = "localhost";
47 47
48 const char kDiscoverUsbDevicesEnabledCommand[] = 48 const char kDiscoverUsbDevicesEnabledCommand[] =
49 "set-discover-usb-devices-enabled"; 49 "set-discover-usb-devices-enabled";
50 const char kPortForwardingEnabledCommand[] = 50 const char kPortForwardingEnabledCommand[] =
51 "set-port-forwarding-enabled"; 51 "set-port-forwarding-enabled";
52 const char kPortForwardingConfigCommand[] = "set-port-forwarding-config"; 52 const char kPortForwardingConfigCommand[] = "set-port-forwarding-config";
53 const char kDiscoverTCPTargetsEnabledCommand[] =
54 "set-discover-tcp-targets-enabled";
55 const char kTCPDiscoveryConfigCommand[] = "set-tcp-discovery-config";
53 56
54 const char kPortForwardingDefaultPort[] = "8080"; 57 const char kPortForwardingDefaultPort[] = "8080";
55 const char kPortForwardingDefaultLocation[] = "localhost:8080"; 58 const char kPortForwardingDefaultLocation[] = "localhost:8080";
56 59
57 // InspectMessageHandler -------------------------------------------- 60 // InspectMessageHandler --------------------------------------------
58 61
59 class InspectMessageHandler : public WebUIMessageHandler { 62 class InspectMessageHandler : public WebUIMessageHandler {
60 public: 63 public:
61 explicit InspectMessageHandler(InspectUI* inspect_ui) 64 explicit InspectMessageHandler(InspectUI* inspect_ui)
62 : inspect_ui_(inspect_ui) {} 65 : inspect_ui_(inspect_ui) {}
63 ~InspectMessageHandler() override {} 66 ~InspectMessageHandler() override {}
64 67
65 private: 68 private:
66 // WebUIMessageHandler implementation. 69 // WebUIMessageHandler implementation.
67 void RegisterMessages() override; 70 void RegisterMessages() override;
68 71
69 void HandleInitUICommand(const base::ListValue* args); 72 void HandleInitUICommand(const base::ListValue* args);
70 void HandleInspectCommand(const base::ListValue* args); 73 void HandleInspectCommand(const base::ListValue* args);
71 void HandleActivateCommand(const base::ListValue* args); 74 void HandleActivateCommand(const base::ListValue* args);
72 void HandleCloseCommand(const base::ListValue* args); 75 void HandleCloseCommand(const base::ListValue* args);
73 void HandleReloadCommand(const base::ListValue* args); 76 void HandleReloadCommand(const base::ListValue* args);
74 void HandleOpenCommand(const base::ListValue* args); 77 void HandleOpenCommand(const base::ListValue* args);
75 void HandleInspectBrowserCommand(const base::ListValue* args); 78 void HandleInspectBrowserCommand(const base::ListValue* args);
76 void HandleBooleanPrefChanged(const char* pref_name, 79 void HandleBooleanPrefChanged(const char* pref_name,
77 const base::ListValue* args); 80 const base::ListValue* args);
78 void HandlePortForwardingConfigCommand(const base::ListValue* args); 81 void HandlePortForwardingConfigCommand(const base::ListValue* args);
82 void HandleTCPDiscoveryConfigCommand(const base::ListValue* args);
79 83
80 InspectUI* inspect_ui_; 84 InspectUI* inspect_ui_;
81 85
82 DISALLOW_COPY_AND_ASSIGN(InspectMessageHandler); 86 DISALLOW_COPY_AND_ASSIGN(InspectMessageHandler);
83 }; 87 };
84 88
85 void InspectMessageHandler::RegisterMessages() { 89 void InspectMessageHandler::RegisterMessages() {
86 web_ui()->RegisterMessageCallback(kInitUICommand, 90 web_ui()->RegisterMessageCallback(kInitUICommand,
87 base::Bind(&InspectMessageHandler::HandleInitUICommand, 91 base::Bind(&InspectMessageHandler::HandleInitUICommand,
88 base::Unretained(this))); 92 base::Unretained(this)));
(...skipping 10 matching lines...) Expand all
99 base::Bind(&InspectMessageHandler::HandleBooleanPrefChanged, 103 base::Bind(&InspectMessageHandler::HandleBooleanPrefChanged,
100 base::Unretained(this), 104 base::Unretained(this),
101 &prefs::kDevToolsDiscoverUsbDevicesEnabled[0])); 105 &prefs::kDevToolsDiscoverUsbDevicesEnabled[0]));
102 web_ui()->RegisterMessageCallback(kPortForwardingEnabledCommand, 106 web_ui()->RegisterMessageCallback(kPortForwardingEnabledCommand,
103 base::Bind(&InspectMessageHandler::HandleBooleanPrefChanged, 107 base::Bind(&InspectMessageHandler::HandleBooleanPrefChanged,
104 base::Unretained(this), 108 base::Unretained(this),
105 &prefs::kDevToolsPortForwardingEnabled[0])); 109 &prefs::kDevToolsPortForwardingEnabled[0]));
106 web_ui()->RegisterMessageCallback(kPortForwardingConfigCommand, 110 web_ui()->RegisterMessageCallback(kPortForwardingConfigCommand,
107 base::Bind(&InspectMessageHandler::HandlePortForwardingConfigCommand, 111 base::Bind(&InspectMessageHandler::HandlePortForwardingConfigCommand,
108 base::Unretained(this))); 112 base::Unretained(this)));
113 web_ui()->RegisterMessageCallback(kDiscoverTCPTargetsEnabledCommand,
114 base::Bind(&InspectMessageHandler::HandleBooleanPrefChanged,
115 base::Unretained(this),
116 &prefs::kDevToolsDiscoverTCPTargetsEnabled[0]));
117 web_ui()->RegisterMessageCallback(kTCPDiscoveryConfigCommand,
118 base::Bind(&InspectMessageHandler::HandleTCPDiscoveryConfigCommand,
119 base::Unretained(this)));
109 web_ui()->RegisterMessageCallback(kReloadCommand, 120 web_ui()->RegisterMessageCallback(kReloadCommand,
110 base::Bind(&InspectMessageHandler::HandleReloadCommand, 121 base::Bind(&InspectMessageHandler::HandleReloadCommand,
111 base::Unretained(this))); 122 base::Unretained(this)));
112 web_ui()->RegisterMessageCallback(kOpenCommand, 123 web_ui()->RegisterMessageCallback(kOpenCommand,
113 base::Bind(&InspectMessageHandler::HandleOpenCommand, 124 base::Bind(&InspectMessageHandler::HandleOpenCommand,
114 base::Unretained(this))); 125 base::Unretained(this)));
115 web_ui()->RegisterMessageCallback(kInspectBrowser, 126 web_ui()->RegisterMessageCallback(kInspectBrowser,
116 base::Bind(&InspectMessageHandler::HandleInspectBrowserCommand, 127 base::Bind(&InspectMessageHandler::HandleInspectBrowserCommand,
117 base::Unretained(this))); 128 base::Unretained(this)));
118 } 129 }
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 const base::ListValue* args) { 205 const base::ListValue* args) {
195 Profile* profile = Profile::FromWebUI(web_ui()); 206 Profile* profile = Profile::FromWebUI(web_ui());
196 if (!profile) 207 if (!profile)
197 return; 208 return;
198 209
199 const base::DictionaryValue* dict_src; 210 const base::DictionaryValue* dict_src;
200 if (args->GetSize() == 1 && args->GetDictionary(0, &dict_src)) 211 if (args->GetSize() == 1 && args->GetDictionary(0, &dict_src))
201 profile->GetPrefs()->Set(prefs::kDevToolsPortForwardingConfig, *dict_src); 212 profile->GetPrefs()->Set(prefs::kDevToolsPortForwardingConfig, *dict_src);
202 } 213 }
203 214
215 void InspectMessageHandler::HandleTCPDiscoveryConfigCommand(
216 const base::ListValue* args) {
217 Profile* profile = Profile::FromWebUI(web_ui());
218 if (!profile)
219 return;
220
221 const base::ListValue* list_src;
222 if (args->GetSize() == 1 && args->GetList(0, &list_src))
223 profile->GetPrefs()->Set(prefs::kDevToolsTCPDiscoveryConfig, *list_src);
224 }
225
204 // DevToolsUIBindingsEnabler ---------------------------------------- 226 // DevToolsUIBindingsEnabler ----------------------------------------
205 227
206 class DevToolsUIBindingsEnabler 228 class DevToolsUIBindingsEnabler
207 : public content::WebContentsObserver { 229 : public content::WebContentsObserver {
208 public: 230 public:
209 DevToolsUIBindingsEnabler(WebContents* web_contents, 231 DevToolsUIBindingsEnabler(WebContents* web_contents,
210 const GURL& url); 232 const GURL& url);
211 ~DevToolsUIBindingsEnabler() override {} 233 ~DevToolsUIBindingsEnabler() override {}
212 234
213 DevToolsUIBindings* GetBindings(); 235 DevToolsUIBindings* GetBindings();
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
265 InspectUI::~InspectUI() { 287 InspectUI::~InspectUI() {
266 StopListeningNotifications(); 288 StopListeningNotifications();
267 } 289 }
268 290
269 void InspectUI::InitUI() { 291 void InspectUI::InitUI() {
270 SetPortForwardingDefaults(); 292 SetPortForwardingDefaults();
271 StartListeningNotifications(); 293 StartListeningNotifications();
272 UpdateDiscoverUsbDevicesEnabled(); 294 UpdateDiscoverUsbDevicesEnabled();
273 UpdatePortForwardingEnabled(); 295 UpdatePortForwardingEnabled();
274 UpdatePortForwardingConfig(); 296 UpdatePortForwardingConfig();
297 UpdateTCPDiscoveryEnabled();
298 UpdateTCPDiscoveryConfig();
275 } 299 }
276 300
277 void InspectUI::Inspect(const std::string& source_id, 301 void InspectUI::Inspect(const std::string& source_id,
278 const std::string& target_id) { 302 const std::string& target_id) {
279 scoped_refptr<DevToolsAgentHost> target = FindTarget(source_id, target_id); 303 scoped_refptr<DevToolsAgentHost> target = FindTarget(source_id, target_id);
280 if (target) { 304 if (target) {
281 const std::string target_type = target->GetType(); 305 const std::string target_type = target->GetType();
282 target->Inspect(); 306 target->Inspect();
283 ForceUpdateIfNeeded(source_id, target_type); 307 ForceUpdateIfNeeded(source_id, target_type);
284 } 308 }
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 pref_change_registrar_.Init(profile->GetPrefs()); 427 pref_change_registrar_.Init(profile->GetPrefs());
404 pref_change_registrar_.Add(prefs::kDevToolsDiscoverUsbDevicesEnabled, 428 pref_change_registrar_.Add(prefs::kDevToolsDiscoverUsbDevicesEnabled,
405 base::Bind(&InspectUI::UpdateDiscoverUsbDevicesEnabled, 429 base::Bind(&InspectUI::UpdateDiscoverUsbDevicesEnabled,
406 base::Unretained(this))); 430 base::Unretained(this)));
407 pref_change_registrar_.Add(prefs::kDevToolsPortForwardingEnabled, 431 pref_change_registrar_.Add(prefs::kDevToolsPortForwardingEnabled,
408 base::Bind(&InspectUI::UpdatePortForwardingEnabled, 432 base::Bind(&InspectUI::UpdatePortForwardingEnabled,
409 base::Unretained(this))); 433 base::Unretained(this)));
410 pref_change_registrar_.Add(prefs::kDevToolsPortForwardingConfig, 434 pref_change_registrar_.Add(prefs::kDevToolsPortForwardingConfig,
411 base::Bind(&InspectUI::UpdatePortForwardingConfig, 435 base::Bind(&InspectUI::UpdatePortForwardingConfig,
412 base::Unretained(this))); 436 base::Unretained(this)));
437 pref_change_registrar_.Add(prefs::kDevToolsDiscoverTCPTargetsEnabled,
438 base::Bind(&InspectUI::UpdateTCPDiscoveryEnabled,
439 base::Unretained(this)));
440 pref_change_registrar_.Add(prefs::kDevToolsTCPDiscoveryConfig,
441 base::Bind(&InspectUI::UpdateTCPDiscoveryConfig,
442 base::Unretained(this)));
413 } 443 }
414 444
415 void InspectUI::StopListeningNotifications() { 445 void InspectUI::StopListeningNotifications() {
416 if (target_handlers_.empty()) 446 if (target_handlers_.empty())
417 return; 447 return;
418 448
419 base::STLDeleteValues(&target_handlers_); 449 base::STLDeleteValues(&target_handlers_);
420 450
421 port_status_serializer_.reset(); 451 port_status_serializer_.reset();
422 452
(...skipping 21 matching lines...) Expand all
444 "updatePortForwardingEnabled", 474 "updatePortForwardingEnabled",
445 *GetPrefValue(prefs::kDevToolsPortForwardingEnabled)); 475 *GetPrefValue(prefs::kDevToolsPortForwardingEnabled));
446 } 476 }
447 477
448 void InspectUI::UpdatePortForwardingConfig() { 478 void InspectUI::UpdatePortForwardingConfig() {
449 web_ui()->CallJavascriptFunctionUnsafe( 479 web_ui()->CallJavascriptFunctionUnsafe(
450 "updatePortForwardingConfig", 480 "updatePortForwardingConfig",
451 *GetPrefValue(prefs::kDevToolsPortForwardingConfig)); 481 *GetPrefValue(prefs::kDevToolsPortForwardingConfig));
452 } 482 }
453 483
484 void InspectUI::UpdateTCPDiscoveryEnabled() {
485 web_ui()->CallJavascriptFunctionUnsafe(
486 "updateTCPDiscoveryEnabled",
487 *GetPrefValue(prefs::kDevToolsDiscoverTCPTargetsEnabled));
488 }
489
490 void InspectUI::UpdateTCPDiscoveryConfig() {
491 web_ui()->CallJavascriptFunctionUnsafe(
492 "updateTCPDiscoveryConfig",
493 *GetPrefValue(prefs::kDevToolsTCPDiscoveryConfig));
494 }
495
454 void InspectUI::SetPortForwardingDefaults() { 496 void InspectUI::SetPortForwardingDefaults() {
455 Profile* profile = Profile::FromWebUI(web_ui()); 497 Profile* profile = Profile::FromWebUI(web_ui());
456 PrefService* prefs = profile->GetPrefs(); 498 PrefService* prefs = profile->GetPrefs();
457 499
458 bool default_set; 500 bool default_set;
459 if (!GetPrefValue(prefs::kDevToolsPortForwardingDefaultSet)-> 501 if (!GetPrefValue(prefs::kDevToolsPortForwardingDefaultSet)->
460 GetAsBoolean(&default_set) || default_set) { 502 GetAsBoolean(&default_set) || default_set) {
461 return; 503 return;
462 } 504 }
463 505
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
525 handler->ForceUpdate(); 567 handler->ForceUpdate();
526 } 568 }
527 569
528 void InspectUI::PopulatePortStatus(const base::Value& status) { 570 void InspectUI::PopulatePortStatus(const base::Value& status) {
529 web_ui()->CallJavascriptFunctionUnsafe("populatePortStatus", status); 571 web_ui()->CallJavascriptFunctionUnsafe("populatePortStatus", status);
530 } 572 }
531 573
532 void InspectUI::ShowIncognitoWarning() { 574 void InspectUI::ShowIncognitoWarning() {
533 web_ui()->CallJavascriptFunctionUnsafe("showIncognitoWarning"); 575 web_ui()->CallJavascriptFunctionUnsafe("showIncognitoWarning");
534 } 576 }
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