Improve error handling in 'gr-change-list-view'

- hide link 'Next' when an error occurs
- hide links 'Next' / 'Prev' initially
  (and thus property '_changes' is undefined)
- remove unused code

Change-Id: Ib6f77232481988b81aad8b996bfc9c9432c4d826
This commit is contained in:
Urs Wolfer
2016-06-04 16:39:41 +02:00
parent bd98fad7aa
commit c41ae08d17
2 changed files with 7 additions and 15 deletions

View File

@@ -49,17 +49,17 @@ limitations under the License.
} }
} }
</style> </style>
<div class="loading" hidden$="[[!_loading]]">Loading...</div> <div class="loading" hidden$="[[!_loading]]" hidden>Loading...</div>
<div hidden$="[[_loading]]"> <div hidden$="[[_loading]]" hidden>
<gr-change-list <gr-change-list
changes="{{_changes}}" changes="{{_changes}}"
selected-index="{{viewState.selectedChangeIndex}}" selected-index="{{viewState.selectedChangeIndex}}"
show-star="[[loggedIn]]"></gr-change-list> show-star="[[loggedIn]]"></gr-change-list>
<nav> <nav>
<a href$="[[_computeNavLink(_query, _offset, -1, _changesPerPage)]]" <a href$="[[_computeNavLink(_query, _offset, -1, _changesPerPage)]]"
hidden$="[[_hidePrevArrow(_offset)]]">&larr; Prev</a> hidden$="[[_hidePrevArrow(_offset)]]" hidden>&larr; Prev</a>
<a href$="[[_computeNavLink(_query, _offset, 1, _changesPerPage)]]" <a href$="[[_computeNavLink(_query, _offset, 1, _changesPerPage)]]"
hidden$="[[_hideNextArrow(_changes.length, _changesPerPage)]]"> hidden$="[[_hideNextArrow(_loading, _changesPerPage)]]" hidden>
Next &rarr;</a> Next &rarr;</a>
</nav> </nav>
</div> </div>

View File

@@ -123,20 +123,12 @@
return href; return href;
}, },
_computeErrorHidden: function(loading, lastError) {
return loading || lastError == null;
},
_computeListHidden: function(loading, lastError) {
return loading || lastError != null;
},
_hidePrevArrow: function(offset) { _hidePrevArrow: function(offset) {
return offset == 0; return offset === 0;
}, },
_hideNextArrow: function(changesLen, changesPerPage) { _hideNextArrow: function(loading, changesPerPage) {
return changesLen < changesPerPage; return loading || !this._changes || this._changes.length < changesPerPage;
}, },
}); });
})(); })();