Fix review checkbox behavior in diff view
The saveReviewedState observer observes params.*, but should not set
reviewed state when view !== Gerrit.Nav.View.DIFF. This can (and did)
happen when the Gerrit.Nav API is used to change the view -- the
observer is triggered before the view is detached.
Bug: Issue 8192
Change-Id: I06c1875f6f515c0d001277e63eb7724728c85cba
diff --git a/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view.js b/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view.js
index 364d844..24986ee 100644
--- a/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view.js
+++ b/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view.js
@@ -605,8 +605,9 @@
}
},
- _setReviewedObserver(_loggedIn) {
- if (_loggedIn) {
+ _setReviewedObserver(_loggedIn, paramsRecord) {
+ const params = paramsRecord.base || {};
+ if (_loggedIn && params.view === Gerrit.Nav.View.DIFF) {
this._setReviewed(true);
}
},