Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(55)

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/network/ResourceWebSocketFrameView.js

Issue 1468633002: DevTools: Prettify websocket frames preview on Network pane. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: update tests. Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Research In Motion Limited. All rights reserved. 2 * Copyright (C) 2012 Research In Motion Limited. All rights reserved.
3 * 3 *
4 * This library is free software; you can redistribute it and/or 4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public 5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either 6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version. 7 * version 2 of the License, or (at your option) any later version.
8 * 8 *
9 * This library is distributed in the hope that it will be useful, 9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 this._dataGrid.setCellClass("websocket-frame-view-td"); 42 this._dataGrid.setCellClass("websocket-frame-view-td");
43 this._timeComparator = /** @type {!WebInspector.SortableDataGrid.NodeCompara tor} */ (WebInspector.ResourceWebSocketFrameNodeTimeComparator); 43 this._timeComparator = /** @type {!WebInspector.SortableDataGrid.NodeCompara tor} */ (WebInspector.ResourceWebSocketFrameNodeTimeComparator);
44 this._dataGrid.sortNodes(this._timeComparator, false); 44 this._dataGrid.sortNodes(this._timeComparator, false);
45 this._dataGrid.markColumnAsSortedBy("time", WebInspector.DataGrid.Order.Asce nding); 45 this._dataGrid.markColumnAsSortedBy("time", WebInspector.DataGrid.Order.Asce nding);
46 this._dataGrid.addEventListener(WebInspector.DataGrid.Events.SortingChanged, this._sortItems, this); 46 this._dataGrid.addEventListener(WebInspector.DataGrid.Events.SortingChanged, this._sortItems, this);
47 47
48 this._dataGrid.setName("ResourceWebSocketFrameView"); 48 this._dataGrid.setName("ResourceWebSocketFrameView");
49 this._dataGrid.addEventListener(WebInspector.DataGrid.Events.SelectedNode, t his._onFrameSelected, this); 49 this._dataGrid.addEventListener(WebInspector.DataGrid.Events.SelectedNode, t his._onFrameSelected, this);
50 this._splitWidget.setMainWidget(this._dataGrid.asWidget()); 50 this._splitWidget.setMainWidget(this._dataGrid.asWidget());
51 51
52 this._messageView = new WebInspector.EmptyWidget("Select frame to browse its content."); 52 var view = new WebInspector.EmptyWidget("Select frame to browse its content. ");
53 this._splitWidget.setSidebarWidget(this._messageView); 53 this._splitWidget.setSidebarWidget(view);
54 } 54 }
55 55
56 /** @enum {number} */ 56 /** @enum {number} */
57 WebInspector.ResourceWebSocketFrameView.OpCodes = { 57 WebInspector.ResourceWebSocketFrameView.OpCodes = {
58 ContinuationFrame: 0, 58 ContinuationFrame: 0,
59 TextFrame: 1, 59 TextFrame: 1,
60 BinaryFrame: 2, 60 BinaryFrame: 2,
61 ConnectionCloseFrame: 8, 61 ConnectionCloseFrame: 8,
62 PingFrame: 9, 62 PingFrame: 9,
63 PongFrame: 10 63 PongFrame: 10
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 var frame = /** @type {!WebInspector.NetworkRequest.WebSocketFrame} */ ( event.data); 109 var frame = /** @type {!WebInspector.NetworkRequest.WebSocketFrame} */ ( event.data);
110 this._dataGrid.insertChild(new WebInspector.ResourceWebSocketFrameNode(f rame)); 110 this._dataGrid.insertChild(new WebInspector.ResourceWebSocketFrameNode(f rame));
111 }, 111 },
112 112
113 /** 113 /**
114 * @param {!WebInspector.Event} event 114 * @param {!WebInspector.Event} event
115 */ 115 */
116 _onFrameSelected: function(event) 116 _onFrameSelected: function(event)
117 { 117 {
118 var selectedNode = /** @type {!WebInspector.ResourceWebSocketFrameNode} */ (event.target.selectedNode); 118 var selectedNode = /** @type {!WebInspector.ResourceWebSocketFrameNode} */ (event.target.selectedNode);
119 if (this._messageView) 119 var contentProvider = selectedNode.contentProvider();
120 this._messageView.detach(); 120 contentProvider.requestContent(content => {
121 if (this._dataView) 121 var parsedJSON = content ? WebInspector.JSONView.parseJSON(content) : null;
122 this._dataView.detach(); 122 var view = parsedJSON ? new WebInspector.JSONView(parsedJSON) : new WebInspector.ResourceSourceFrame(contentProvider);
123 this._dataView = new WebInspector.ResourceSourceFrame(selectedNode.conte ntProvider()); 123 this._splitWidget.setSidebarWidget(view);
124 this._splitWidget.setSidebarWidget(this._dataView); 124 });
125 }, 125 },
126 126
127 refresh: function() 127 refresh: function()
128 { 128 {
129 this._dataGrid.rootNode().removeChildren(); 129 this._dataGrid.rootNode().removeChildren();
130 var frames = this._request.frames(); 130 var frames = this._request.frames();
131 for (var i = 0; i < frames.length; ++i) 131 for (var i = 0; i < frames.length; ++i)
132 this._dataGrid.insertChild(new WebInspector.ResourceWebSocketFrameNo de(frames[i])); 132 this._dataGrid.insertChild(new WebInspector.ResourceWebSocketFrameNo de(frames[i]));
133 }, 133 },
134 134
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 215
216 /** 216 /**
217 * @param {!WebInspector.ResourceWebSocketFrameNode} a 217 * @param {!WebInspector.ResourceWebSocketFrameNode} a
218 * @param {!WebInspector.ResourceWebSocketFrameNode} b 218 * @param {!WebInspector.ResourceWebSocketFrameNode} b
219 * @return {number} 219 * @return {number}
220 */ 220 */
221 WebInspector.ResourceWebSocketFrameNodeTimeComparator = function(a, b) 221 WebInspector.ResourceWebSocketFrameNodeTimeComparator = function(a, b)
222 { 222 {
223 return a._frame.time - b._frame.time; 223 return a._frame.time - b._frame.time;
224 } 224 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698