diff options
author | zvorygin@chromium.org <zvorygin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-23 01:23:49 +0000 |
---|---|---|
committer | zvorygin@chromium.org <zvorygin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-23 01:23:49 +0000 |
commit | ba8a9357acad351c0037206602e7872bc9bfec12 (patch) | |
tree | 356889049394303b77314a4b0374b8f213bb3d63 /chrome/browser/devtools/devtools_window.cc | |
parent | 4514d9613c95617f344b2d0581acbb7e369a6f5a (diff) | |
download | chromium_src-ba8a9357acad351c0037206602e7872bc9bfec12.zip chromium_src-ba8a9357acad351c0037206602e7872bc9bfec12.tar.gz chromium_src-ba8a9357acad351c0037206602e7872bc9bfec12.tar.bz2 |
[DevTools] Added device count listener to devtools window.
BUG=309879
Review URL: https://codereview.chromium.org/243063002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265465 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/devtools/devtools_window.cc')
-rw-r--r-- | chrome/browser/devtools/devtools_window.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/chrome/browser/devtools/devtools_window.cc b/chrome/browser/devtools/devtools_window.cc index 16e79ff..8b12c80 100644 --- a/chrome/browser/devtools/devtools_window.cc +++ b/chrome/browser/devtools/devtools_window.cc @@ -398,6 +398,8 @@ DevToolsWindow::~DevToolsWindow() { jobs_it->second->Stop(); } indexing_jobs_.clear(); + if (device_listener_enabled_) + EnableRemoteDeviceCounter(false); } // static @@ -785,6 +787,7 @@ DevToolsWindow::DevToolsWindow(Profile* profile, browser_(NULL), is_docked_(true), can_dock_(can_dock), + device_listener_enabled_(false), // This initialization allows external front-end to work without changes. // We don't wait for docking call, but instead immediately show undocked. // Passing "dockSide=undocked" parameter ensures proper UI. @@ -1392,6 +1395,26 @@ void DevToolsWindow::StopRemoteDevicesListener() { remote_targets_handler_.reset(); } +void DevToolsWindow::EnableRemoteDeviceCounter(bool enable) { + DevToolsAndroidBridge* adb_bridge = + DevToolsAndroidBridge::Factory::GetForProfile(profile_); + if (!adb_bridge) + return; + + DCHECK(device_listener_enabled_ != enable); + device_listener_enabled_ = enable; + if (enable) + adb_bridge->AddDeviceCountListener(this); + else + adb_bridge->RemoveDeviceCountListener(this); +} + +void DevToolsWindow::DeviceCountChanged(int count) { + base::FundamentalValue value(count); + CallClientFunction( + "InspectorFrontendAPI.setRemoteDeviceCount", &value, NULL, NULL); +} + void DevToolsWindow::PopulateRemoteDevices( const std::string& source, scoped_ptr<base::ListValue> targets) { |