Changeset 138000 in webkit
- Timestamp:
- Dec 18, 2012, 2:03:20 AM (13 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r137999 r138000 1 2012-12-18 Eugene Klyuchnikov <eustas@chromium.org> 2 3 Web Inspector: Network: display JavaScript stack in case of script initiator. 4 https://bugs.webkit.org/show_bug.cgi?id=104899 5 6 Reviewed by Vsevolod Vlasov. 7 8 Show popup with navigavle stack-trace. 9 10 * inspector/front-end/NetworkPanel.js: 11 (WebInspector.NetworkLogView.prototype._getPopoverAnchor): 12 Added new target. 13 (WebInspector.NetworkLogView.prototype._showPopover): 14 Added case for new target. 15 (WebInspector.NetworkLogView.prototype._generateScriptInitiatedPopoverContent): 16 Generates table with stack trace items. 17 (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell): 18 Added target marker, removed annoying titles. 19 1 20 2012-12-18 Tamas Czene <tczene@inf.u-szeged.hu> 2 21 -
trunk/Source/WebCore/inspector/front-end/NetworkPanel.js
r137136 r138000 926 926 return; 927 927 var anchor = element.enclosingNodeOrSelfWithClass("network-graph-bar") || element.enclosingNodeOrSelfWithClass("network-graph-label"); 928 if (!anchor) 929 return null; 930 var request = anchor.parentElement.request; 931 return request && request.timing ? anchor : null; 928 if (anchor && anchor.parentElement.request && anchor.parentElement.request.timing) 929 return anchor; 930 anchor = element.enclosingNodeOrSelfWithClass("network-script-initiated"); 931 if (anchor && anchor.request && anchor.request.initiator) 932 return anchor; 933 934 return null; 932 935 }, 933 936 … … 938 941 _showPopover: function(anchor, popover) 939 942 { 940 var request = anchor.parentElement.request; 941 var tableElement = WebInspector.RequestTimingView.createTimingTable(request); 942 popover.show(tableElement, anchor); 943 var content; 944 if (anchor.hasStyleClass("network-script-initiated")) 945 content = this._generateScriptInitiatedPopoverContent(anchor.request); 946 else 947 content = WebInspector.RequestTimingView.createTimingTable(anchor.parentElement.request); 948 popover.show(content, anchor); 949 }, 950 951 /** 952 * @param {!WebInspector.NetworkRequest} request 953 * @return {!Element} 954 */ 955 _generateScriptInitiatedPopoverContent: function(request) 956 { 957 var stackTrace = request.initiator.stackTrace; 958 var framesTable = document.createElement("table"); 959 for (var i = 0; i < stackTrace.length; ++i) { 960 var stackFrame = stackTrace[i]; 961 var row = document.createElement("tr"); 962 row.createChild("td").textContent = stackFrame.functionName ? stackFrame.functionName : WebInspector.UIString("(anonymous function)"); 963 row.createChild("td").textContent = " @ "; 964 row.createChild("td").appendChild(this._linkifier.linkifyLocation(stackFrame.url, stackFrame.lineNumber - 1, 0)); 965 framesTable.appendChild(row); 966 } 967 return framesTable; 943 968 }, 944 969 … … 2011 2036 _refreshInitiatorCell: function() 2012 2037 { 2038 this._initiatorCell.removeStyleClass("network-dim-cell"); 2039 this._initiatorCell.removeStyleClass("network-script-initiated"); 2040 delete this._initiatorCell.request; 2041 this._initiatorCell.title = null; 2042 2013 2043 var initiator = this._request.initiator; 2014 2044 if ((initiator && initiator.type !== "other") || this._request.redirectSource) { 2015 this._initiatorCell.removeStyleClass("network-dim-cell");2016 2045 this._initiatorCell.removeChildren(); 2017 2046 if (this._request.redirectSource) { … … 2028 2057 return; 2029 2058 } 2030 this._initiatorCell.title = topFrame.url + ":" + topFrame.lineNumber;2031 2059 var urlElement = this._parentView._linkifier.linkifyLocation(topFrame.url, topFrame.lineNumber - 1, 0); 2060 urlElement.title = null; 2032 2061 this._initiatorCell.appendChild(urlElement); 2033 2062 this._appendSubtitle(this._initiatorCell, WebInspector.UIString("Script")); 2063 this._initiatorCell.addStyleClass("network-script-initiated"); 2064 this._initiatorCell.request = this._request; 2034 2065 } else { // initiator.type === "parser" 2035 2066 this._initiatorCell.title = initiator.url + ":" + initiator.lineNumber;
Note:
See TracChangeset
for help on using the changeset viewer.