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

Unified Diff: gm/rebaseline_server/static/view.html

Issue 369473005: rebaseline_server: handle category filtering more generically (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: rebase after https://codereview.chromium.org/364253003/ ('rebaseline_server: if urlSchemaVersion is… Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gm/rebaseline_server/static/loader.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gm/rebaseline_server/static/view.html
diff --git a/gm/rebaseline_server/static/view.html b/gm/rebaseline_server/static/view.html
index 94dc9ba63e5e6e2a0bb71d30b994db29b183ef4a..d94c47d02fa3abfcfa122b911e84942305f8ee58 100644
--- a/gm/rebaseline_server/static/view.html
+++ b/gm/rebaseline_server/static/view.html
@@ -18,12 +18,12 @@
</a>
</h2>
- <em ng-show="!extraColumnHeaders"><!-- show until data is loaded -->
+ <em ng-show="!readyToDisplay">
Loading results from <a href="{{resultsToLoad}}">{{resultsToLoad}}</a> ...
{{loadingMessage}}
</em>
- <div ng-show="extraColumnHeaders"><!-- everything: hide until data is loaded -->
+ <div ng-show="readyToDisplay">
<div class="warning-div"
ng-show="urlSchemaVersionLoaded != constants.URL_VALUE__SCHEMA_VERSION__CURRENT">
@@ -74,26 +74,32 @@
</th>
</tr>
<tr valign="top">
- <td>
- resultType<br>
- <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXTRACOLUMNS__RESULT_TYPE][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
+
+ <!-- columns that we filter using checkboxes -->
+ <td ng-repeat="category in [constants.KEY__EXTRACOLUMNS__RESULT_TYPE, constants.KEY__EXTRACOLUMNS__CONFIG]">
+ {{category}}
+ <br>
+ <label ng-repeat="valueAndCount in extraColumnHeaders[category][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
<input type="checkbox"
- name="resultTypes"
value="{{valueAndCount[0]}}"
- ng-checked="!isValueInSet(valueAndCount[0], hiddenResultTypes)"
- ng-click="toggleValueInSet(valueAndCount[0], hiddenResultTypes); setUpdatesPending(true)">
+ ng-checked="isValueInSet(valueAndCount[0], showingColumnValues[category])"
+ ng-click="toggleValueInSet(valueAndCount[0], showingColumnValues[category]); setUpdatesPending(true)">
{{valueAndCount[0]}} ({{valueAndCount[1]}})<br>
</label>
- <button ng-click="hiddenResultTypes = {}; updateResults()">
+ <button ng-click="showingColumnValues[category] = {}; toggleValuesInSet(allColumnValues[category], showingColumnValues[category]); updateResults()"
+ ng-disabled="!readyToDisplay || allColumnValues[category].length == setSize(showingColumnValues[category])">
all
</button>
- <button ng-click="hiddenResultTypes = {}; toggleValuesInSet(allResultTypes, hiddenResultTypes); updateResults()">
+ <button ng-click="showingColumnValues[category] = {}; updateResults()"
+ ng-disabled="!readyToDisplay || 0 == setSize(showingColumnValues[category])">
none
</button>
- <button ng-click="toggleValuesInSet(allResultTypes, hiddenResultTypes); updateResults()">
+ <button ng-click="toggleValuesInSet(allColumnValues[category], showingColumnValues[category]); updateResults()">
toggle
</button>
</td>
+
+ <!-- columns that we filter using partial text match -->
<td ng-repeat="category in [constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST]">
{{category}}
<br>
@@ -106,26 +112,8 @@
clear (show all)
</button>
</td>
- <td>
- config<br>
- <label ng-repeat="valueAndCount in extraColumnHeaders[constants.KEY__EXTRACOLUMNS__CONFIG][constants.KEY__EXTRACOLUMNHEADERS__VALUES_AND_COUNTS]">
- <input type="checkbox"
- name="configs"
- value="{{valueAndCount[0]}}"
- ng-checked="!isValueInSet(valueAndCount[0], hiddenConfigs)"
- ng-click="toggleValueInSet(valueAndCount[0], hiddenConfigs); setUpdatesPending(true)">
- {{valueAndCount[0]}} ({{valueAndCount[1]}})<br>
- </label>
- <button ng-click="hiddenConfigs = {}; updateResults()">
- all
- </button>
- <button ng-click="hiddenConfigs = {}; toggleValuesInSet(allConfigs, hiddenConfigs); updateResults()">
- none
- </button>
- <button ng-click="toggleValuesInSet(allConfigs, hiddenConfigs); updateResults()">
- toggle
- </button>
- </td>
+
+ <!-- settings -->
<td><table>
<tr><td>
<input type="checkbox" ng-model="showThumbnailsPending"
@@ -244,7 +232,7 @@
<table border="1" ng-app="diff_viewer"> <!-- results -->
<tr>
<!-- Most column headers are displayed in a common fashion... -->
- <th ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__RESULT_TYPE, constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST, constants.KEY__EXTRACOLUMNS__CONFIG]">
+ <th ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__RESULT_TYPE, constants.KEY__EXTRACOLUMNS__CONFIG, constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST]">
<input type="radio"
name="sortColumnRadio"
value="{{categoryName}}"
@@ -307,24 +295,29 @@
<tr ng-repeat="imagePair in limitedImagePairs" valign="top"
ng-class-odd="'results-odd'" ng-class-even="'results-even'"
results-updated-callback-directive>
- <td>
- {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE]}}
+
+ <!-- columns that we filter using checkboxes -->
+ <td ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__RESULT_TYPE, constants.KEY__EXTRACOLUMNS__CONFIG]">
+ {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}
<br>
<button class="show-only-button"
ng-show="viewingTab == defaultTab"
- ng-click="showOnlyResultType(imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE])"
- title="show only results of type {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__RESULT_TYPE]}}">
+ ng-disabled="1 == setSize(showingColumnValues[categoryName])"
+ ng-click="showOnlyColumnValue(categoryName, imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName])"
+ title="show only results of {{categoryName}} {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}">
show only
</button>
<br>
<button class="show-all-button"
ng-show="viewingTab == defaultTab"
- ng-disabled="0 == setSize(hiddenResultTypes)"
- ng-click="showAllResultTypes()"
- title="show results of all types">
+ ng-disabled="allColumnValues[categoryName].length == setSize(showingColumnValues[categoryName])"
+ ng-click="showAllColumnValues(categoryName)"
+ title="show results of all {{categoryName}}s">
show all
</button>
</td>
+
+ <!-- columns that we filter using partial-text matching -->
<td ng-repeat="categoryName in [constants.KEY__EXTRACOLUMNS__BUILDER, constants.KEY__EXTRACOLUMNS__TEST]">
{{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][categoryName]}}
<br>
@@ -344,24 +337,8 @@
show all
</button>
</td>
- <td>
- {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG]}}
- <br>
- <button class="show-only-button"
- ng-show="viewingTab == defaultTab"
- ng-click="showOnlyConfig(imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG])"
- title="show only results of config {{imagePair[constants.KEY__IMAGEPAIRS__EXTRACOLUMNS][constants.KEY__EXTRACOLUMNS__CONFIG]}}">
- show only
- </button>
- <br>
- <button class="show-all-button"
- ng-show="viewingTab == defaultTab"
- ng-disabled="0 == setSize(hiddenConfigs)"
- ng-click="showAllConfigs()"
- title="show results of all configs">
- show all
- </button>
- </td>
+
+ <!-- bugs -->
<td>
<a ng-repeat="bug in imagePair[constants.KEY__IMAGEPAIRS__EXPECTATIONS][constants.KEY__EXPECTATIONS__BUGS]"
href="https://code.google.com/p/skia/issues/detail?id={{bug}}"
« no previous file with comments | « gm/rebaseline_server/static/loader.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698