[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

loislo at chromium.org loislo at chromium.org
Wed Dec 22 11:27:39 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 331e0a0ccd94a69564a2844351809793a0beb488
Author: loislo at chromium.org <loislo at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jul 26 08:29:21 2010 +0000

    2010-07-26  Ilya Tikhonovsky  <loislo at chromium.org>
    
            Reviewed by Pavel Feldman.
    
            Chromium DevTools: refactor query params, add basic
            support for WebSocket-based backend.
    
            https://bugs.webkit.org/show_bug.cgi?id=42893
    
            * src/js/DevTools.js:
            (devtools.ToolsAgent.prototype.dispatchOnClient_):
            (WebInspector.loaded):
            (WebInspector.doLoadedDone):
            (devtools.domContentLoaded):
            * src/js/InspectorControllerImpl.js:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@64035 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index 66e2cad..e5dcc15 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,19 @@
+2010-07-26  Ilya Tikhonovsky  <loislo at chromium.org>
+
+        Reviewed by Pavel Feldman.
+
+        Chromium DevTools: refactor query params, add basic
+        support for WebSocket-based backend.
+
+        https://bugs.webkit.org/show_bug.cgi?id=42893
+
+        * src/js/DevTools.js:
+        (devtools.ToolsAgent.prototype.dispatchOnClient_):
+        (WebInspector.loaded):
+        (WebInspector.doLoadedDone):
+        (devtools.domContentLoaded):
+        * src/js/InspectorControllerImpl.js:
+
 2010-07-24  Pavel Feldman  <pfeldman at chromium.org>
 
         Not reviewed: chromium build fix.
diff --git a/WebKit/chromium/src/js/DevTools.js b/WebKit/chromium/src/js/DevTools.js
index 35cca2f..53309ad 100644
--- a/WebKit/chromium/src/js/DevTools.js
+++ b/WebKit/chromium/src/js/DevTools.js
@@ -93,7 +93,7 @@ devtools.ToolsAgent.prototype.getProfilerAgent = function()
  */
 devtools.ToolsAgent.prototype.dispatchOnClient_ = function(message)
 {
-    var args = JSON.parse(message);
+    var args = typeof message === "string" ? JSON.parse(message) : message;
     var methodName = args[0];
     var parameters = args.slice(1);
     WebInspector[methodName].apply(WebInspector, parameters);
@@ -129,6 +129,28 @@ devtools.tools = null;
 
 var context = {};  // Used by WebCore's inspector routines.
 
+(function() {
+    WebInspector._paramsObject = {};
+
+    var queryParams = window.location.search;
+    if (queryParams) {
+        var params = queryParams.substring(1).split("&");
+        for (var i = 0; i < params.length; ++i) {
+            var pair = params[i].split("=");
+            WebInspector._paramsObject[pair[0]] = pair[1];
+        }
+    }
+    if ("page" in WebInspector._paramsObject) {
+        WebInspector.socket = new WebSocket("ws://" + window.location.host + "/devtools/page/" + WebInspector._paramsObject.page);
+        WebInspector.socket.onmessage = function(message) { eval(message.data); }
+        WebInspector.socket.onerror = function(error) { console.err(error); }
+        WebInspector.socket.onopen = function() {
+            WebInspector.socketOpened = true;
+            if (WebInspector.loadedDone)
+                WebInspector.doLoadedDone();
+        };
+    }
+})();
 ///////////////////////////////////////////////////////////////////////////////
 // Here and below are overrides to existing WebInspector methods only.
 // TODO(pfeldman): Patch WebCore and upstream changes.
@@ -145,25 +167,25 @@ WebInspector.loaded = function()
     Preferences.canEditScriptSource = true;
     Preferences.appCacheEnabled = false;
 
-    oldLoaded.call(this);
+    if ("page" in WebInspector._paramsObject) {
+        WebInspector.loadedDone = true;
+        if (WebInspector.socketOpened)
+            WebInspector.doLoadedDone();
+        return;
+    }
+    WebInspector.doLoadedDone();
+}
 
+WebInspector.doLoadedDone = function() {
+    oldLoaded.call(this);
     InspectorFrontendHost.loaded();
-};
+}
 
 devtools.domContentLoaded = function()
 {
-    var queryParams = window.location.search;
-    if (queryParams) {
-        var params = queryParams.substring(1).split("&");
-        var paramsObject = {};
-        for (var i = 0; i < params.length; ++i) {
-            var pair = params[i].split("=");
-            paramsObject[pair[0]] = pair[1];
-        }
-        WebInspector.setAttachedWindow(paramsObject.docked === "true");
-        if (paramsObject.toolbar_color && paramsObject.text_color)
-            WebInspector.setToolbarColors(paramsObject.toolbar_color, paramsObject.text_color);
-    }
+    WebInspector.setAttachedWindow(WebInspector._paramsObject.docked === "true");
+    if (WebInspector._paramsObject.toolbar_color && WebInspector._paramsObject.text_color)
+        WebInspector.setToolbarColors(WebInspector._paramsObject.toolbar_color, WebInspector._paramsObject.text_color);
 }
 document.addEventListener("DOMContentLoaded", devtools.domContentLoaded, false);
 
diff --git a/WebKit/chromium/src/js/InspectorControllerImpl.js b/WebKit/chromium/src/js/InspectorControllerImpl.js
index 3ff902a..d8ee1e4 100644
--- a/WebKit/chromium/src/js/InspectorControllerImpl.js
+++ b/WebKit/chromium/src/js/InspectorControllerImpl.js
@@ -141,11 +141,15 @@ devtools.InspectorBackendImpl.prototype.installInspectorControllerDelegate_ = fu
  * Bound function with the installInjectedScriptDelegate_ actual
  * implementation.
  */
-devtools.InspectorBackendImpl.prototype.callInspectorController_ = function(methodName, var_arg)
+devtools.InspectorBackendImpl.prototype.callInspectorController_ = function()
 {
-    var args = Array.prototype.slice.call(arguments, 1);
-    args.unshift(methodName);
-    RemoteToolsAgent.dispatchOnInspectorController(WebInspector.Callback.wrap(function(){}), JSON.stringify(args));
+    var args = Array.prototype.slice.call(arguments);
+    var message = JSON.stringify(args);
+    var callbackId = WebInspector.Callback.wrap(function(){});
+    if ("page" in WebInspector._paramsObject)
+        WebInspector.socket.send(callbackId + " " + message);
+    else
+        RemoteToolsAgent.dispatchOnInspectorController(callbackId, message);
 };
 
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list