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

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

Issue 369133004: rebaseline_server: handle column filtering more generically (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: line wraps / little readability improvements Created 6 years, 5 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">
11 </head> 11 </head>
12 12
13 <body> 13 <body>
14 <h2> 14 <h2>
15 Instructions, roadmap, etc. are at 15 Instructions, roadmap, etc. are at
16 <a href="http://tinyurl.com/SkiaRebaselineServer"> 16 <a href="http://tinyurl.com/SkiaRebaselineServer">
17 http://tinyurl.com/SkiaRebaselineServer 17 http://tinyurl.com/SkiaRebaselineServer
18 </a> 18 </a>
19 </h2> 19 </h2>
20 20
21 <em ng-show="!extraColumnHeaders"><!-- show until data is loaded --> 21 <em ng-show="!readyToDisplay">
22 Loading results from <a href="{{resultsToLoad}}">{{resultsToLoad}}</a> ... 22 Loading results from <a href="{{resultsToLoad}}">{{resultsToLoad}}</a> ...
23 {{loadingMessage}} 23 {{loadingMessage}}
24 </em> 24 </em>
25 25
26 <div ng-show="extraColumnHeaders"><!-- everything: hide until data is loaded - -> 26 <div ng-show="readyToDisplay">
27 27
28 <div class="warning-div" 28 <div class="warning-div"
29 ng-show="urlSchemaVersionLoaded != constants.URL_VALUE__SCHEMA_VERSION_ _CURRENT"> 29 ng-show="urlSchemaVersionLoaded != constants.URL_VALUE__SCHEMA_VERSION_ _CURRENT">
30 WARNING! The URL you loaded used schema version {{urlSchemaVersionLoaded} }, rather than 30 WARNING! The URL you loaded used schema version {{urlSchemaVersionLoaded} }, rather than
31 the most recent version {{constants.URL_VALUE__SCHEMA_VERSION__CURRENT}}. It has been 31 the most recent version {{constants.URL_VALUE__SCHEMA_VERSION__CURRENT}}. It has been
32 converted to the most recent version on a best-effort basis; you may wish to double-check 32 converted to the most recent version on a best-effort basis; you may wish to double-check
33 which records are displayed. 33 which records are displayed.
34 </div> 34 </div>
35 35
36 <div class="warning-div" 36 <div class="warning-div"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 Settings 73 Settings
74 </th> 74 </th>
75 </tr> 75 </tr>
76 <tr valign="top"> 76 <tr valign="top">
77 <td> 77 <td>
78 resultType<br> 78 resultType<br>
79 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMNS__RESULT_TYPE][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]"> 79 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMNS__RESULT_TYPE][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
80 <input type="checkbox" 80 <input type="checkbox"
81 name="resultTypes" 81 name="resultTypes"
82 value="{{valueAndCount[0]}}" 82 value="{{valueAndCount[0]}}"
83 ng-checked="!isValueInSet(valueAndCount[0], hiddenResultTypes)" 83 ng-checked="isValueInSet(valueAndCount[0], showingColumnValues[ constants.KEY__EXTRACOLUMNS__RESULT_TYPE])"
84 ng-click="toggleValueInSet(valueAndCount[0], hiddenResultTypes) ; setUpdatesPending(true)"> 84 ng-click="toggleValueInSet(valueAndCount[0], showingColumnValue s[constants.KEY__EXTRACOLUMNS__RESULT_TYPE]); setUpdatesPending(true)">
85 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br> 85 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br>
86 </label> 86 </label>
87 <button ng-click="hiddenResultTypes = {}; updateResults()"> 87 <button ng-click="showingColumnValues[constants.KEY__EXTRACOLUMNS__RESUL T_TYPE] = {}; toggleValuesInSet(allColumnValues[constants.KEY__EXTRACOLUMNS__RES ULT_TYPE], showingColumnValues[constants.KEY__EXTRACOLUMNS__RESULT_TYPE]); updat eResults()"
88 ng-disabled="!readyToDisplay || allColumnValues[constants.KEY__E XTRACOLUMNS__RESULT_TYPE].length == setSize(showingColumnValues[constants.KEY__E XTRACOLUMNS__RESULT_TYPE])">
88 all 89 all
89 </button> 90 </button>
90 <button ng-click="hiddenResultTypes = {}; toggleValuesInSet(allResultTyp es, hiddenResultTypes); updateResults()"> 91 <button ng-click="showingColumnValues[constants.KEY__EXTRACOLUMNS__RESUL T_TYPE] = {}; updateResults()"
92 ng-disabled="!readyToDisplay || 0 == setSize(showingColumnValues [constants.KEY__EXTRACOLUMNS__RESULT_TYPE])">
91 none 93 none
92 </button> 94 </button>
93 <button ng-click="toggleValuesInSet(allResultTypes, hiddenResultTypes); updateResults()"> 95 <button ng-click="toggleValuesInSet(allColumnValues[constants.KEY__EXTRA COLUMNS__RESULT_TYPE], showingColumnValues[constants.KEY__EXTRACOLUMNS__RESULT_T YPE]); updateResults()">
94 toggle 96 toggle
95 </button> 97 </button>
96 </td> 98 </td>
97 <td ng-repeat="category in [constants.KEY__EXTRACOLUMNS__BUILDER, constant s.KEY__EXTRACOLUMNS__TEST]"> 99 <td ng-repeat="category in [constants.KEY__EXTRACOLUMNS__BUILDER, constant s.KEY__EXTRACOLUMNS__TEST]">
98 {{category}} 100 {{category}}
99 <br> 101 <br>
100 <input type="text" 102 <input type="text"
101 ng-model="categoryValueMatch[category]" 103 ng-model="categoryValueMatch[category]"
102 ng-change="setUpdatesPending(true)"/> 104 ng-change="setUpdatesPending(true)"/>
103 <br> 105 <br>
104 <button ng-click="setCategoryValueMatch(category, '')" 106 <button ng-click="setCategoryValueMatch(category, '')"
105 ng-disabled="('' == categoryValueMatch[category])"> 107 ng-disabled="('' == categoryValueMatch[category])">
106 clear (show all) 108 clear (show all)
107 </button> 109 </button>
108 </td> 110 </td>
109 <td> 111 <td>
110 config<br> 112 config<br>
111 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMNS__CONFIG][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]"> 113 <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXT RACOLUMNS__CONFIG][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
112 <input type="checkbox" 114 <input type="checkbox"
113 name="configs" 115 name="configs"
114 value="{{valueAndCount[0]}}" 116 value="{{valueAndCount[0]}}"
115 ng-checked="!isValueInSet(valueAndCount[0], hiddenConfigs)" 117 ng-checked="isValueInSet(valueAndCount[0], showingColumnValues[ constants.KEY__EXTRACOLUMNS__CONFIG])"
116 ng-click="toggleValueInSet(valueAndCount[0], hiddenConfigs); se tUpdatesPending(true)"> 118 ng-click="toggleValueInSet(valueAndCount[0], showingColumnValue s[constants.KEY__EXTRACOLUMNS__CONFIG]); setUpdatesPending(true)">
117 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br> 119 {{valueAndCount[0]}} ({{valueAndCount[1]}})<br>
118 </label> 120 </label>
119 <button ng-click="hiddenConfigs = {}; updateResults()"> 121 <button ng-click="showingColumnValues[constants.KEY__EXTRACOLUMNS__CONFI G] = {}; toggleValuesInSet(allColumnValues[constants.KEY__EXTRACOLUMNS__CONFIG], showingColumnValues[constants.KEY__EXTRACOLUMNS__CONFIG]); updateResults()"
epoger 2014/07/03 21:49:46 These action definitions are long and unwieldy. B
rmistry 2014/07/07 15:28:52 Acknowledged.
122 ng-disabled="!readyToDisplay || allColumnValues[constants.KEY__E XTRACOLUMNS__CONFIG].length == setSize(showingColumnValues[constants.KEY__EXTRAC OLUMNS__CONFIG])">
120 all 123 all
121 </button> 124 </button>
122 <button ng-click="hiddenConfigs = {}; toggleValuesInSet(allConfigs, hidd enConfigs); updateResults()"> 125 <button ng-click="showingColumnValues[constants.KEY__EXTRACOLUMNS__CONFI G] = {}; updateResults()"
126 ng-disabled="!readyToDisplay || 0 == setSize(showingColumnValues [constants.KEY__EXTRACOLUMNS__CONFIG])">
123 none 127 none
124 </button> 128 </button>
125 <button ng-click="toggleValuesInSet(allConfigs, hiddenConfigs); updateRe sults()"> 129 <button ng-click="toggleValuesInSet(allColumnValues[constants.KEY__EXTRA COLUMNS__CONFIG], showingColumnValues[constants.KEY__EXTRACOLUMNS__CONFIG]); upd ateResults()">
126 toggle 130 toggle
127 </button> 131 </button>
128 </td> 132 </td>
129 <td><table> 133 <td><table>
130 <tr><td> 134 <tr><td>
131 <input type="checkbox" ng-model="showThumbnailsPending" 135 <input type="checkbox" ng-model="showThumbnailsPending"
132 ng-init="showThumbnailsPending = true" 136 ng-init="showThumbnailsPending = true"
133 ng-change="areUpdatesPending = true"/> 137 ng-change="areUpdatesPending = true"/>
134 Show thumbnails 138 Show thumbnails
135 </td></tr> 139 </td></tr>
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 </tr> 309 </tr>
306 310
307 <tr ng-repeat="imagePair in limitedImagePairs" valign="top" 311 <tr ng-repeat="imagePair in limitedImagePairs" valign="top"
308 ng-class-odd="'results-odd'" ng-class-even="'results-even'" 312 ng-class-odd="'results-odd'" ng-class-even="'results-even'"
309 results-updated-callback-directive> 313 results-updated-callback-directive>
310 <td> 314 <td>
311 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__ EXTRACOLUMNS__RESULT_TYPE]}} 315 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__ EXTRACOLUMNS__RESULT_TYPE]}}
312 <br> 316 <br>
313 <button class="show-only-button" 317 <button class="show-only-button"
314 ng-show="viewingTab == defaultTab" 318 ng-show="viewingTab == defaultTab"
315 ng-click="showOnlyResultType(imagePair[constants.KEY__IMAGEP AIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE])" 319 ng-disabled="1 == setSize(showingColumnValues[constants.KEY_ _EXTRACOLUMNS__RESULT_TYPE])"
320 ng-click="showOnlyColumnValue(constants.KEY__EXTRACOLUMNS__R ESULT_TYPE, imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EX TRACOLUMNS__RESULT_TYPE])"
316 title="show only results of type {{imagePair[constants.KEY__ IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE]}}"> 321 title="show only results of type {{imagePair[constants.KEY__ IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE]}}">
317 show only 322 show only
318 </button> 323 </button>
319 <br> 324 <br>
320 <button class="show-all-button" 325 <button class="show-all-button"
321 ng-show="viewingTab == defaultTab" 326 ng-show="viewingTab == defaultTab"
322 ng-disabled="0 == setSize(hiddenResultTypes)" 327 ng-disabled="allColumnValues[constants.KEY__EXTRACOLUMNS__RE SULT_TYPE].length == setSize(showingColumnValues[constants.KEY__EXTRACOLUMNS__RE SULT_TYPE])"
323 ng-click="showAllResultTypes()" 328 ng-click="showAllColumnValues(constants.KEY__EXTRACOLUMNS__R ESULT_TYPE)"
324 title="show results of all types"> 329 title="show results of all types">
325 show all 330 show all
326 </button> 331 </button>
327 </td> 332 </td>
328 <td ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST]"> 333 <td ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST]">
329 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}} 334 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}
330 <br> 335 <br>
331 <button class="show-only-button" 336 <button class="show-only-button"
332 ng-show="viewingTab == defaultTab" 337 ng-show="viewingTab == defaultTab"
333 ng-disabled="imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUM NS][categoryName] == categoryValueMatch[categoryName]" 338 ng-disabled="imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUM NS][categoryName] == categoryValueMatch[categoryName]"
334 ng-click="setCategoryValueMatch(categoryName, imagePair[cons tants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName])" 339 ng-click="setCategoryValueMatch(categoryName, imagePair[cons tants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName])"
335 title="show only results of {{categoryName}} {{imagePair[con stants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}"> 340 title="show only results of {{categoryName}} {{imagePair[con stants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}">
336 show only 341 show only
337 </button> 342 </button>
338 <br> 343 <br>
339 <button class="show-all-button" 344 <button class="show-all-button"
340 ng-show="viewingTab == defaultTab" 345 ng-show="viewingTab == defaultTab"
341 ng-disabled="'' == categoryValueMatch[categoryName]" 346 ng-disabled="'' == categoryValueMatch[categoryName]"
342 ng-click="setCategoryValueMatch(categoryName, '')" 347 ng-click="setCategoryValueMatch(categoryName, '')"
343 title="show results of all {{categoryName}}s"> 348 title="show results of all {{categoryName}}s">
344 show all 349 show all
345 </button> 350 </button>
346 </td> 351 </td>
347 <td> 352 <td>
348 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__ EXTRACOLUMNS__CONFIG]}} 353 {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__ EXTRACOLUMNS__CONFIG]}}
349 <br> 354 <br>
350 <button class="show-only-button" 355 <button class="show-only-button"
351 ng-show="viewingTab == defaultTab" 356 ng-show="viewingTab == defaultTab"
352 ng-click="showOnlyConfig(imagePair[constants.KEY__IMAGEPAIRS __EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG])" 357 ng-disabled="1 == setSize(showingColumnValues[constants.KEY_ _EXTRACOLUMNS__CONFIG])"
358 ng-click="showOnlyColumnValue(constants.KEY__EXTRACOLUMNS__C ONFIG, imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACO LUMNS__CONFIG])"
353 title="show only results of config {{imagePair[constants.KEY __IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG]}}"> 359 title="show only results of config {{imagePair[constants.KEY __IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG]}}">
354 show only 360 show only
355 </button> 361 </button>
356 <br> 362 <br>
357 <button class="show-all-button" 363 <button class="show-all-button"
358 ng-show="viewingTab == defaultTab" 364 ng-show="viewingTab == defaultTab"
359 ng-disabled="0 == setSize(hiddenConfigs)" 365 ng-disabled="allColumnValues[constants.KEY__EXTRACOLUMNS__CO NFIG].length == setSize(showingColumnValues[constants.KEY__EXTRACOLUMNS__CONFIG] )"
360 ng-click="showAllConfigs()" 366 ng-click="showAllColumnValues(constants.KEY__EXTRACOLUMNS__C ONFIG)"
361 title="show results of all configs"> 367 title="show results of all configs">
362 show all 368 show all
363 </button> 369 </button>
364 </td> 370 </td>
365 <td> 371 <td>
366 <a ng-repeat="bug in imagePair[constants.KEY__IMAGEPAIRS__EXPECTATIO NS][constants.KEY__EXPECTATIONS__BUGS]" 372 <a ng-repeat="bug in imagePair[constants.KEY__IMAGEPAIRS__EXPECTATIO NS][constants.KEY__EXPECTATIONS__BUGS]"
367 href="https://code.google.com/p/skia/issues/detail?id={{bug}}" 373 href="https://code.google.com/p/skia/issues/detail?id={{bug}}"
368 target="_blank"> 374 target="_blank">
369 {{bug}} 375 {{bug}}
370 </a> 376 </a>
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
442 <input type="checkbox" 448 <input type="checkbox"
443 name="rowSelect" 449 name="rowSelect"
444 value="{{imagePair.index}}" 450 value="{{imagePair.index}}"
445 ng-checked="isValueInArray(imagePair.index, selectedImagePair s)" 451 ng-checked="isValueInArray(imagePair.index, selectedImagePair s)"
446 ng-click="toggleSomeImagePairs($index, imagePair[constants.KE Y__IMAGEPAIRS__ROWSPAN])"> 452 ng-click="toggleSomeImagePairs($index, imagePair[constants.KE Y__IMAGEPAIRS__ROWSPAN])">
447 </tr> 453 </tr>
448 </table> <!-- imagePairs --> 454 </table> <!-- imagePairs -->
449 </td></tr></table> <!-- table holding results header + imagePairs table --> 455 </td></tr></table> <!-- table holding results header + imagePairs table -->
450 456
451 </div><!-- main display area of selected tab --> 457 </div><!-- main display area of selected tab -->
452 </div><!-- everything: hide until data is loaded --> 458 </div><!-- everything: hide until readyToDisplay -->
453 459
454 </body> 460 </body>
455 </html> 461 </html>
OLDNEW
« gm/rebaseline_server/static/loader.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