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

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

Issue 287473002: rename rebaseline_server JSON constants to be more consistent (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 6 years, 7 months 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 <!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="constants.js"></script> 8 <script src="constants.js"></script>
9 <script src="loader.js"></script> 9 <script src="loader.js"></script>
10 <link rel="stylesheet" href="view.css"> 10 <link rel="stylesheet" href="view.css">
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 <th colspan="4"> 61 <th colspan="4">
62 Filters 62 Filters
63 </th> 63 </th>
64 <th> 64 <th>
65 Settings 65 Settings
66 </th> 66 </th>
67 </tr> 67 </tr>
68 <tr valign="top"> 68 <tr valign="top">
69 <td> 69 <td>
70 resultType<br> 70 resultType<br>
71 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMN__RESULT_TYPE][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]"> 71 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMNS__RESULT_TYPE][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
72 <input type="checkbox" 72 <input type="checkbox"
73 name="resultTypes" 73 name="resultTypes"
74 value="{{valueAndCount[0]}}" 74 value="{{valueAndCount[0]}}"
75 ng-checked="!isValueInSet(valueAndCount[0], hiddenResultTypes)" 75 ng-checked="!isValueInSet(valueAndCount[0], hiddenResultTypes)"
76 ng-click="toggleValueInSet(valueAndCount[0], hiddenResultTypes) ; setUpdatesPending(true)"> 76 ng-click="toggleValueInSet(valueAndCount[0], hiddenResultTypes) ; setUpdatesPending(true)">
77 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br> 77 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br>
78 </label> 78 </label>
79 <button ng-click="hiddenResultTypes = {}; updateResults()"> 79 <button ng-click="hiddenResultTypes = {}; updateResults()">
80 all 80 all
81 </button> 81 </button>
82 <button ng-click="hiddenResultTypes = {}; toggleValuesInSet(allResultTyp es, hiddenResultTypes); updateResults()"> 82 <button ng-click="hiddenResultTypes = {}; toggleValuesInSet(allResultTyp es, hiddenResultTypes); updateResults()">
83 none 83 none
84 </button> 84 </button>
85 <button ng-click="toggleValuesInSet(allResultTypes, hiddenResultTypes); updateResults()"> 85 <button ng-click="toggleValuesInSet(allResultTypes, hiddenResultTypes); updateResults()">
86 toggle 86 toggle
87 </button> 87 </button>
88 </td> 88 </td>
89 <td ng-repeat="category in [constants.KEY__EXTRACOLUMN__BUILDER, constants .KEY__EXTRACOLUMN__TEST]"> 89 <td ng-repeat="category in [constants.KEY__EXTRACOLUMNS__BUILDER, constant s.KEY__EXTRACOLUMNS__TEST]">
90 {{category}} 90 {{category}}
91 <br> 91 <br>
92 <input type="text" 92 <input type="text"
93 ng-model="categoryValueMatch[category]" 93 ng-model="categoryValueMatch[category]"
94 ng-change="setUpdatesPending(true)"/> 94 ng-change="setUpdatesPending(true)"/>
95 <br> 95 <br>
96 <button ng-click="setCategoryValueMatch(category, '')" 96 <button ng-click="setCategoryValueMatch(category, '')"
97 ng-disabled="('' == categoryValueMatch[category])"> 97 ng-disabled="('' == categoryValueMatch[category])">
98 clear (show all) 98 clear (show all)
99 </button> 99 </button>
100 </td> 100 </td>
101 <td> 101 <td>
102 config<br> 102 config<br>
103 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMN__CONFIG][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]"> 103 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMNS__CONFIG][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
104 <input type="checkbox" 104 <input type="checkbox"
105 name="configs" 105 name="configs"
106 value="{{valueAndCount[0]}}" 106 value="{{valueAndCount[0]}}"
107 ng-checked="!isValueInSet(valueAndCount[0], hiddenConfigs)" 107 ng-checked="!isValueInSet(valueAndCount[0], hiddenConfigs)"
108 ng-click="toggleValueInSet(valueAndCount[0], hiddenConfigs); se tUpdatesPending(true)"> 108 ng-click="toggleValueInSet(valueAndCount[0], hiddenConfigs); se tUpdatesPending(true)">
109 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br> 109 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br>
110 </label> 110 </label>
111 <button ng-click="hiddenConfigs = {}; updateResults()"> 111 <button ng-click="hiddenConfigs = {}; updateResults()">
112 all 112 all
113 </button> 113 </button>
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 move {{selectedImagePairs.length}} selected tests to {{otherTab} } tab 223 move {{selectedImagePairs.length}} selected tests to {{otherTab} } tab
224 </button> 224 </button>
225 </div> 225 </div>
226 </td> 226 </td>
227 </tr> 227 </tr>
228 </table> <!-- results header --> 228 </table> <!-- results header -->
229 </td></tr><tr><td> 229 </td></tr><tr><td>
230 <table border="1" ng-app="diff_viewer"> <!-- results --> 230 <table border="1" ng-app="diff_viewer"> <!-- results -->
231 <tr> 231 <tr>
232 <!-- Most column headers are displayed in a common fashion... --> 232 <!-- Most column headers are displayed in a common fashion... -->
233 <th ng-repeat="categoryName in [constants.KEY__EXTRACOLUMN__RESULT_TYP E, constants.KEY__EXTRACOLUMN__BUILDER, constants.KEY__EXTRACOLUMN__TEST, consta nts.KEY__EXTRACOLUMN__CONFIG]"> 233 <th ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__RESULT_TY PE, constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST, con stants.KEY__EXTRACOLUMNS__CONFIG]">
234 <input type="radio" 234 <input type="radio"
235 name="sortColumnRadio" 235 name="sortColumnRadio"
236 value="{{categoryName}}" 236 value="{{categoryName}}"
237 ng-checked="(sortColumnKey == categoryName)" 237 ng-checked="(sortColumnKey == categoryName)"
238 ng-click="sortResultsBy(constants.KEY__EXTRA_COLUMN_VALUES, c ategoryName)"> 238 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__EXTRACOLUM NS, categoryName)">
239 {{categoryName}} 239 {{categoryName}}
240 </th> 240 </th>
241 <!-- ... but there are a few columns where we display things different ly. --> 241 <!-- ... but there are a few columns where we display things different ly. -->
242 <th> 242 <th>
243 <input type="radio" 243 <input type="radio"
244 name="sortColumnRadio" 244 name="sortColumnRadio"
245 value="bugs" 245 value="bugs"
246 ng-checked="(sortColumnKey == constants.KEY__EXPECTATIONS__BU GS)" 246 ng-checked="(sortColumnKey == constants.KEY__EXPECTATIONS__BU GS)"
247 ng-click="sortResultsBy(constants.KEY__EXPECTATIONS_DATA, con stants.KEY__EXPECTATIONS__BUGS)"> 247 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__EXPECTATIO NS, constants.KEY__EXPECTATIONS__BUGS)">
248 bugs 248 bugs
249 </th> 249 </th>
250 <th width="{{imageSize}}"> 250 <th width="{{imageSize}}">
251 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][constants.KEY__I MAGESETS__FIELD__DESCRIPTION]}} 251 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][constants.KEY__I MAGESETS__FIELD__DESCRIPTION]}}
252 </th> 252 </th>
253 <th width="{{imageSize}}"> 253 <th width="{{imageSize}}">
254 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][constants.KEY__I MAGESETS__FIELD__DESCRIPTION]}} 254 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][constants.KEY__I MAGESETS__FIELD__DESCRIPTION]}}
255 </th> 255 </th>
256 <th width="{{imageSize}}"> 256 <th width="{{imageSize}}">
257 <input type="radio" 257 <input type="radio"
258 name="sortColumnRadio" 258 name="sortColumnRadio"
259 value="percentDifferingPixels" 259 value="percentDifferingPixels"
260 ng-checked="(sortColumnKey == constants.KEY__DIFFERENCE_DATA_ _PERCENT_DIFF_PIXELS)" 260 ng-checked="(sortColumnKey == constants.KEY__DIFFERENCES__PER CENT_DIFF_PIXELS)"
261 ng-click="sortResultsBy(constants.KEY__DIFFERENCE_DATA, const ants.KEY__DIFFERENCE_DATA__PERCENT_DIFF_PIXELS)"> 261 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__DIFFERENCE S, constants.KEY__DIFFERENCES__PERCENT_DIFF_PIXELS)">
262 differing pixels in white 262 differing pixels in white
263 </th> 263 </th>
264 <th width="{{imageSize}}"> 264 <th width="{{imageSize}}">
265 <input type="radio" 265 <input type="radio"
266 name="sortColumnRadio" 266 name="sortColumnRadio"
267 value="weightedDiffMeasure" 267 value="weightedDiffMeasure"
268 ng-checked="(sortColumnKey == constants.KEY__DIFFERENCE_DATA_ _PERCEPTUAL_DIFF)" 268 ng-checked="(sortColumnKey == constants.KEY__DIFFERENCES__PER CEPTUAL_DIFF)"
269 ng-click="sortResultsBy(constants.KEY__DIFFERENCE_DATA, const ants.KEY__DIFFERENCE_DATA__PERCEPTUAL_DIFF)"> 269 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__DIFFERENCE S, constants.KEY__DIFFERENCES__PERCEPTUAL_DIFF)">
270 perceptual difference 270 perceptual difference
271 <br> 271 <br>
272 <input type="range" ng-model="pixelDiffBgColorBrightness" 272 <input type="range" ng-model="pixelDiffBgColorBrightness"
273 ng-init="pixelDiffBgColorBrightness=64; pixelDiffBgColor=brig htnessStringToHexColor(pixelDiffBgColorBrightness)" 273 ng-init="pixelDiffBgColorBrightness=64; pixelDiffBgColor=brig htnessStringToHexColor(pixelDiffBgColorBrightness)"
274 ng-change="pixelDiffBgColor=brightnessStringToHexColor(pixelD iffBgColorBrightness)" 274 ng-change="pixelDiffBgColor=brightnessStringToHexColor(pixelD iffBgColorBrightness)"
275 title="image background brightness" 275 title="image background brightness"
276 min="0" max="255"/> 276 min="0" max="255"/>
277 </th> 277 </th>
278 <th> 278 <th>
279 <!-- imagepair-selection checkbox column --> 279 <!-- imagepair-selection checkbox column -->
280 </th> 280 </th>
281 </tr> 281 </tr>
282 282
283 <tr ng-repeat="imagePair in limitedImagePairs" results-updated-callback- directive> 283 <tr ng-repeat="imagePair in limitedImagePairs" results-updated-callback- directive>
284 <td> 284 <td>
285 {{imagePair[constants.KEY__EXTRA_COLUMN_VALUES][constants.KEY__EXTRA COLUMN__RESULT_TYPE]}} 285 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__ EXTRACOLUMNS__RESULT_TYPE]}}
286 <br> 286 <br>
287 <button class="show-only-button" 287 <button class="show-only-button"
288 ng-show="viewingTab == defaultTab" 288 ng-show="viewingTab == defaultTab"
289 ng-click="showOnlyResultType(imagePair[constants.KEY__EXTRA_ COLUMN_VALUES][constants.KEY__EXTRACOLUMN__RESULT_TYPE])" 289 ng-click="showOnlyResultType(imagePair[constants.KEY__IMAGEP AIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE])"
290 title="show only results of type {{imagePair[constants.KEY__ EXTRA_COLUMN_VALUES][constants.KEY__EXTRACOLUMN__RESULT_TYPE]}}"> 290 title="show only results of type {{imagePair[constants.KEY__ IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE]}}">
291 show only 291 show only
292 </button> 292 </button>
293 <br> 293 <br>
294 <button class="show-all-button" 294 <button class="show-all-button"
295 ng-show="viewingTab == defaultTab" 295 ng-show="viewingTab == defaultTab"
296 ng-disabled="0 == setSize(hiddenResultTypes)" 296 ng-disabled="0 == setSize(hiddenResultTypes)"
297 ng-click="showAllResultTypes()" 297 ng-click="showAllResultTypes()"
298 title="show results of all types"> 298 title="show results of all types">
299 show all 299 show all
300 </button> 300 </button>
301 </td> 301 </td>
302 <td ng-repeat="categoryName in [constants.KEY__EXTRACOLUMN__BUILDER, c onstants.KEY__EXTRACOLUMN__TEST]"> 302 <td ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST]">
303 {{imagePair[constants.KEY__EXTRA_COLUMN_VALUES][categoryName]}} 303 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}
304 <br> 304 <br>
305 <button class="show-only-button" 305 <button class="show-only-button"
306 ng-show="viewingTab == defaultTab" 306 ng-show="viewingTab == defaultTab"
307 ng-disabled="imagePair[constants.KEY__EXTRA_COLUMN_VALUES][c ategoryName] == categoryValueMatch[categoryName]" 307 ng-disabled="imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUM NS][categoryName] == categoryValueMatch[categoryName]"
308 ng-click="setCategoryValueMatch(categoryName, imagePair[cons tants.KEY__EXTRA_COLUMN_VALUES][categoryName])" 308 ng-click="setCategoryValueMatch(categoryName, imagePair[cons tants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName])"
309 title="show only results of {{categoryName}} {{imagePair[con stants.KEY__EXTRA_COLUMN_VALUES][categoryName]}}"> 309 title="show only results of {{categoryName}} {{imagePair[con stants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}">
310 show only 310 show only
311 </button> 311 </button>
312 <br> 312 <br>
313 <button class="show-all-button" 313 <button class="show-all-button"
314 ng-show="viewingTab == defaultTab" 314 ng-show="viewingTab == defaultTab"
315 ng-disabled="'' == categoryValueMatch[categoryName]" 315 ng-disabled="'' == categoryValueMatch[categoryName]"
316 ng-click="setCategoryValueMatch(categoryName, '')" 316 ng-click="setCategoryValueMatch(categoryName, '')"
317 title="show results of all {{categoryName}}s"> 317 title="show results of all {{categoryName}}s">
318 show all 318 show all
319 </button> 319 </button>
320 </td> 320 </td>
321 <td> 321 <td>
322 {{imagePair[constants.KEY__EXTRA_COLUMN_VALUES][constants.KEY__EXTRA COLUMN__CONFIG]}} 322 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__ EXTRACOLUMNS__CONFIG]}}
323 <br> 323 <br>
324 <button class="show-only-button" 324 <button class="show-only-button"
325 ng-show="viewingTab == defaultTab" 325 ng-show="viewingTab == defaultTab"
326 ng-click="showOnlyConfig(imagePair[constants.KEY__EXTRA_COLU MN_VALUES][constants.KEY__EXTRACOLUMN__CONFIG])" 326 ng-click="showOnlyConfig(imagePair[constants.KEY__IMAGEPAIRS __EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG])"
327 title="show only results of config {{imagePair[constants.KEY __EXTRA_COLUMN_VALUES][constants.KEY__EXTRACOLUMN__CONFIG]}}"> 327 title="show only results of config {{imagePair[constants.KEY __IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG]}}">
328 show only 328 show only
329 </button> 329 </button>
330 <br> 330 <br>
331 <button class="show-all-button" 331 <button class="show-all-button"
332 ng-show="viewingTab == defaultTab" 332 ng-show="viewingTab == defaultTab"
333 ng-disabled="0 == setSize(hiddenConfigs)" 333 ng-disabled="0 == setSize(hiddenConfigs)"
334 ng-click="showAllConfigs()" 334 ng-click="showAllConfigs()"
335 title="show results of all configs"> 335 title="show results of all configs">
336 show all 336 show all
337 </button> 337 </button>
338 </td> 338 </td>
339 <td> 339 <td>
340 <a ng-repeat="bug in imagePair[constants.KEY__EXPECTATIONS_DATA][con stants.KEY__EXPECTATIONS__BUGS]" 340 <a ng-repeat="bug in imagePair[constants.KEY__IMAGEPAIRS__EXPECTATIO NS][constants.KEY__EXPECTATIONS__BUGS]"
341 href="https://code.google.com/p/skia/issues/detail?id={{bug}}" 341 href="https://code.google.com/p/skia/issues/detail?id={{bug}}"
342 target="_blank"> 342 target="_blank">
343 {{bug}} 343 {{bug}}
344 </a> 344 </a>
345 </td> 345 </td>
346 346
347 <!-- image A --> 347 <!-- image A -->
348 <td valign="bottom" width="{{imageSize}}"> 348 <td valign="bottom" width="{{imageSize}}">
349 <div ng-if="imagePair[constants.KEY__IMAGE_A_URL] != null"> 349 <div ng-if="imagePair[constants.KEY__IMAGEPAIRS__IMAGE_A_URL] != nul l">
350 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][const ants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGE_A_URL]} }" target="_blank">View Image</a><br/> 350 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][const ants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGEPAIRS__I MAGE_A_URL]}}" target="_blank">View Image</a><br/>
351 <img ng-if="showThumbnails" 351 <img ng-if="showThumbnails"
352 width="{{imageSize}}" 352 width="{{imageSize}}"
353 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][c onstants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGE_A_U RL]}}" /> 353 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][c onstants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGEPAIR S__IMAGE_A_URL]}}" />
354 </div> 354 </div>
355 <div ng-show="imagePair[constants.KEY__IMAGE_A_URL] == null" 355 <div ng-show="imagePair[constants.KEY__IMAGEPAIRS__IMAGE_A_URL] == n ull"
356 style="text-align:center"> 356 style="text-align:center">
357 &ndash;none&ndash; 357 &ndash;none&ndash;
358 </div> 358 </div>
359 </td> 359 </td>
360 360
361 <!-- image B --> 361 <!-- image B -->
362 <td valign="bottom" width="{{imageSize}}"> 362 <td valign="bottom" width="{{imageSize}}">
363 <div ng-if="imagePair[constants.KEY__IMAGE_B_URL] != null"> 363 <div ng-if="imagePair[constants.KEY__IMAGEPAIRS__IMAGE_B_URL] != nul l">
364 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][const ants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGE_B_URL]} }" target="_blank">View Image</a><br/> 364 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][const ants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGEPAIRS__I MAGE_B_URL]}}" target="_blank">View Image</a><br/>
365 <img ng-if="showThumbnails" 365 <img ng-if="showThumbnails"
366 width="{{imageSize}}" 366 width="{{imageSize}}"
367 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][c onstants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGE_B_U RL]}}" /> 367 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][c onstants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{imagePair[constants.KEY__IMAGEPAIR S__IMAGE_B_URL]}}" />
368 </div> 368 </div>
369 <div ng-show="imagePair[constants.KEY__IMAGE_B_URL] == null" 369 <div ng-show="imagePair[constants.KEY__IMAGEPAIRS__IMAGE_B_URL] == n ull"
370 style="text-align:center"> 370 style="text-align:center">
371 &ndash;none&ndash; 371 &ndash;none&ndash;
372 </div> 372 </div>
373 </td> 373 </td>
374 374
375 <!-- whitediffs: every differing pixel shown in white --> 375 <!-- whitediffs: every differing pixel shown in white -->
376 <td valign="bottom" width="{{imageSize}}"> 376 <td valign="bottom" width="{{imageSize}}">
377 <div ng-if="imagePair[constants.KEY__IS_DIFFERENT]" 377 <div ng-if="imagePair[constants.KEY__IMAGEPAIRS__IS_DIFFERENT]"
378 title="{{imagePair[constants.KEY__DIFFERENCE_DATA][constants.KE Y__DIFFERENCE_DATA__NUM_DIFF_PIXELS] | number:0}} of {{(100 * imagePair[constant s.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERENCE_DATA__NUM_DIFF_PIXELS] / image Pair[constants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERENCE_DATA__PERCENT_DIF F_PIXELS]) | number:0}} pixels ({{imagePair[constants.KEY__DIFFERENCE_DATA][cons tants.KEY__DIFFERENCE_DATA__PERCENT_DIFF_PIXELS].toFixed(4)}}%) differ from expe ctation."> 378 title="{{imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][cons tants.KEY__DIFFERENCES__NUM_DIFF_PIXELS] | number:0}} of {{(100 * imagePair[cons tants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY__DIFFERENCES__NUM_DIFF_PIXELS] / imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY__DIFFERENCES_ _PERCENT_DIFF_PIXELS]) | number:0}} pixels ({{imagePair[constants.KEY__IMAGEPAIR S__DIFFERENCES][constants.KEY__DIFFERENCES__PERCENT_DIFF_PIXELS].toFixed(4)}}%) differ from expectation.">
379 379
380 {{imagePair[constants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERE NCE_DATA__PERCENT_DIFF_PIXELS].toFixed(4)}}% 380 {{imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY_ _DIFFERENCES__PERCENT_DIFF_PIXELS].toFixed(4)}}%
381 ({{imagePair[constants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFER ENCE_DATA__NUM_DIFF_PIXELS]}}) 381 ({{imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY __DIFFERENCES__NUM_DIFF_PIXELS]}})
382 <br/> 382 <br/>
383 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__WHITEDIFFS][co nstants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePair)} }" target="_blank">View Image</a><br/> 383 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__WHITEDIFFS][co nstants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePair)} }" target="_blank">View Image</a><br/>
384 <img ng-if="showThumbnails" 384 <img ng-if="showThumbnails"
385 width="{{imageSize}}" 385 width="{{imageSize}}"
386 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__WHITEDIFFS ][constants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePa ir)}}" /> 386 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__WHITEDIFFS ][constants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePa ir)}}" />
387 </div> 387 </div>
388 <div ng-show="!imagePair[constants.KEY__IS_DIFFERENT]" 388 <div ng-show="!imagePair[constants.KEY__IMAGEPAIRS__IS_DIFFERENT]"
389 style="text-align:center"> 389 style="text-align:center">
390 &ndash;none&ndash; 390 &ndash;none&ndash;
391 </div> 391 </div>
392 </td> 392 </td>
393 393
394 <!-- diffs: per-channel RGB deltas --> 394 <!-- diffs: per-channel RGB deltas -->
395 <td valign="bottom" width="{{imageSize}}"> 395 <td valign="bottom" width="{{imageSize}}">
396 <div ng-if="imagePair[constants.KEY__IS_DIFFERENT]" 396 <div ng-if="imagePair[constants.KEY__IMAGEPAIRS__IS_DIFFERENT]"
397 title="Perceptual difference measure is {{imagePair[constants.K EY__DIFFERENCE_DATA][constants.KEY__DIFFERENCE_DATA__PERCEPTUAL_DIFF].toFixed(4) }}%. Maximum difference per channel: R={{imagePair[constants.KEY__DIFFERENCE_DA TA][constants.KEY__DIFFERENCE_DATA__MAX_DIFF_PER_CHANNEL][0]}}, G={{imagePair[co nstants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERENCE_DATA__MAX_DIFF_PER_CHANN EL][1]}}, B={{imagePair[constants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERENC E_DATA__MAX_DIFF_PER_CHANNEL][2]}}"> 397 title="Perceptual difference measure is {{imagePair[constants.K EY__IMAGEPAIRS__DIFFERENCES][constants.KEY__DIFFERENCES__PERCEPTUAL_DIFF].toFixe d(4)}}%. Maximum difference per channel: R={{imagePair[constants.KEY__IMAGEPAIR S__DIFFERENCES][constants.KEY__DIFFERENCES__MAX_DIFF_PER_CHANNEL][0]}}, G={{imag ePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY__DIFFERENCES__MAX_DI FF_PER_CHANNEL][1]}}, B={{imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][cons tants.KEY__DIFFERENCES__MAX_DIFF_PER_CHANNEL][2]}}">
398 398
399 {{imagePair[constants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERE NCE_DATA__PERCEPTUAL_DIFF].toFixed(4)}}% 399 {{imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY_ _DIFFERENCES__PERCEPTUAL_DIFF].toFixed(4)}}%
400 {{imagePair[constants.KEY__DIFFERENCE_DATA][constants.KEY__DIFFERE NCE_DATA__MAX_DIFF_PER_CHANNEL]}} 400 {{imagePair[constants.KEY__IMAGEPAIRS__DIFFERENCES][constants.KEY_ _DIFFERENCES__MAX_DIFF_PER_CHANNEL]}}
401 <br/> 401 <br/>
402 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__DIFFS][constan ts.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePair)}}" ta rget="_blank">View Image</a><br/> 402 <a href="{{imageSets[constants.KEY__IMAGESETS__SET__DIFFS][constan ts.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePair)}}" ta rget="_blank">View Image</a><br/>
403 <img ng-if="showThumbnails" 403 <img ng-if="showThumbnails"
404 ng-style="{backgroundColor: pixelDiffBgColor}" 404 ng-style="{backgroundColor: pixelDiffBgColor}"
405 width="{{imageSize}}" 405 width="{{imageSize}}"
406 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__DIFFS][con stants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePair)}} " /> 406 ng-src="{{imageSets[constants.KEY__IMAGESETS__SET__DIFFS][con stants.KEY__IMAGESETS__FIELD__BASE_URL]}}/{{getImageDiffRelativeUrl(imagePair)}} " />
407 </div> 407 </div>
408 <div ng-show="!imagePair[constants.KEY__IS_DIFFERENT]" 408 <div ng-show="!imagePair[constants.KEY__IMAGEPAIRS__IS_DIFFERENT]"
409 style="text-align:center"> 409 style="text-align:center">
410 &ndash;none&ndash; 410 &ndash;none&ndash;
411 </div> 411 </div>
412 </td> 412 </td>
413 413
414 <td> 414 <td>
415 <input type="checkbox" 415 <input type="checkbox"
416 name="rowSelect" 416 name="rowSelect"
417 value="{{imagePair.index}}" 417 value="{{imagePair.index}}"
418 ng-checked="isValueInArray(imagePair.index, selectedImagePair s)" 418 ng-checked="isValueInArray(imagePair.index, selectedImagePair s)"
419 ng-click="toggleValueInArray(imagePair.index, selectedImagePa irs)"> 419 ng-click="toggleValueInArray(imagePair.index, selectedImagePa irs)">
420 </tr> 420 </tr>
421 </table> <!-- imagePairs --> 421 </table> <!-- imagePairs -->
422 </td></tr></table> <!-- table holding results header + imagePairs table --> 422 </td></tr></table> <!-- table holding results header + imagePairs table -->
423 423
424 </div><!-- main display area of selected tab --> 424 </div><!-- main display area of selected tab -->
425 </div><!-- everything: hide until data is loaded --> 425 </div><!-- everything: hide until data is loaded -->
426 426
427 </body> 427 </body>
428 </html> 428 </html>
OLDNEW
« gm/rebaseline_server/static/constants.js ('K') | « gm/rebaseline_server/static/loader.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698