Upstream version 11.39.256.0
[platform/framework/web/crosswalk.git] / src / xwalk / runtime / browser / devtools / xwalk_devtools_delegate.cc
index ca8c3f9..bdfec66 100644 (file)
@@ -23,7 +23,6 @@
 #include "net/socket/tcp_listen_socket.h"
 #include "ui/base/resource/resource_bundle.h"
 #include "ui/snapshot/snapshot.h"
-#include "xwalk/runtime/browser/runtime.h"
 
 using content::DevToolsAgentHost;
 using content::RenderViewHost;
@@ -124,14 +123,14 @@ namespace xwalk {
 
 namespace {
 Runtime* CreateWithDefaultWindow(
-    RuntimeContext* runtime_context, const GURL& url,
-    Runtime::Observer* observer = NULL) {
-  Runtime* runtime = Runtime::Create(runtime_context, observer);
+    XWalkBrowserContext* browser_context, const GURL& url,
+    Runtime::Observer* observer) {
+  Runtime* runtime = Runtime::Create(browser_context);
+  runtime->set_observer(observer);
   runtime->LoadURL(url);
 #if !defined(OS_ANDROID)
-  RuntimeUIStrategy ui_strategy;
-  NativeAppWindow::CreateParams params;
-  ui_strategy.Show(runtime, params);
+  runtime->set_ui_delegate(DefaultRuntimeUIDelegate::Create(runtime));
+  runtime->Show();
 #endif
   return runtime;
 }
@@ -172,8 +171,8 @@ XWalkDevToolsHttpHandlerDelegate::CreateSocketForTethering(
   return scoped_ptr<net::StreamListenSocket>();
 }
 
-XWalkDevToolsDelegate::XWalkDevToolsDelegate(RuntimeContext* runtime_context)
-    : runtime_context_(runtime_context),
+XWalkDevToolsDelegate::XWalkDevToolsDelegate(XWalkBrowserContext* context)
+    : browser_context_(context),
       weak_factory_(this) {
 }
 
@@ -217,7 +216,7 @@ std::string XWalkDevToolsDelegate::GetPageThumbnailData(const GURL& url) {
 scoped_ptr<content::DevToolsTarget>
 XWalkDevToolsDelegate::CreateNewTarget(const GURL& url) {
   Runtime* runtime = CreateWithDefaultWindow(
-      runtime_context_, GURL(url::kAboutBlankURL));
+      browser_context_, GURL(url::kAboutBlankURL), this);
   return scoped_ptr<content::DevToolsTarget>(
       new Target(DevToolsAgentHost::GetOrCreateFor(runtime->web_contents())));
 }
@@ -238,4 +237,14 @@ void XWalkDevToolsDelegate::EnumerateTargets(TargetCallback callback) {
   callback.Run(targets);
 }
 
+void XWalkDevToolsDelegate::OnNewRuntimeAdded(Runtime* runtime) {
+  runtime->set_observer(this);
+  runtime->set_ui_delegate(DefaultRuntimeUIDelegate::Create(runtime));
+  runtime->Show();
+}
+
+void XWalkDevToolsDelegate::OnRuntimeClosed(Runtime* runtime) {
+  delete runtime;
+}
+
 }  // namespace xwalk