Skip to content

Commit 2e8ea2e

Browse files
author
p01
committed
Initial use of the Network API for the Resource Inspector. /!\ some things are not fully implemented yet, e.g. Detail view of a resource, default expand/collapse state of the tree, ...
1 parent 4f6fb8a commit 2e8ea2e

File tree

10 files changed

+577
-222
lines changed

10 files changed

+577
-222
lines changed

src/build-application/build_resource_manager_1_0.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,18 @@
33
window.app.builders.ResourceManager["1.0"] = function(service)
44
{
55
var network_logger = new cls.NetworkLogger();
6-
new cls.ResourceTreeView('resource_tree_view','Tree View');
7-
new cls.ResourceDetailView('resource_detail_view', 'Detail');
6+
new cls.ResourceTreeView("resource_tree_view",
7+
"Tree View",
8+
"resource-tree",
9+
"",
10+
"",
11+
network_logger);
12+
new cls.ResourceDetailView("resource_detail_view",
13+
"Detail",
14+
"",
15+
// "",
16+
"",
17+
network_logger);
818
cls.ResourceDetailView.create_ui_widgets();
919

1020
new cls.NetworkLogView("network_logger",

src/client-en.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,7 @@ window.load_screen_timeout = window.setTimeout(function()
220220
<script src="./lib/nodelistprototype.js"/>
221221
<script src="./lib/objectnamespace.js"/>
222222
<script src="./lib/operanamespace.js"/>
223+
<script src="./lib/functionprototype.js"/>
223224
<script src="./lib/datenamespace.js"/>
224225
<script src="./lib/stringprototype.js"/>
225226
<script src="./lib/stylesheetlistprototype.js"/>
@@ -515,13 +516,13 @@ window.load_screen_timeout = window.setTimeout(function()
515516
<script src="./resource-manager/resourcemanager.1.0.events.onresponseheader.js"/>
516517
<script src="./resource-manager/resourcemanager.1.0.events.onresponsefinished.js"/>
517518
<script src="./resource-manager/documentmanager.1.0.events.onabouttoloaddocument.js"/>
519+
<script src="./resource-manager/documentmanager.1.0.responses.listdocuments.js"/>
518520
<script src="./resource-manager/resourcemanager.1.2.events.onurlunload.js"/>
519521
<script src="./resource-manager/resourcemanager.1.2.responses.getresource.js"/>
520522
<script src="./resource-manager/resource_test_view.js"/>
521523
<script src="./resource-manager/resource_detail_view.js"/>
522524
<script src="./resource-manager/resourcemanager.1.3.responses.createrequest.js"/>
523525

524-
525526
<script src="./network/network_service.js"/>
526527
<script src="./network/network_view.js"/>
527528
<script src="./network/network_request_crafting_view.js"/>

src/lib/functionprototype.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/**
2+
* Throttle the function to run at most every delay ms
3+
* @argument delay {Number}
4+
*/
5+
Function.prototype.throttle || (Function.prototype.throttle = function( delay )
6+
{
7+
var _callback = this;
8+
var _last = 0;
9+
var _timeout = 0;
10+
var _wrapped = function()
11+
{
12+
_timeout = 0;
13+
_last = Date.now();
14+
_callback();
15+
};
16+
17+
return function()
18+
{
19+
if (_last < Date.now()-delay)
20+
_wrapped();
21+
else if (!_timeout)
22+
_timeout = setTimeout(_wrapped, delay);
23+
}
24+
});

src/network/network_templates.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@ templates.url_list_entry = function(selected, entry)
227227
return ["li",
228228
templates.icon(entry),
229229
["span",
230-
(entry.short_distinguisher || entry.human_url).slice(0, 200),
230+
(entry.short_distinguisher || entry.human_url || entry.url || "NO URL").slice(0, 200),
231231
"class", "network-url",
232232
"data-tooltip", "network-url-list-tooltip"
233233
],
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
// Autogenerated by hob
2+
window.cls || (window.cls = {});
3+
cls.DocumentManager || (cls.DocumentManager = {});
4+
cls.DocumentManager["1.0"] || (cls.DocumentManager["1.0"] = {});
5+
6+
cls.DocumentManager["1.0"].DocumentList = function(arr)
7+
{
8+
this.documentList = (arr[0] || []).map(function(item)
9+
{
10+
return new cls.DocumentManager["1.0"].Document(item);
11+
});
12+
};
13+
14+
cls.DocumentManager["1.0"].Document = function(arr)
15+
{
16+
this.windowID = arr[0];
17+
this.frameID = arr[1];
18+
this.documentID = arr[2];
19+
/**
20+
* The parent frame, present only if the frame is not the
21+
* top level frame.
22+
*/
23+
this.parentFrameID = arr[3];
24+
/**
25+
* Present unless this document is the top-level document
26+
* in the Window.
27+
*/
28+
this.parentDocumentID = arr[4];
29+
/**
30+
* The current URL of the document.
31+
*/
32+
this.url = arr[5];
33+
/**
34+
* The resource used to generate this document.
35+
*/
36+
this.resourceID = arr[6];
37+
/**
38+
* The value of the name attribute of the HTMLFrameElement. If the
39+
* frame does not have a name, or this document is not associated with
40+
* a HTMLFrameElement, this will field will not be present.
41+
*/
42+
this.frameElementName = arr[7];
43+
/**
44+
* The value of the id attribute of the HTMLFrameElement. If the
45+
* frame does not have an id, or this document is not associated with
46+
* a HTMLFrameElement, this will field will not be present.
47+
*/
48+
this.frameElementID = arr[8];
49+
};
50+

src/resource-manager/resource_detail_view.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44
* @constructor
55
* @extends ViewBase
66
*/
7-
cls.ResourceDetailView = function(id, name, container_class, html, default_handler) {
7+
cls.ResourceDetailView = function(id, name, container_class, html, default_handler, network_logger) {
88
if (cls.ResourceDetailView.instance)
99
{
1010
return cls.ResourceDetailView.instance;
1111
}
1212
cls.ResourceDetailView.instance = this;
1313

14-
this._service = new cls.ResourceManagerService(this);
14+
this._service = new cls.ResourceManagerService(this, network_logger);
15+
1516

1617
this.createView = function(container)
1718
{
@@ -176,13 +177,15 @@ cls.ResourceDetailView = function(id, name, container_class, html, default_handl
176177
{
177178
this.data = data;
178179

180+
this.resource = resource;
181+
/*
179182
if(resource instanceof cls.Resource)
180183
this._show_resource_by_instance(resource);
181184
else if (resource==Number(resource))
182185
this._show_resource_by_id(resource);
183186
else if (resource==String(resource))
184187
this._show_resource_url(resource);
185-
188+
*/
186189
this.update();
187190
window.UI.instance.show_view( window.views.resource_detail_view.id );
188191
}

0 commit comments

Comments
 (0)