summaryrefslogtreecommitdiffstats
path: root/chrome/browser/debugger/tools_contents.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/debugger/tools_contents.cc')
-rw-r--r--chrome/browser/debugger/tools_contents.cc43
1 files changed, 43 insertions, 0 deletions
diff --git a/chrome/browser/debugger/tools_contents.cc b/chrome/browser/debugger/tools_contents.cc
new file mode 100644
index 0000000..19d9d59
--- /dev/null
+++ b/chrome/browser/debugger/tools_contents.cc
@@ -0,0 +1,43 @@
+// Copyright (c) 2009 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/debugger/tools_contents.h"
+
+#include "base/singleton.h"
+
+ToolsContents::ToolsContents(Profile* profile, SiteInstance* instance)
+ : WebContents(profile,
+ instance,
+ NULL,
+ MSG_ROUTING_NONE,
+ NULL) {
+ set_type(TAB_CONTENTS_TOOLS);
+}
+
+void ToolsContents::RendererCreated(RenderViewHost* render_view_host) {
+ RenderViewID* render_view_id =
+ ToolsContents::GetInspectedViewInfoAccessor()->GetProperty(
+ property_bag());
+ DCHECK(render_view_id);
+ if (!render_view_id)
+ return;
+
+ render_view_host->SetupToolsClient(render_view_id->process_id,
+ render_view_id->view_id);
+ ToolsContents::GetInspectedViewInfoAccessor()->DeleteProperty(property_bag());
+}
+
+// static
+bool ToolsContents::IsToolsUrl(const GURL& url) {
+ // TODO(yurys): implement
+ return (url.SchemeIs("chrome-ui") && url.host() == "inspector" &&
+ url.path() == "/debugger-oop.html");
+}
+
+// static
+PropertyAccessor<ToolsContents::RenderViewID>*
+ ToolsContents::GetInspectedViewInfoAccessor() {
+ return Singleton<PropertyAccessor<ToolsContents::RenderViewID> >().get();
+}
+