<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[186580] trunk/Source/WebInspectorUI</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/186580">186580</a></dd>
<dt>Author</dt> <dd>timothy@apple.com</dd>
<dt>Date</dt> <dd>2015-07-08 22:47:04 -0700 (Wed, 08 Jul 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>Web Inspector: Add page weight and time back to the toolbar dashboard
https://bugs.webkit.org/show_bug.cgi?id=146755
Revert <a href="http://trac.webkit.org/projects/webkit/changeset/183328">r183328</a> which removed the page weight and load time from the dashboard. We have space
in the dashboard, we can put these back since we didn't find a better home for them.
Reviewed by Joseph Pecoraro.
* Localizations/en.lproj/localizedStrings.js: Updated.
* UserInterface/Base/Main.js:
(WebInspector.showNetworkTab):
* UserInterface/Images/Time.svg: Added.
* UserInterface/Images/Weight.svg: Added.
* UserInterface/Images/gtk/Time.svg: Added.
* UserInterface/Images/gtk/Weight.svg: Added.
* UserInterface/Models/DefaultDashboard.js:
(WebInspector.DefaultDashboard):
(WebInspector.DefaultDashboard.prototype.get resourcesSize):
(WebInspector.DefaultDashboard.prototype.set resourcesSize):
(WebInspector.DefaultDashboard.prototype.get time):
(WebInspector.DefaultDashboard.prototype.set time):
(WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
(WebInspector.DefaultDashboard.prototype._capturingStopped):
(WebInspector.DefaultDashboard.prototype._startUpdatingTime):
(WebInspector.DefaultDashboard.prototype._stopUpdatingTime):
(WebInspector.DefaultDashboard.prototype._updateTime):
* UserInterface/Views/DashboardContainerView.css:
(body.web .toolbar .dashboard-container):
(body.javascript .toolbar .dashboard-container):
(.toolbar.collapsed .dashboard-container):
(.toolbar .dashboard-container): Deleted.
* UserInterface/Views/DefaultDashboardView.css:
(body.web .toolbar.collapsed .dashboard.default > :matches(.resourcesSize, .time, .logs)):
(body.javascript .toolbar .dashboard.default > :matches(.resourcesCount, .resourcesSize, .time)):
(.toolbar .dashboard.default > .resourcesSize):
(.toolbar .dashboard.default > .time > img):
(.toolbar .dashboard.default > .resourcesSize > img):
(body.web .toolbar.collapsed .dashboard.default > .item.resourcesCount): Deleted.
(body.javascript .toolbar .dashboard.default > .item.resourcesCount): Deleted.
* UserInterface/Views/DefaultDashboardView.js:
(WebInspector.DefaultDashboardView):
(WebInspector.DefaultDashboardView.prototype._updateDisplay):
(WebInspector.DefaultDashboardView.prototype._networkItemWasClicked):
(WebInspector.DefaultDashboardView.prototype._timelineItemWasClicked):</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebInspectorUIChangeLog">trunk/Source/WebInspectorUI/ChangeLog</a></li>
<li><a href="#trunkSourceWebInspectorUILocalizationsenlprojlocalizedStringsjs">trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceBaseMainjs">trunk/Source/WebInspectorUI/UserInterface/Base/Main.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceModelsDefaultDashboardjs">trunk/Source/WebInspectorUI/UserInterface/Models/DefaultDashboard.js</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsDashboardContainerViewcss">trunk/Source/WebInspectorUI/UserInterface/Views/DashboardContainerView.css</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsDefaultDashboardViewcss">trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.css</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceViewsDefaultDashboardViewjs">trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.js</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceImagesTimesvg">trunk/Source/WebInspectorUI/UserInterface/Images/Time.svg</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceImagesWeightsvg">trunk/Source/WebInspectorUI/UserInterface/Images/Weight.svg</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceImagesgtkTimesvg">trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Time.svg</a></li>
<li><a href="#trunkSourceWebInspectorUIUserInterfaceImagesgtkWeightsvg">trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Weight.svg</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebInspectorUIChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/ChangeLog (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/ChangeLog        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/ChangeLog        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -1,3 +1,50 @@
</span><ins>+2015-07-08 Timothy Hatcher <timothy@apple.com>
+
+ Web Inspector: Add page weight and time back to the toolbar dashboard
+ https://bugs.webkit.org/show_bug.cgi?id=146755
+
+ Revert r183328 which removed the page weight and load time from the dashboard. We have space
+ in the dashboard, we can put these back since we didn't find a better home for them.
+
+ Reviewed by Joseph Pecoraro.
+
+ * Localizations/en.lproj/localizedStrings.js: Updated.
+ * UserInterface/Base/Main.js:
+ (WebInspector.showNetworkTab):
+ * UserInterface/Images/Time.svg: Added.
+ * UserInterface/Images/Weight.svg: Added.
+ * UserInterface/Images/gtk/Time.svg: Added.
+ * UserInterface/Images/gtk/Weight.svg: Added.
+ * UserInterface/Models/DefaultDashboard.js:
+ (WebInspector.DefaultDashboard):
+ (WebInspector.DefaultDashboard.prototype.get resourcesSize):
+ (WebInspector.DefaultDashboard.prototype.set resourcesSize):
+ (WebInspector.DefaultDashboard.prototype.get time):
+ (WebInspector.DefaultDashboard.prototype.set time):
+ (WebInspector.DefaultDashboard.prototype._mainResourceDidChange):
+ (WebInspector.DefaultDashboard.prototype._capturingStopped):
+ (WebInspector.DefaultDashboard.prototype._startUpdatingTime):
+ (WebInspector.DefaultDashboard.prototype._stopUpdatingTime):
+ (WebInspector.DefaultDashboard.prototype._updateTime):
+ * UserInterface/Views/DashboardContainerView.css:
+ (body.web .toolbar .dashboard-container):
+ (body.javascript .toolbar .dashboard-container):
+ (.toolbar.collapsed .dashboard-container):
+ (.toolbar .dashboard-container): Deleted.
+ * UserInterface/Views/DefaultDashboardView.css:
+ (body.web .toolbar.collapsed .dashboard.default > :matches(.resourcesSize, .time, .logs)):
+ (body.javascript .toolbar .dashboard.default > :matches(.resourcesCount, .resourcesSize, .time)):
+ (.toolbar .dashboard.default > .resourcesSize):
+ (.toolbar .dashboard.default > .time > img):
+ (.toolbar .dashboard.default > .resourcesSize > img):
+ (body.web .toolbar.collapsed .dashboard.default > .item.resourcesCount): Deleted.
+ (body.javascript .toolbar .dashboard.default > .item.resourcesCount): Deleted.
+ * UserInterface/Views/DefaultDashboardView.js:
+ (WebInspector.DefaultDashboardView):
+ (WebInspector.DefaultDashboardView.prototype._updateDisplay):
+ (WebInspector.DefaultDashboardView.prototype._networkItemWasClicked):
+ (WebInspector.DefaultDashboardView.prototype._timelineItemWasClicked):
+
</ins><span class="cx"> 2015-07-08 Devin Rousso <drousso@apple.com>
</span><span class="cx">
</span><span class="cx"> Web Inspector: Style sidebar is showing incorrect strikethroughs
</span></span></pre></div>
<a id="trunkSourceWebInspectorUILocalizationsenlprojlocalizedStringsjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/Localizations/en.lproj/localizedStrings.js        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -489,6 +489,7 @@
</span><span class="cx"> localizedStrings["The value '%s' is not supported for this property.\nClick to delete and open autocomplete."] = "The value '%s' is not supported for this property.\nClick to delete and open autocomplete.";
</span><span class="cx"> localizedStrings["The %s \ntable is empty."] = "The %s \ntable is empty.";
</span><span class="cx"> localizedStrings["This property needs a value.\nClick to open autocomplete."] = "This property needs a value.\nClick to open autocomplete.";
</span><ins>+localizedStrings["Time until the load event fired, click to show the Network Requests timeline"] = "Time until the load event fired, click to show the Network Requests timeline";
</ins><span class="cx"> localizedStrings["Timeline Events"] = "Timeline Events";
</span><span class="cx"> localizedStrings["Timeline Recording %d"] = "Timeline Recording %d";
</span><span class="cx"> localizedStrings["Timelines"] = "Timelines";
</span><span class="lines">@@ -500,6 +501,7 @@
</span><span class="cx"> localizedStrings["Timer Removed"] = "Timer Removed";
</span><span class="cx"> localizedStrings["Total Time"] = "Total Time";
</span><span class="cx"> localizedStrings["Total number of resources, click to show the Resources tab"] = "Total number of resources, click to show the Resources tab";
</span><ins>+localizedStrings["Total size of all resources, click to show the Network Requests timeline"] = "Total size of all resources, click to show the Network Requests timeline";
</ins><span class="cx"> localizedStrings["Transfered"] = "Transfered";
</span><span class="cx"> localizedStrings["Triggered Breakpoint"] = "Triggered Breakpoint";
</span><span class="cx"> localizedStrings["Type"] = "Type";
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceBaseMainjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Main.js (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Base/Main.js        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/Main.js        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -810,6 +810,14 @@
</span><span class="cx"> this.tabBrowser.showTabForContentView(tabContentView);
</span><span class="cx"> };
</span><span class="cx">
</span><ins>+WebInspector.showNetworkTab = function()
+{
+ var tabContentView = this.tabBrowser.bestTabContentViewForClass(WebInspector.NetworkTabContentView);
+ if (!tabContentView)
+ tabContentView = new WebInspector.NetworkTabContentView;
+ this.tabBrowser.showTabForContentView(tabContentView);
+};
+
</ins><span class="cx"> WebInspector.showTimelineTab = function()
</span><span class="cx"> {
</span><span class="cx"> var tabContentView = this.tabBrowser.bestTabContentViewForClass(WebInspector.TimelineTabContentView);
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceImagesTimesvg"></a>
<div class="addfile"><h4>Added: trunk/Source/WebInspectorUI/UserInterface/Images/Time.svg (0 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Images/Time.svg         (rev 0)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/Time.svg        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright © 2014 Apple Inc. All rights reserved. -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
+ <circle fill="none" stroke="black" cx="8.5" cy="8.5" r="6.5"/>
+ <path fill="none" stroke="black" d="M 8.5 3.5 L 8.5 8.5 L 10.5 10.5"/>
+</svg>
</ins></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceImagesWeightsvg"></a>
<div class="addfile"><h4>Added: trunk/Source/WebInspectorUI/UserInterface/Images/Weight.svg (0 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Images/Weight.svg         (rev 0)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/Weight.svg        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -0,0 +1,6 @@
</span><ins>+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright © 2014 Apple Inc. All rights reserved. -->
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
+ <path fill="none" stroke="black" d="M 2.5 13.5 L 4.5 4.5 L 11.5 4.5 L 13.5 13.5 L 2.5 13.5 Z"/>
+ <rect fill="none" stroke="black" x="6.5" y="2.5" width="3" height="2" rx="1"/>
+</svg>
</ins></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceImagesgtkTimesvg"></a>
<div class="addfile"><h4>Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Time.svg (0 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Time.svg         (rev 0)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Time.svg        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -0,0 +1,8 @@
</span><ins>+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Licensed under the Creative Commons Attribution-Share Alike 3.0 United States License (http://creativecommons.org/licenses/by-sa/3.0/) -->
+<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 16 16">
+ <g transform="matrix(.80143 0 0 .80143 1.1986 1.984)">
+ <path style="block-progression:tb;color:#000000" d="m8.4866 0.01994c-4.1303 0-7.4866 3.3563-7.4866 7.4866s3.3563 7.4866 7.4866 7.4866 7.4866-3.3563 7.4866-7.4866-3.3563-7.4866-7.4866-7.4866zm0 1.9732c3.0494 0 5.5134 2.464 5.5134 5.5134s-2.464 5.5134-5.5134 5.5134-5.5134-2.464-5.5134-5.5134 2.464-5.5134 5.5134-5.5134z"/>
+ <path style="block-progression:tb;color:#000000" d="m11.393 4.0065a0.50005 0.50005 0 0 0 -0.25 0.15625l-2.6564 2.6562-1.6562-1.6562a0.50005 0.50005 0 1 0 -0.6875 0.6875l2 2a0.50005 0.50005 0 0 0 0.6875 0l3-3a0.50005 0.50005 0 0 0 -0.4375 -0.84375z"/>
+ </g>
+</svg>
</ins></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceImagesgtkWeightsvg"></a>
<div class="addfile"><h4>Added: trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Weight.svg (0 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Weight.svg         (rev 0)
+++ trunk/Source/WebInspectorUI/UserInterface/Images/gtk/Weight.svg        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -0,0 +1,5 @@
</span><ins>+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Licensed under the Creative Commons Attribution-Share Alike 3.0 United States License (http://creativecommons.org/licenses/by-sa/3.0/) -->
+<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 16 16">
+ <path style="color:#000000;enable-background:new" d="m4.4375 2c-0.5204 0-0.9375 0.4171-0.9375 0.9375v0.125c0 0.5204 0.4171 0.9375 0.9375 0.9375h0.5625v1h-0.6562c-0.4742 0-0.8438 0.3696-0.8438 0.8438v8.1562h9v-8.1562c0-0.4742-0.37-0.8438-0.844-0.8438h-0.656v-1h0.562c0.521 0 0.938-0.4171 0.938-0.9375v-0.125c0-0.5204-0.417-0.9375-0.938-0.9375h-7.125zm0.90625 5.5625c0.02072-0.00261 0.04178-0.00261 0.0625 0h0.5937c0.0329 0.0041 0.065 0.0147 0.0938 0.0313 0.0221 0.0074 0.0432 0.0179 0.0624 0.0312 0.0564 0.045 0.0916 0.1154 0.0938 0.1875v0.96875l0.90625-1.125c0.038-0.0492 0.095-0.0833 0.1563-0.0937 0.0104-0.0006514 0.02085-0.0006514 0.03125 0h0.6875c0.03291 0.00406 0.06499 0.014754 0.09375 0.03125 0.02216 0.00743 0.04326 0.017981 0.0625 0.03125 0.04921 0.03799 0.08339 0.094948 0.09375 0.15625 0.0059 0.030879 0.0059 0.062871 0 0.09375-0.0134 0.0354-0.035 0.0678-0.0625 0.0938l-1.1876 1.4687 1.2813 1.5625c0.01327 0.01924 0.02385 0.04034 0.03125 0.0625 0.02104 0.038
0.031929 0.08157 0.03125 0.125-0.0041 0.032-0.0148 0.064-0.0312 0.093-0.0222 0.039-0.0549 0.072-0.0938 0.094-0.01924 0.01327-0.04034 0.02385-0.0625 0.03125-0.02072 0.0026-0.04178 0.0026-0.0625 0h-0.71875c-0.0329-0.004-0.0649-0.014-0.0937-0.031-0.0222-0.007-0.0433-0.018-0.0625-0.031-0.0113-0.01-0.0218-0.02-0.0312-0.032l-0.9688-1.218v1.0625c-0.0022 0.072-0.0374 0.143-0.0938 0.188-0.0192 0.013-0.0403 0.024-0.0624 0.031-0.0288 0.017-0.0609 0.027-0.0938 0.031h-0.59375c-0.02072 0.0026-0.04178 0.0026-0.0625 0-0.09079-0.02092-0.16658-0.09671-0.1875-0.1875-0.0026-0.02072-0.0026-0.04178 0-0.0625v-3.3438c0.005-0.0942 0.0686-0.1831 0.1563-0.2184 0.0095-0.0114 0.0199-0.0218 0.0313-0.0313zm4.0937 0.9687c0.2374 0 0.39451 0.086642 0.5625 0.15625 0.0095-0.011311 0.01994-0.02178 0.03125-0.03125 0.0095-0.011311 0.01994-0.02178 0.03125-0.03125 0.02876-0.016496 0.06084-0.02719 0.09375-0.03125 0.0104-0.0006514 0.02085-0.0006514 0.03125 0h0.40625c0.04343-0.000679 0.087 0.010212 0.125 0.03125 0.011
31 0.00947 0.02175 0.019939 0.03125 0.03125 0.04343 0.030323 0.0768 0.074815 0.09375 0.125 0.0026 0.020724 0.0026 0.041776 0 0.0625v2.375c0 0.3107-0.07692 0.6703-0.3125 0.96875s-0.62478 0.5-1.1875 0.5c-0.24977 0-0.57703-0.06006-0.90625-0.1875l-0.094-0.031c-0.0114-0.01-0.0218-0.02-0.0313-0.031-0.0607-0.032-0.1072-0.09-0.125-0.157-0.00068-0.04343 0.01021-0.087 0.03125-0.125l0.1562-0.437c0.0074-0.022 0.018-0.044 0.0312-0.063 0.0095-0.011 0.02-0.022 0.0313-0.031 0.0506-0.045 0.12-0.068 0.1875-0.063 0.02072-0.0026 0.04178-0.0026 0.0625 0l0.09375 0.0625c0.13955 0.04652 0.33541 0.09375 0.5 0.09375 0.27536 0 0.35369-0.05106 0.40625-0.125 0.01963-0.02762 0.01759-0.1358 0.03125-0.1875-0.068835 0.01053-0.11241 0.0625-0.1875 0.0625-0.42852 0-0.80814-0.14278-1.0625-0.40625-0.2543-0.263-0.3749-0.641-0.3749-1.062 0-0.5275 0.1921-0.9249 0.4687-1.1562 0.2766-0.2314 0.6012-0.3126 0.875-0.3126zm0.1563 0.9688c-0.15489 0-0.25367 0.0358-0.3125 0.09375s-0.09375 0.17689-0.09375 0.4375c0 0.22455 0.0
5965 0.31499 0.125 0.375 0.0652 0.06 0.1606 0.094 0.3124 0.094 0.06061 0 0.10828-0.01424 0.15625-0.03125v-0.9375c-0.06-0.0116-0.1334-0.0315-0.1874-0.0315z" display="block"/>
+</svg>
</ins></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceModelsDefaultDashboardjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Models/DefaultDashboard.js (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Models/DefaultDashboard.js        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/UserInterface/Models/DefaultDashboard.js        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -29,8 +29,13 @@
</span><span class="cx"> {
</span><span class="cx"> super();
</span><span class="cx">
</span><ins>+ this._waitingForFirstMainResourceToStartTrackingSize = true;
+
+ // Necessary event required to track page load time and resource sizes.
+ WebInspector.Frame.addEventListener(WebInspector.Frame.Event.MainResourceDidChange, this._mainResourceDidChange, this);
+ WebInspector.timelineManager.addEventListener(WebInspector.TimelineManager.Event.CapturingStopped, this._capturingStopped, this);
+
</ins><span class="cx"> // Necessary events required to track load of resources.
</span><del>- WebInspector.Frame.addEventListener(WebInspector.Frame.Event.MainResourceDidChange, this._mainResourceDidChange, this);
</del><span class="cx"> WebInspector.Frame.addEventListener(WebInspector.Frame.Event.ResourceWasAdded, this._resourceWasAdded, this);
</span><span class="cx"> WebInspector.frameResourceManager.addEventListener(WebInspector.FrameResourceManager.Event.FrameWasAdded, this._frameWasAdded, this);
</span><span class="cx">
</span><span class="lines">@@ -41,6 +46,8 @@
</span><span class="cx"> logManager.addEventListener(WebInspector.LogManager.Event.PreviousMessageRepeatCountUpdated, this._consoleMessageWasRepeated, this);
</span><span class="cx">
</span><span class="cx"> this._resourcesCount = 0;
</span><ins>+ this._resourcesSize = 0;
+ this._time = 0;
</ins><span class="cx"> this._logs = 0;
</span><span class="cx"> this._errors = 0;
</span><span class="cx"> this._issues = 0;
</span><span class="lines">@@ -59,6 +66,28 @@
</span><span class="cx"> this._dataDidChange();
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+ get resourcesSize()
+ {
+ return this._resourcesSize;
+ }
+
+ set resourcesSize(value)
+ {
+ this._resourcesSize = value;
+ this._dataDidChange();
+ }
+
+ get time()
+ {
+ return this._time;
+ }
+
+ set time(value)
+ {
+ this._time = value;
+ this._dataDidChange();
+ }
+
</ins><span class="cx"> get logs()
</span><span class="cx"> {
</span><span class="cx"> return this._logs;
</span><span class="lines">@@ -101,13 +130,36 @@
</span><span class="cx">
</span><span class="cx"> _mainResourceDidChange(event)
</span><span class="cx"> {
</span><ins>+ console.assert(event.target instanceof WebInspector.Frame);
+
</ins><span class="cx"> if (!event.target.isMainFrame())
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> this._resourcesCount = 1;
</span><ins>+ this._resourcesSize = WebInspector.frameResourceManager.mainFrame.mainResource.size || 0;
+
+ // Only update the time if we are recording the timeline.
+ if (!WebInspector.timelineManager.isCapturing()) {
+ this._time = 0;
+ return;
+ }
+
+ // We should only track resource sizes on fresh loads.
+ if (this._waitingForFirstMainResourceToStartTrackingSize) {
+ this._waitingForFirstMainResourceToStartTrackingSize = false;
+ WebInspector.Resource.addEventListener(WebInspector.Resource.Event.SizeDidChange, this._resourceSizeDidChange, this);
+ }
+
</ins><span class="cx"> this._dataDidChange();
</span><ins>+ this._startUpdatingTime();
</ins><span class="cx"> }
</span><span class="cx">
</span><ins>+ _capturingStopped(event)
+ {
+ // If recording stops, we should stop the timer if it hasn't stopped already.
+ this._stopUpdatingTime();
+ }
+
</ins><span class="cx"> _resourceWasAdded(event)
</span><span class="cx"> {
</span><span class="cx"> ++this.resourcesCount;
</span><span class="lines">@@ -118,6 +170,59 @@
</span><span class="cx"> ++this.resourcesCount;
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+ _startUpdatingTime()
+ {
+ this._stopUpdatingTime();
+
+ this.time = 0;
+
+ this._timelineBaseTime = Date.now();
+ this._timeIntervalDelay = 50;
+ this._timeIntervalIdentifier = setInterval(this._updateTime.bind(this), this._timeIntervalDelay);
+ }
+
+ _stopUpdatingTime()
+ {
+ if (!this._timeIntervalIdentifier)
+ return;
+
+ clearInterval(this._timeIntervalIdentifier);
+ this._timeIntervalIdentifier = undefined;
+ }
+
+ _updateTime()
+ {
+ var duration = Date.now() - this._timelineBaseTime;
+
+ var timeIntervalDelay = this._timeIntervalDelay;
+ if (duration >= 1000) // 1 second
+ timeIntervalDelay = 100;
+ else if (duration >= 60000) // 60 seconds
+ timeIntervalDelay = 1000;
+ else if (duration >= 3600000) // 1 minute
+ timeIntervalDelay = 10000;
+
+ if (timeIntervalDelay !== this._timeIntervalDelay) {
+ this._timeIntervalDelay = timeIntervalDelay;
+
+ clearInterval(this._timeIntervalIdentifier);
+ this._timeIntervalIdentifier = setInterval(this._updateTime.bind(this), this._timeIntervalDelay);
+ }
+
+ var mainFrame = WebInspector.frameResourceManager.mainFrame;
+ var mainFrameStartTime = mainFrame.mainResource.firstTimestamp;
+ var mainFrameLoadEventTime = mainFrame.loadEventTimestamp;
+
+ if (isNaN(mainFrameStartTime) || isNaN(mainFrameLoadEventTime)) {
+ this.time = duration / 1000;
+ return;
+ }
+
+ this.time = mainFrameLoadEventTime - mainFrameStartTime;
+
+ this._stopUpdatingTime();
+ }
+
</ins><span class="cx"> _consoleMessageAdded(event)
</span><span class="cx"> {
</span><span class="cx"> var message = event.data.message;
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsDashboardContainerViewcss"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DashboardContainerView.css (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/DashboardContainerView.css        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DashboardContainerView.css        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -25,16 +25,25 @@
</span><span class="cx">
</span><span class="cx"> .toolbar .dashboard-container {
</span><span class="cx"> position: relative;
</span><del>- width: 36vw;
</del><span class="cx">
</span><span class="cx"> border-radius: 4px;
</span><span class="cx"> margin: 4px;
</span><span class="cx"> overflow: hidden;
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+body.web .toolbar .dashboard-container {
+ width: 36vw;
+ min-width: 350px;
+}
</ins><span class="cx">
</span><ins>+body.javascript .toolbar .dashboard-container {
+ width: 25vw;
+ min-width: 175px;
+}
+
</ins><span class="cx"> .toolbar.collapsed .dashboard-container {
</span><del>- width: 175px;
</del><ins>+ min-width: 175px !important;
+ width: 175px !important;
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> .toolbar.icon-and-label-vertical:matches(.small-size, .normal-size) .dashboard-container {
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsDefaultDashboardViewcss"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.css (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.css        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.css        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -23,11 +23,11 @@
</span><span class="cx"> * THE POSSIBILITY OF SUCH DAMAGE.
</span><span class="cx"> */
</span><span class="cx">
</span><del>-body.web .toolbar.collapsed .dashboard.default > .item.resourcesCount {
</del><ins>+body.web .toolbar.collapsed .dashboard.default > :matches(.resourcesSize, .time, .logs) {
</ins><span class="cx"> display: none;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-body.javascript .toolbar .dashboard.default > .item.resourcesCount {
</del><ins>+body.javascript .toolbar .dashboard.default > :matches(.resourcesCount, .resourcesSize, .time) {
</ins><span class="cx"> display: none;
</span><span class="cx"> }
</span><span class="cx">
</span><span class="lines">@@ -53,6 +53,11 @@
</span><span class="cx"> border: 1px solid transparent;
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+.toolbar .dashboard.default > .time,
+.toolbar .dashboard.default > .resourcesSize {
+ min-width: 70px;
+}
+
</ins><span class="cx"> .toolbar .dashboard.default > .item.enabled:hover {
</span><span class="cx"> border: 1px solid rgba(0, 0, 0, 0.1);
</span><span class="cx"> }
</span><span class="lines">@@ -101,10 +106,18 @@
</span><span class="cx"> content: url(../Images/Resources.svg);
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+.toolbar .dashboard.default > .time > img {
+ content: url(../Images/Time.svg);
+}
+
</ins><span class="cx"> .toolbar .dashboard.default > .logs > img {
</span><span class="cx"> content: url(../Images/Logs.svg);
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+.toolbar .dashboard.default > .resourcesSize > img {
+ content: url(../Images/Weight.svg);
+}
+
</ins><span class="cx"> .toolbar .dashboard.default > .errors > img {
</span><span class="cx"> content: url(../Images/Errors.svg);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebInspectorUIUserInterfaceViewsDefaultDashboardViewjs"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.js (186579 => 186580)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.js        2015-07-09 04:47:09 UTC (rev 186579)
+++ trunk/Source/WebInspectorUI/UserInterface/Views/DefaultDashboardView.js        2015-07-09 05:47:04 UTC (rev 186580)
</span><span class="lines">@@ -34,8 +34,16 @@
</span><span class="cx"> this._items = {
</span><span class="cx"> resourcesCount: {
</span><span class="cx"> tooltip: WebInspector.UIString("Total number of resources, click to show the Resources tab"),
</span><del>- handler: this._resourcesWasClicked
</del><ins>+ handler: this._resourcesItemWasClicked
</ins><span class="cx"> },
</span><ins>+ resourcesSize: {
+ tooltip: WebInspector.UIString("Total size of all resources, click to show the Network Requests timeline"),
+ handler: this._networkItemWasClicked
+ },
+ time: {
+ tooltip: WebInspector.UIString("Time until the load event fired, click to show the Network Requests timeline"),
+ handler: this._timelineItemWasClicked
+ },
</ins><span class="cx"> logs: {
</span><span class="cx"> tooltip: WebInspector.UIString("Console logs, click to show the Console tab"),
</span><span class="cx"> handler: this._consoleItemWasClicked.bind(this, WebInspector.LogContentView.Scopes.Logs)
</span><span class="lines">@@ -63,9 +71,17 @@
</span><span class="cx"> for (var category of ["logs", "issues", "errors"])
</span><span class="cx"> this._setConsoleItemValue(category, dashboard[category]);
</span><span class="cx">
</span><ins>+ var timeItem = this._items.time;
+ timeItem.text = dashboard.time ? Number.secondsToString(dashboard.time) : "\u2014";
+ this._setItemEnabled(timeItem, dashboard.time > 0);
+
</ins><span class="cx"> var countItem = this._items.resourcesCount;
</span><span class="cx"> countItem.text = this._formatPossibleLargeNumber(dashboard.resourcesCount);
</span><span class="cx"> this._setItemEnabled(countItem, dashboard.resourcesCount > 0);
</span><ins>+
+ var sizeItem = this._items.resourcesSize;
+ sizeItem.text = dashboard.resourcesSize ? Number.bytesToString(dashboard.resourcesSize, false) : "\u2014";
+ this._setItemEnabled(sizeItem, dashboard.resourcesSize > 0);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> _formatPossibleLargeNumber(number)
</span><span class="lines">@@ -109,11 +125,21 @@
</span><span class="cx"> item.handler.call(this);
</span><span class="cx"> }
</span><span class="cx">
</span><del>- _resourcesWasClicked()
</del><ins>+ _resourcesItemWasClicked()
</ins><span class="cx"> {
</span><span class="cx"> WebInspector.showResourcesTab();
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+ _networkItemWasClicked()
+ {
+ WebInspector.showNetworkTab();
+ }
+
+ _timelineItemWasClicked()
+ {
+ WebInspector.showTimelineTab();
+ }
+
</ins><span class="cx"> _consoleItemWasClicked(scope)
</span><span class="cx"> {
</span><span class="cx"> WebInspector.showConsoleTab(scope);
</span></span></pre>
</div>
</div>
</body>
</html>