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

Side by Side Diff: chrome/browser/devtools/device/devtools_android_bridge.cc

Issue 2284083002: [DevTools] A setting for TCP discovery enablement (Closed)
Patch Set: Comments 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 | « no previous file | chrome/browser/devtools/device/devtools_android_bridge_browsertest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/devtools/device/devtools_android_bridge.h" 5 #include "chrome/browser/devtools/device/devtools_android_bridge.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <algorithm> 8 #include <algorithm>
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 const char kClosePageRequest[] = "/json/close/%s"; 63 const char kClosePageRequest[] = "/json/close/%s";
64 const char kNewPageRequestWithURL[] = "/json/new?%s"; 64 const char kNewPageRequestWithURL[] = "/json/new?%s";
65 const char kActivatePageRequest[] = "/json/activate/%s"; 65 const char kActivatePageRequest[] = "/json/activate/%s";
66 const char kBrowserTargetSocket[] = "/devtools/browser"; 66 const char kBrowserTargetSocket[] = "/devtools/browser";
67 const int kAdbPollingIntervalMs = 1000; 67 const int kAdbPollingIntervalMs = 1000;
68 68
69 const char kPageReloadCommand[] = "Page.reload"; 69 const char kPageReloadCommand[] = "Page.reload";
70 70
71 const char kWebViewSocketPrefix[] = "webview_devtools_remote"; 71 const char kWebViewSocketPrefix[] = "webview_devtools_remote";
72 72
73 const char kChromeDiscoveryURL[] = "localhost:9222";
74 const char kNodeDiscoveryURL[] = "localhost:9229";
75
73 bool BrowserIdFromString(const std::string& browser_id_str, 76 bool BrowserIdFromString(const std::string& browser_id_str,
74 DevToolsAndroidBridge::BrowserId* browser_id) { 77 DevToolsAndroidBridge::BrowserId* browser_id) {
75 size_t colon_pos = browser_id_str.find(':'); 78 size_t colon_pos = browser_id_str.find(':');
76 if (colon_pos == std::string::npos) 79 if (colon_pos == std::string::npos)
77 return false; 80 return false;
78 browser_id->first = browser_id_str.substr(0, colon_pos); 81 browser_id->first = browser_id_str.substr(0, colon_pos);
79 browser_id->second = browser_id_str.substr(colon_pos + 1); 82 browser_id->second = browser_id_str.substr(colon_pos + 1);
80 return true; 83 return true;
81 } 84 }
82 85
(...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after
721 : profile_(profile), 724 : profile_(profile),
722 device_manager_(AndroidDeviceManager::Create()), 725 device_manager_(AndroidDeviceManager::Create()),
723 task_scheduler_(base::Bind(&DevToolsAndroidBridge::ScheduleTaskDefault)), 726 task_scheduler_(base::Bind(&DevToolsAndroidBridge::ScheduleTaskDefault)),
724 port_forwarding_controller_(new PortForwardingController(profile, this)), 727 port_forwarding_controller_(new PortForwardingController(profile, this)),
725 weak_factory_(this) { 728 weak_factory_(this) {
726 DCHECK_CURRENTLY_ON(BrowserThread::UI); 729 DCHECK_CURRENTLY_ON(BrowserThread::UI);
727 pref_change_registrar_.Init(profile_->GetPrefs()); 730 pref_change_registrar_.Init(profile_->GetPrefs());
728 pref_change_registrar_.Add(prefs::kDevToolsDiscoverUsbDevicesEnabled, 731 pref_change_registrar_.Add(prefs::kDevToolsDiscoverUsbDevicesEnabled,
729 base::Bind(&DevToolsAndroidBridge::CreateDeviceProviders, 732 base::Bind(&DevToolsAndroidBridge::CreateDeviceProviders,
730 base::Unretained(this))); 733 base::Unretained(this)));
731 pref_change_registrar_.Add(prefs::kDevToolsTargetDiscoveryConfig, 734 pref_change_registrar_.Add(prefs::kDevToolsTCPDiscoveryConfig,
732 base::Bind(&DevToolsAndroidBridge::CreateDeviceProviders, 735 base::Bind(&DevToolsAndroidBridge::CreateDeviceProviders,
733 base::Unretained(this))); 736 base::Unretained(this)));
737 pref_change_registrar_.Add(prefs::kDevToolsDiscoverTCPTargetsEnabled,
738 base::Bind(&DevToolsAndroidBridge::CreateDeviceProviders,
739 base::Unretained(this)));
740 base::ListValue* target_discovery = new base::ListValue();
741 target_discovery->AppendString(kChromeDiscoveryURL);
742 target_discovery->AppendString(kNodeDiscoveryURL);
743 profile->GetPrefs()->SetDefaultPrefValue(
744 prefs::kDevToolsTCPDiscoveryConfig, target_discovery);
734 CreateDeviceProviders(); 745 CreateDeviceProviders();
735 } 746 }
736 747
737 void DevToolsAndroidBridge::AddDeviceListListener( 748 void DevToolsAndroidBridge::AddDeviceListListener(
738 DeviceListListener* listener) { 749 DeviceListListener* listener) {
739 DCHECK_CURRENTLY_ON(BrowserThread::UI); 750 DCHECK_CURRENTLY_ON(BrowserThread::UI);
740 bool polling_was_off = !NeedsDeviceListPolling(); 751 bool polling_was_off = !NeedsDeviceListPolling();
741 device_list_listeners_.push_back(listener); 752 device_list_listeners_.push_back(listener);
742 if (polling_was_off) 753 if (polling_was_off)
743 StartDeviceListPolling(); 754 StartDeviceListPolling();
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
947 } 958 }
948 if (targets.empty()) 959 if (targets.empty())
949 return nullptr; 960 return nullptr;
950 return new TCPDeviceProvider(targets); 961 return new TCPDeviceProvider(targets);
951 } 962 }
952 963
953 void DevToolsAndroidBridge::CreateDeviceProviders() { 964 void DevToolsAndroidBridge::CreateDeviceProviders() {
954 AndroidDeviceManager::DeviceProviders device_providers; 965 AndroidDeviceManager::DeviceProviders device_providers;
955 PrefService* service = profile_->GetPrefs(); 966 PrefService* service = profile_->GetPrefs();
956 const base::ListValue* targets = 967 const base::ListValue* targets =
957 service->GetList(prefs::kDevToolsTargetDiscoveryConfig); 968 service->GetBoolean(prefs::kDevToolsDiscoverTCPTargetsEnabled)
969 ? service->GetList(prefs::kDevToolsTCPDiscoveryConfig)
970 : nullptr;
958 scoped_refptr<TCPDeviceProvider> provider = CreateTCPDeviceProvider(targets); 971 scoped_refptr<TCPDeviceProvider> provider = CreateTCPDeviceProvider(targets);
959 if (tcp_provider_callback_) 972 if (tcp_provider_callback_)
960 tcp_provider_callback_.Run(provider); 973 tcp_provider_callback_.Run(provider);
961 974
962 if (provider) 975 if (provider)
963 device_providers.push_back(provider); 976 device_providers.push_back(provider);
964 977
965 #if defined(ENABLE_SERVICE_DISCOVERY) 978 #if defined(ENABLE_SERVICE_DISCOVERY)
966 device_providers.push_back(new CastDeviceProvider()); 979 device_providers.push_back(new CastDeviceProvider());
967 #endif 980 #endif
(...skipping 14 matching lines...) Expand all
982 StopDeviceListPolling(); 995 StopDeviceListPolling();
983 StartDeviceListPolling(); 996 StartDeviceListPolling();
984 } 997 }
985 } 998 }
986 999
987 void DevToolsAndroidBridge::set_tcp_provider_callback_for_test( 1000 void DevToolsAndroidBridge::set_tcp_provider_callback_for_test(
988 TCPProviderCallback callback) { 1001 TCPProviderCallback callback) {
989 tcp_provider_callback_ = callback; 1002 tcp_provider_callback_ = callback;
990 CreateDeviceProviders(); 1003 CreateDeviceProviders();
991 } 1004 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/devtools/device/devtools_android_bridge_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698