OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "chrome/browser/devtools/devtools_targets_ui.h" | 5 #include "chrome/browser/devtools/devtools_targets_ui.h" |
6 | 6 |
7 #include "base/memory/weak_ptr.h" | 7 #include "base/memory/weak_ptr.h" |
8 #include "base/stl_util.h" | 8 #include "base/stl_util.h" |
9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
262 | 262 |
263 // AdbTargetsUIHandler -------------------------------------------------------- | 263 // AdbTargetsUIHandler -------------------------------------------------------- |
264 | 264 |
265 class AdbTargetsUIHandler | 265 class AdbTargetsUIHandler |
266 : public DevToolsTargetsUIHandler, | 266 : public DevToolsTargetsUIHandler, |
267 public DevToolsAndroidBridge::DeviceListListener { | 267 public DevToolsAndroidBridge::DeviceListListener { |
268 public: | 268 public: |
269 AdbTargetsUIHandler(const Callback& callback, Profile* profile); | 269 AdbTargetsUIHandler(const Callback& callback, Profile* profile); |
270 ~AdbTargetsUIHandler() override; | 270 ~AdbTargetsUIHandler() override; |
271 | 271 |
272 void Open(const std::string& browser_id, | 272 void Open(const std::string& browser_id, const std::string& url) override; |
273 const std::string& url, | |
274 const DevToolsTargetsUIHandler::TargetCallback&) override; | |
275 | 273 |
276 scoped_refptr<content::DevToolsAgentHost> GetBrowserAgentHost( | 274 scoped_refptr<content::DevToolsAgentHost> GetBrowserAgentHost( |
277 const std::string& browser_id) override; | 275 const std::string& browser_id) override; |
278 | 276 |
279 private: | 277 private: |
280 // DevToolsAndroidBridge::Listener overrides. | 278 // DevToolsAndroidBridge::Listener overrides. |
281 void DeviceListChanged( | 279 void DeviceListChanged( |
282 const DevToolsAndroidBridge::RemoteDevices& devices) override; | 280 const DevToolsAndroidBridge::RemoteDevices& devices) override; |
283 | 281 |
284 DevToolsAndroidBridge* GetAndroidBridge(); | 282 DevToolsAndroidBridge* GetAndroidBridge(); |
(...skipping 13 matching lines...) Expand all Loading... |
298 android_bridge_( | 296 android_bridge_( |
299 DevToolsAndroidBridge::Factory::GetForProfile(profile_)) { | 297 DevToolsAndroidBridge::Factory::GetForProfile(profile_)) { |
300 DCHECK(android_bridge_); | 298 DCHECK(android_bridge_); |
301 android_bridge_->AddDeviceListListener(this); | 299 android_bridge_->AddDeviceListListener(this); |
302 } | 300 } |
303 | 301 |
304 AdbTargetsUIHandler::~AdbTargetsUIHandler() { | 302 AdbTargetsUIHandler::~AdbTargetsUIHandler() { |
305 android_bridge_->RemoveDeviceListListener(this); | 303 android_bridge_->RemoveDeviceListListener(this); |
306 } | 304 } |
307 | 305 |
308 static void CallOnTarget( | 306 static void NoOp(scoped_refptr<DevToolsAndroidBridge::RemotePage> page) { |
309 const DevToolsTargetsUIHandler::TargetCallback& callback, | |
310 DevToolsAndroidBridge* bridge, | |
311 scoped_refptr<DevToolsAndroidBridge::RemotePage> page) { | |
312 callback.Run(bridge && page.get() ? bridge->CreatePageTarget(page) : nullptr); | |
313 } | 307 } |
314 | 308 |
315 void AdbTargetsUIHandler::Open( | 309 void AdbTargetsUIHandler::Open(const std::string& browser_id, |
316 const std::string& browser_id, | 310 const std::string& url) { |
317 const std::string& url, | |
318 const DevToolsTargetsUIHandler::TargetCallback& callback) { | |
319 RemoteBrowsers::iterator it = remote_browsers_.find(browser_id); | 311 RemoteBrowsers::iterator it = remote_browsers_.find(browser_id); |
320 if (it == remote_browsers_.end()) | 312 if (it == remote_browsers_.end()) |
321 return; | 313 return; |
322 | 314 |
323 android_bridge_->OpenRemotePage( | 315 android_bridge_->OpenRemotePage( |
324 it->second, | 316 it->second, |
325 url, | 317 url, |
326 base::Bind(&CallOnTarget, callback, android_bridge_)); | 318 base::Bind(&NoOp)); |
327 } | 319 } |
328 | 320 |
329 scoped_refptr<content::DevToolsAgentHost> | 321 scoped_refptr<content::DevToolsAgentHost> |
330 AdbTargetsUIHandler::GetBrowserAgentHost( | 322 AdbTargetsUIHandler::GetBrowserAgentHost( |
331 const std::string& browser_id) { | 323 const std::string& browser_id) { |
332 RemoteBrowsers::iterator it = remote_browsers_.find(browser_id); | 324 RemoteBrowsers::iterator it = remote_browsers_.find(browser_id); |
333 if (it == remote_browsers_.end()) | 325 if (it == remote_browsers_.end()) |
334 return NULL; | 326 return NULL; |
335 | 327 |
336 return android_bridge_->GetBrowserAgentHost(it->second); | 328 return android_bridge_->GetBrowserAgentHost(it->second); |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
433 | 425 |
434 DevToolsTargetImpl* DevToolsTargetsUIHandler::GetTarget( | 426 DevToolsTargetImpl* DevToolsTargetsUIHandler::GetTarget( |
435 const std::string& target_id) { | 427 const std::string& target_id) { |
436 TargetMap::iterator it = targets_.find(target_id); | 428 TargetMap::iterator it = targets_.find(target_id); |
437 if (it != targets_.end()) | 429 if (it != targets_.end()) |
438 return it->second; | 430 return it->second; |
439 return NULL; | 431 return NULL; |
440 } | 432 } |
441 | 433 |
442 void DevToolsTargetsUIHandler::Open(const std::string& browser_id, | 434 void DevToolsTargetsUIHandler::Open(const std::string& browser_id, |
443 const std::string& url, | 435 const std::string& url) { |
444 const TargetCallback& callback) { | |
445 callback.Run(NULL); | |
446 } | 436 } |
447 | 437 |
448 scoped_refptr<content::DevToolsAgentHost> | 438 scoped_refptr<content::DevToolsAgentHost> |
449 DevToolsTargetsUIHandler::GetBrowserAgentHost(const std::string& browser_id) { | 439 DevToolsTargetsUIHandler::GetBrowserAgentHost(const std::string& browser_id) { |
450 return NULL; | 440 return NULL; |
451 } | 441 } |
452 | 442 |
453 base::DictionaryValue* DevToolsTargetsUIHandler::Serialize( | 443 base::DictionaryValue* DevToolsTargetsUIHandler::Serialize( |
454 const DevToolsTargetImpl& target) { | 444 const DevToolsTargetImpl& target) { |
455 base::DictionaryValue* target_data = new base::DictionaryValue(); | 445 base::DictionaryValue* target_data = new base::DictionaryValue(); |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
509 device_status_dict->SetString(kPortForwardingBrowserId, | 499 device_status_dict->SetString(kPortForwardingBrowserId, |
510 sit->first->GetId()); | 500 sit->first->GetId()); |
511 | 501 |
512 std::string device_id = base::StringPrintf( | 502 std::string device_id = base::StringPrintf( |
513 kAdbDeviceIdFormat, | 503 kAdbDeviceIdFormat, |
514 sit->first->serial().c_str()); | 504 sit->first->serial().c_str()); |
515 result.Set(device_id, device_status_dict); | 505 result.Set(device_id, device_status_dict); |
516 } | 506 } |
517 callback_.Run(result); | 507 callback_.Run(result); |
518 } | 508 } |
OLD | NEW |