<!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>[194145] trunk/Websites/perf.webkit.org</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/194145">194145</a></dd>
<dt>Author</dt> <dd>rniwa@webkit.org</dd>
<dt>Date</dt> <dd>2015-12-16 09:32:47 -0800 (Wed, 16 Dec 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>The chart status on v3 UI sometimes show wrong revision ranges
https://bugs.webkit.org/show_bug.cgi?id=152331

Reviewed by Chris Dumez.

The bug was caused by the status view not taking the data sampling that happens in TimeSeriesChart into account
when finding the previous point. Take this into account by using InteractiveTimeSeries.currentPoint(-1) which
finds the sampled data point immediately preceding the current point (at which the indicator is shown).

* public/v3/components/chart-status-view.js:
(ChartStatusView.prototype.updateStatusIfNeeded):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkWebsitesperfwebkitorgChangeLog">trunk/Websites/perf.webkit.org/ChangeLog</a></li>
<li><a href="#trunkWebsitesperfwebkitorgpublicv3componentschartstatusviewjs">trunk/Websites/perf.webkit.org/public/v3/components/chart-status-view.js</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkWebsitesperfwebkitorgChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Websites/perf.webkit.org/ChangeLog (194144 => 194145)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Websites/perf.webkit.org/ChangeLog        2015-12-16 17:30:49 UTC (rev 194144)
+++ trunk/Websites/perf.webkit.org/ChangeLog        2015-12-16 17:32:47 UTC (rev 194145)
</span><span class="lines">@@ -1,3 +1,17 @@
</span><ins>+2015-12-16  Ryosuke Niwa  &lt;rniwa@webkit.org&gt;
+
+        The chart status on v3 UI sometimes show wrong revision ranges
+        https://bugs.webkit.org/show_bug.cgi?id=152331
+
+        Reviewed by Chris Dumez.
+
+        The bug was caused by the status view not taking the data sampling that happens in TimeSeriesChart into account
+        when finding the previous point. Take this into account by using InteractiveTimeSeries.currentPoint(-1) which
+        finds the sampled data point immediately preceding the current point (at which the indicator is shown).
+
+        * public/v3/components/chart-status-view.js:
+        (ChartStatusView.prototype.updateStatusIfNeeded):
+
</ins><span class="cx"> 2015-12-15  Ryosuke Niwa  &lt;rniwa@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Perf dashboard's cycler page should use v3 UI
</span></span></pre></div>
<a id="trunkWebsitesperfwebkitorgpublicv3componentschartstatusviewjs"></a>
<div class="modfile"><h4>Modified: trunk/Websites/perf.webkit.org/public/v3/components/chart-status-view.js (194144 => 194145)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Websites/perf.webkit.org/public/v3/components/chart-status-view.js        2015-12-16 17:30:49 UTC (rev 194144)
+++ trunk/Websites/perf.webkit.org/public/v3/components/chart-status-view.js        2015-12-16 17:32:47 UTC (rev 194145)
</span><span class="lines">@@ -45,8 +45,6 @@
</span><span class="cx">         var previousPoint;
</span><span class="cx"> 
</span><span class="cx">         if (this._chart instanceof InteractiveTimeSeriesChart) {
</span><del>-            currentPoint = this._chart.currentPoint();
-
</del><span class="cx">             var selection = this._chart.currentSelection();
</span><span class="cx">             if (selection &amp;&amp; this._usedSelection == selection)
</span><span class="cx">                 return false;
</span><span class="lines">@@ -61,8 +59,10 @@
</span><span class="cx">                     currentPoint = data[data.length - 1];
</span><span class="cx">                     previousPoint = data[0];
</span><span class="cx">                 }
</span><del>-            } else if (currentPoint)
-                previousPoint = currentPoint.series.previousPoint(currentPoint);
</del><ins>+            } else  {
+                currentPoint = this._chart.currentPoint();
+                previousPoint = this._chart.currentPoint(-1);
+            }
</ins><span class="cx">         } else {
</span><span class="cx">             var data = this._chart.sampledTimeSeriesData('current');
</span><span class="cx">             if (!data)
</span></span></pre>
</div>
</div>

</body>
</html>