summaryrefslogtreecommitdiffstats
path: root/chrome/browser/devtools
diff options
context:
space:
mode:
authordgozman <dgozman@chromium.org>2014-09-22 05:40:06 -0700
committerCommit bot <commit-bot@chromium.org>2014-09-22 12:40:22 +0000
commit252e18d2c4116131af20cac7759141ea930dcd28 (patch)
tree067f8dd6bc0a2be7dbf7d715218b0d08e2128a2c /chrome/browser/devtools
parent9b46fe6874291e1e50c9230b720293932dea6231 (diff)
downloadchromium_src-252e18d2c4116131af20cac7759141ea930dcd28.zip
chromium_src-252e18d2c4116131af20cac7759141ea930dcd28.tar.gz
chromium_src-252e18d2c4116131af20cac7759141ea930dcd28.tar.bz2
[DevTools] Move target-related methods from DevToolsHttpHandlerDelegate to DevToolsManagerDelegate.
This decouples targets discovery from remote debugging in preparation of moving discovery to the protocol. BUG=398049 Review URL: https://codereview.chromium.org/560323005 Cr-Commit-Position: refs/heads/master@{#295953}
Diffstat (limited to 'chrome/browser/devtools')
-rw-r--r--chrome/browser/devtools/BUILD.gn4
-rw-r--r--chrome/browser/devtools/browser_list_tabcontents_provider.cc45
-rw-r--r--chrome/browser/devtools/browser_list_tabcontents_provider.h4
-rw-r--r--chrome/browser/devtools/chrome_devtools_manager_delegate.cc41
-rw-r--r--chrome/browser/devtools/chrome_devtools_manager_delegate.h10
5 files changed, 47 insertions, 57 deletions
diff --git a/chrome/browser/devtools/BUILD.gn b/chrome/browser/devtools/BUILD.gn
index d1def53..9404d4b 100644
--- a/chrome/browser/devtools/BUILD.gn
+++ b/chrome/browser/devtools/BUILD.gn
@@ -23,8 +23,6 @@ action("devtools_protocol_constants") {
static_library("devtools") {
# Note: new sources and deps should be generally added in (!is_android) below.
sources = [
- "chrome_devtools_manager_delegate.cc",
- "chrome_devtools_manager_delegate.h",
"devtools_network_conditions.cc",
"devtools_network_conditions.h",
"devtools_network_controller.cc",
@@ -101,6 +99,8 @@ static_library("devtools") {
"device/usb/usb_device_provider.h",
"browser_list_tabcontents_provider.cc",
"browser_list_tabcontents_provider.h",
+ "chrome_devtools_manager_delegate.cc",
+ "chrome_devtools_manager_delegate.h",
"devtools_contents_resizing_strategy.cc",
"devtools_contents_resizing_strategy.h",
"devtools_embedder_message_dispatcher.cc",
diff --git a/chrome/browser/devtools/browser_list_tabcontents_provider.cc b/chrome/browser/devtools/browser_list_tabcontents_provider.cc
index 4ddb06f..6110231 100644
--- a/chrome/browser/devtools/browser_list_tabcontents_provider.cc
+++ b/chrome/browser/devtools/browser_list_tabcontents_provider.cc
@@ -6,29 +6,18 @@
#include "base/path_service.h"
#include "base/strings/string_number_conversions.h"
-#include "chrome/browser/devtools/devtools_target_impl.h"
#include "chrome/browser/history/top_sites.h"
-#include "chrome/browser/profiles/profile_manager.h"
+#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/browser_iterator.h"
-#include "chrome/browser/ui/browser_list.h"
-#include "chrome/browser/ui/browser_navigator.h"
-#include "chrome/browser/ui/browser_tabstrip.h"
#include "chrome/browser/ui/host_desktop.h"
-#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/common/chrome_paths.h"
-#include "content/public/browser/web_contents.h"
#include "content/public/common/url_constants.h"
#include "grit/browser_resources.h"
#include "net/socket/tcp_listen_socket.h"
#include "net/url_request/url_request_context_getter.h"
#include "ui/base/resource/resource_bundle.h"
-using content::DevToolsTarget;
-using content::RenderViewHost;
-using content::WebContents;
-
namespace {
const int kMinTetheringPort = 9333;
@@ -85,38 +74,6 @@ base::FilePath BrowserListTabContentsProvider::GetDebugFrontendDir() {
#endif
}
-std::string BrowserListTabContentsProvider::GetPageThumbnailData(
- const GURL& url) {
- for (chrome::BrowserIterator it; !it.done(); it.Next()) {
- Profile* profile = (*it)->profile();
- history::TopSites* top_sites = profile->GetTopSites();
- if (!top_sites)
- continue;
- scoped_refptr<base::RefCountedMemory> data;
- if (top_sites->GetPageThumbnail(url, false, &data))
- return std::string(data->front_as<char>(), data->size());
- }
-
- return std::string();
-}
-
-scoped_ptr<DevToolsTarget>
-BrowserListTabContentsProvider::CreateNewTarget(const GURL& url) {
- chrome::NavigateParams params(ProfileManager::GetLastUsedProfile(),
- url, ui::PAGE_TRANSITION_AUTO_TOPLEVEL);
- params.disposition = NEW_FOREGROUND_TAB;
- chrome::Navigate(&params);
- if (!params.target_contents)
- return scoped_ptr<DevToolsTarget>();
- return scoped_ptr<DevToolsTarget>(
- DevToolsTargetImpl::CreateForWebContents(params.target_contents, true));
-}
-
-void BrowserListTabContentsProvider::EnumerateTargets(TargetCallback callback) {
- DevToolsTargetImpl::EnumerateAllTargets(
- *reinterpret_cast<DevToolsTargetImpl::Callback*>(&callback));
-}
-
scoped_ptr<net::StreamListenSocket>
BrowserListTabContentsProvider::CreateSocketForTethering(
net::StreamListenSocket::Delegate* delegate,
diff --git a/chrome/browser/devtools/browser_list_tabcontents_provider.h b/chrome/browser/devtools/browser_list_tabcontents_provider.h
index 3296385..db425d0b 100644
--- a/chrome/browser/devtools/browser_list_tabcontents_provider.h
+++ b/chrome/browser/devtools/browser_list_tabcontents_provider.h
@@ -26,10 +26,6 @@ class BrowserListTabContentsProvider
virtual std::string GetDiscoveryPageHTML() OVERRIDE;
virtual bool BundlesFrontendResources() OVERRIDE;
virtual base::FilePath GetDebugFrontendDir() OVERRIDE;
- virtual std::string GetPageThumbnailData(const GURL& url) OVERRIDE;
- virtual scoped_ptr<content::DevToolsTarget> CreateNewTarget(
- const GURL& url) OVERRIDE;
- virtual void EnumerateTargets(TargetCallback callback) OVERRIDE;
virtual scoped_ptr<net::StreamListenSocket> CreateSocketForTethering(
net::StreamListenSocket::Delegate* delegate,
std::string* name) OVERRIDE;
diff --git a/chrome/browser/devtools/chrome_devtools_manager_delegate.cc b/chrome/browser/devtools/chrome_devtools_manager_delegate.cc
index fd9cfed..1bd1a82 100644
--- a/chrome/browser/devtools/chrome_devtools_manager_delegate.cc
+++ b/chrome/browser/devtools/chrome_devtools_manager_delegate.cc
@@ -5,9 +5,16 @@
#include "chrome/browser/devtools/chrome_devtools_manager_delegate.h"
#include "base/values.h"
+#include "chrome/browser/devtools/devtools_target_impl.h"
#include "chrome/browser/devtools/devtools_window.h"
+#include "chrome/browser/history/top_sites.h"
#include "chrome/browser/profiles/profile.h"
+#include "chrome/browser/profiles/profile_manager.h"
+#include "chrome/browser/ui/browser.h"
+#include "chrome/browser/ui/browser_iterator.h"
+#include "content/public/browser/browser_thread.h"
#include "content/public/browser/devtools_agent_host.h"
+#include "content/public/browser/web_contents.h"
ChromeDevToolsManagerDelegate::ChromeDevToolsManagerDelegate()
: network_protocol_handler_(new DevToolsNetworkProtocolHandler()) {
@@ -23,10 +30,8 @@ void ChromeDevToolsManagerDelegate::Inspect(
// TODO(horo): Support other types of DevToolsAgentHost when necessary.
NOTREACHED() << "Inspect() only supports workers.";
}
-#if !defined(OS_ANDROID)
if (Profile* profile = Profile::FromBrowserContext(browser_context))
DevToolsWindow::OpenDevToolsWindowForWorker(profile, agent_host);
-#endif
}
base::DictionaryValue* ChromeDevToolsManagerDelegate::HandleCommand(
@@ -40,3 +45,35 @@ void ChromeDevToolsManagerDelegate::DevToolsAgentStateChanged(
bool attached) {
network_protocol_handler_->DevToolsAgentStateChanged(agent_host, attached);
}
+
+std::string ChromeDevToolsManagerDelegate::GetPageThumbnailData(
+ const GURL& url) {
+ for (chrome::BrowserIterator it; !it.done(); it.Next()) {
+ Profile* profile = (*it)->profile();
+ history::TopSites* top_sites = profile->GetTopSites();
+ if (!top_sites)
+ continue;
+ scoped_refptr<base::RefCountedMemory> data;
+ if (top_sites->GetPageThumbnail(url, false, &data))
+ return std::string(data->front_as<char>(), data->size());
+ }
+ return std::string();
+}
+
+scoped_ptr<content::DevToolsTarget>
+ChromeDevToolsManagerDelegate::CreateNewTarget(const GURL& url) {
+ chrome::NavigateParams params(ProfileManager::GetLastUsedProfile(),
+ url, ui::PAGE_TRANSITION_AUTO_TOPLEVEL);
+ params.disposition = NEW_FOREGROUND_TAB;
+ chrome::Navigate(&params);
+ if (!params.target_contents)
+ return scoped_ptr<content::DevToolsTarget>();
+ return scoped_ptr<content::DevToolsTarget>(
+ DevToolsTargetImpl::CreateForWebContents(params.target_contents, true));
+}
+
+void ChromeDevToolsManagerDelegate::EnumerateTargets(TargetCallback callback) {
+ DevToolsTargetImpl::EnumerateAllTargets(
+ *reinterpret_cast<DevToolsTargetImpl::Callback*>(&callback));
+}
+
diff --git a/chrome/browser/devtools/chrome_devtools_manager_delegate.h b/chrome/browser/devtools/chrome_devtools_manager_delegate.h
index 3885e48..08b7e62 100644
--- a/chrome/browser/devtools/chrome_devtools_manager_delegate.h
+++ b/chrome/browser/devtools/chrome_devtools_manager_delegate.h
@@ -9,18 +9,14 @@
#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
#include "chrome/browser/devtools/devtools_network_protocol_handler.h"
-#include "chrome/browser/devtools/devtools_protocol.h"
#include "content/public/browser/devtools_manager_delegate.h"
-class DevToolsNetworkConditions;
-class Profile;
-
class ChromeDevToolsManagerDelegate : public content::DevToolsManagerDelegate {
public:
ChromeDevToolsManagerDelegate();
virtual ~ChromeDevToolsManagerDelegate();
- // content::DevToolsManagerDelegate overrides:
+ // content::DevToolsManagerDelegate implementation.
virtual void Inspect(content::BrowserContext* browser_context,
content::DevToolsAgentHost* agent_host) OVERRIDE;
virtual void DevToolsAgentStateChanged(content::DevToolsAgentHost* agent_host,
@@ -28,6 +24,10 @@ class ChromeDevToolsManagerDelegate : public content::DevToolsManagerDelegate {
virtual base::DictionaryValue* HandleCommand(
content::DevToolsAgentHost* agent_host,
base::DictionaryValue* command_dict) OVERRIDE;
+ virtual scoped_ptr<content::DevToolsTarget> CreateNewTarget(
+ const GURL& url) OVERRIDE;
+ virtual void EnumerateTargets(TargetCallback callback) OVERRIDE;
+ virtual std::string GetPageThumbnailData(const GURL& url) OVERRIDE;
private:
scoped_ptr<DevToolsNetworkProtocolHandler> network_protocol_handler_;