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

Side by Side Diff: gm/rebaseline_server/static/view.html

Issue 82823005: rebaseline_server: improve pixel diff reporting (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: partially_deobfuscate Created 7 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 | Annotate | Revision Log
« no previous file with comments | « gm/rebaseline_server/static/view.css ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 2
3 <html ng-app="Loader" ng-controller="Loader.Controller"> 3 <html ng-app="Loader" ng-controller="Loader.Controller">
4 4
5 <head> 5 <head>
6 <title ng-bind="windowTitle"></title> 6 <title ng-bind="windowTitle"></title>
7 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js" ></script> 7 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js" ></script>
8 <script src="loader.js"></script> 8 <script src="loader.js"></script>
9 <link rel="stylesheet" href="view.css"> 9 <link rel="stylesheet" href="view.css">
10 </head> 10 </head>
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 </th> 225 </th>
226 <!-- ... but there are a few columns where we display things different ly. --> 226 <!-- ... but there are a few columns where we display things different ly. -->
227 <th> 227 <th>
228 <input type="radio" 228 <input type="radio"
229 name="sortColumnRadio" 229 name="sortColumnRadio"
230 value="bugs" 230 value="bugs"
231 ng-checked="(sortColumn == 'bugs')" 231 ng-checked="(sortColumn == 'bugs')"
232 ng-click="sortResultsBy('bugs')"> 232 ng-click="sortResultsBy('bugs')">
233 bugs 233 bugs
234 </th> 234 </th>
235 <th> 235 <th width="{{imageSize}}">
236 <input type="radio" 236 <input type="radio"
237 name="sortColumnRadio" 237 name="sortColumnRadio"
238 value="expectedHashDigest" 238 value="expectedHashDigest"
239 ng-checked="(sortColumn == 'expectedHashDigest')" 239 ng-checked="(sortColumn == 'expectedHashDigest')"
240 ng-click="sortResultsBy('expectedHashDigest')"> 240 ng-click="sortResultsBy('expectedHashDigest')">
241 expected image 241 expected image
242 </th> 242 </th>
243 <th> 243 <th width="{{imageSize}}">
244 <input type="radio" 244 <input type="radio"
245 name="sortColumnRadio" 245 name="sortColumnRadio"
246 value="actualHashDigest" 246 value="actualHashDigest"
247 ng-checked="(sortColumn == 'actualHashDigest')" 247 ng-checked="(sortColumn == 'actualHashDigest')"
248 ng-click="sortResultsBy('actualHashDigest')"> 248 ng-click="sortResultsBy('actualHashDigest')">
249 actual image 249 actual image
250 </th> 250 </th>
251 <th> 251 <th width="{{imageSize}}">
252 <input type="radio" 252 <input type="radio"
253 name="sortColumnRadio" 253 name="sortColumnRadio"
254 value="percentDifferingPixels" 254 value="percentDifferingPixels"
255 ng-checked="(sortColumn == 'percentDifferingPixels')" 255 ng-checked="(sortColumn == 'percentDifferingPixels')"
256 ng-click="sortResultsBy('percentDifferingPixels')"> 256 ng-click="sortResultsBy('percentDifferingPixels')">
257 differing pixels 257 differing pixels in white
258 </th> 258 </th>
259 <th> 259 <th width="{{imageSize}}">
260 <input type="radio" 260 <input type="radio"
261 name="sortColumnRadio" 261 name="sortColumnRadio"
262 value="weightedDiffMeasure" 262 value="weightedDiffMeasure"
263 ng-checked="(sortColumn == 'weightedDiffMeasure')" 263 ng-checked="(sortColumn == 'weightedDiffMeasure')"
264 ng-click="sortResultsBy('weightedDiffMeasure')"> 264 ng-click="sortResultsBy('weightedDiffMeasure')">
265 per-channel deltas 265 difference per pixel
266 </th> 266 </th>
267 <th> 267 <th>
268 <!-- item-selection checkbox column --> 268 <!-- item-selection checkbox column -->
269 </th> 269 </th>
270 </tr> 270 </tr>
271 271
272 <!-- For most columns... if the user clicks on the cell, and we are on 272 <!-- For most columns... if the user clicks on the cell, and we are on
273 the default tab, update the filter to only show results with the 273 the default tab, update the filter to only show results with the
274 same value for this category. 274 same value for this category.
275 This is made a bit tricky by the fact that AngularJS expressions 275 This is made a bit tricky by the fact that AngularJS expressions
(...skipping 12 matching lines...) Expand all
288 </td> 288 </td>
289 <td> 289 <td>
290 <a ng-repeat="bug in result['bugs']" 290 <a ng-repeat="bug in result['bugs']"
291 href="https://code.google.com/p/skia/issues/detail?id={{bug}}" 291 href="https://code.google.com/p/skia/issues/detail?id={{bug}}"
292 target="_blank"> 292 target="_blank">
293 {{bug}} 293 {{bug}}
294 </a> 294 </a>
295 </td> 295 </td>
296 296
297 <!-- expected image --> 297 <!-- expected image -->
298 <td valign="top"> 298 <td valign="top" width="{{imageSize}}">
299 <a target="_blank" href="http://chromium-skia-gm.commondatastorage.g oogleapis.com/gm/{{result.expectedHashType}}/{{result.test}}/{{result.expectedHa shDigest}}.png"> 299 <a class="image-link" target="_blank" href="http://chromium-skia-gm. commondatastorage.googleapis.com/gm/{{result.expectedHashType}}/{{result.test}}/ {{result.expectedHashDigest}}.png">
300 <img width="{{imageSize}}" src="http://chromium-skia-gm.commondata storage.googleapis.com/gm/{{result.expectedHashType}}/{{result.test}}/{{result.e xpectedHashDigest}}.png"/> 300 <img width="{{imageSize}}" src="http://chromium-skia-gm.commondata storage.googleapis.com/gm/{{result.expectedHashType}}/{{result.test}}/{{result.e xpectedHashDigest}}.png"/>
301 </a> 301 </a>
302 </td> 302 </td>
303 303
304 <!-- actual image --> 304 <!-- actual image -->
305 <td valign="top"> 305 <td valign="top" width="{{imageSize}}">
306 <a target="_blank" href="http://chromium-skia-gm.commondatastorage.g oogleapis.com/gm/{{result.actualHashType}}/{{result.test}}/{{result.actualHashDi gest}}.png"> 306 <a class="image-link" target="_blank" href="http://chromium-skia-gm. commondatastorage.googleapis.com/gm/{{result.actualHashType}}/{{result.test}}/{{ result.actualHashDigest}}.png">
307 <img width="{{imageSize}}" src="http://chromium-skia-gm.commondata storage.googleapis.com/gm/{{result.actualHashType}}/{{result.test}}/{{result.act ualHashDigest}}.png"/> 307 <img width="{{imageSize}}" src="http://chromium-skia-gm.commondata storage.googleapis.com/gm/{{result.actualHashType}}/{{result.test}}/{{result.act ualHashDigest}}.png"/>
308 </a> 308 </a>
309 </td> 309 </td>
310 310
311 <!-- whitediffs: every differing pixel shown in white --> 311 <!-- whitediffs: every differing pixel shown in white -->
312 <td valign="top"> 312 <td valign="top" width="{{imageSize}}">
313 <div ng-hide="result.expectedHashDigest == result.actualHashDigest"> 313 <div ng-hide="result.expectedHashDigest == result.actualHashDigest"
314 <a target="_blank" href="/static/generated-images/whitediffs/{{res ult.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png"> 314 title="{{result.numDifferingPixels | number:0}} of {{(100 * res ult.numDifferingPixels / result.percentDifferingPixels) | number:0}} pixels ({{r esult.percentDifferingPixels.toFixed(4)}}%) differ from expectation.">
315 <a class="image-link" target="_blank" href="/static/generated-imag es/whitediffs/{{result.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png">
315 <img width="{{imageSize}}" src="/static/generated-images/whitedi ffs/{{result.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png"/> 316 <img width="{{imageSize}}" src="/static/generated-images/whitedi ffs/{{result.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png"/>
316 </a><br> 317 </a><br>
317 {{result.percentDifferingPixels.toFixed(4)}}% 318 {{result.percentDifferingPixels.toFixed(4)}}%
319 ({{result.numDifferingPixels}})
318 </div> 320 </div>
319 <div ng-hide="result.expectedHashDigest != result.actualHashDigest" 321 <div ng-hide="result.expectedHashDigest != result.actualHashDigest"
320 style="text-align:center"> 322 style="text-align:center">
321 &ndash;none&ndash; 323 &ndash;none&ndash;
322 </div> 324 </div>
323 </td> 325 </td>
324 326
325 <!-- diffs: per-channel RGB deltas --> 327 <!-- diffs: per-channel RGB deltas -->
326 <td valign="top"> 328 <td valign="top" width="{{imageSize}}">
327 <div ng-hide="result.expectedHashDigest == result.actualHashDigest"> 329 <div ng-hide="result.expectedHashDigest == result.actualHashDigest"
328 <a target="_blank" href="/static/generated-images/diffs/{{result.e xpectedHashDigest}}-vs-{{result.actualHashDigest}}.png"> 330 title="Weighted difference measure is {{result.weightedDiffMeas ure.toFixed(4)}}%. Maximum difference per channel: R={{result.maxDiffPerChannel [0]}}, G={{result.maxDiffPerChannel[1]}}, B={{result.maxDiffPerChannel[2]}}">
331 <a class="image-link" target="_blank" href="/static/generated-imag es/diffs/{{result.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png">
329 <img width="{{imageSize}}" src="/static/generated-images/diffs/{ {result.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png"/> 332 <img width="{{imageSize}}" src="/static/generated-images/diffs/{ {result.expectedHashDigest}}-vs-{{result.actualHashDigest}}.png"/>
330 </a><br> 333 </a><br>
331 {{result.weightedDiffMeasure.toFixed(4)}}% 334 {{result.weightedDiffMeasure.toFixed(4)}}%
335 {{result.maxDiffPerChannel}}
332 </div> 336 </div>
333 <div ng-hide="result.expectedHashDigest != result.actualHashDigest" 337 <div ng-hide="result.expectedHashDigest != result.actualHashDigest"
334 style="text-align:center"> 338 style="text-align:center">
335 &ndash;none&ndash; 339 &ndash;none&ndash;
336 </div> 340 </div>
337 </td> 341 </td>
338 342
339 <td> 343 <td>
340 <input type="checkbox" 344 <input type="checkbox"
341 name="rowSelect" 345 name="rowSelect"
(...skipping 10 matching lines...) Expand all
352 <!-- TODO(epoger): Can we get the base URLs (commondatastorage and 356 <!-- TODO(epoger): Can we get the base URLs (commondatastorage and
353 issues list) from 357 issues list) from
354 http://skia.googlecode.com/svn/buildbot/site_config/global_variables.json 358 http://skia.googlecode.com/svn/buildbot/site_config/global_variables.json
355 ? I tried importing the 359 ? I tried importing the
356 http://skia.googlecode.com/svn/buildbot/skia_tools.js script and using 360 http://skia.googlecode.com/svn/buildbot/skia_tools.js script and using
357 that to do so, but I got Access-Control-Allow-Origin errors. 361 that to do so, but I got Access-Control-Allow-Origin errors.
358 --> 362 -->
359 363
360 </body> 364 </body>
361 </html> 365 </html>
OLDNEW
« no previous file with comments | « gm/rebaseline_server/static/view.css ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698