Disable 'edit' for commit messages on merged changes
Adds a param to the function that computes the visibility of the edit
button for the commit message to allow for disabling when the change
is merged.
Bug: Issue 4353
Change-Id: I8a64f3c15ddd19c59dc4721470cd1bafbb36c152
diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js
index b6c18e5..bc9cb50 100644
--- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js
+++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js
@@ -66,7 +66,7 @@
_hideEditCommitMessage: {
type: Boolean,
computed: '_computeHideEditCommitMessage(_loggedIn, ' +
- '_editingCommitMessage)',
+ '_editingCommitMessage, _change)',
},
_latestCommitMessage: {
type: String,
@@ -152,8 +152,10 @@
}.bind(this));
},
- _computeHideEditCommitMessage: function(loggedIn, editing) {
- if (!loggedIn || editing) { return true; }
+ _computeHideEditCommitMessage: function(loggedIn, editing, change) {
+ if (!loggedIn || editing || change.status === this.ChangeStatus.MERGED) {
+ return true;
+ }
return false;
},
diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html
index 2cdeab4..55e6d90 100644
--- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html
+++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html
@@ -365,10 +365,15 @@
});
test('show commit message edit button', function() {
- assert.isTrue(element._computeHideEditCommitMessage(false, false));
- assert.isTrue(element._computeHideEditCommitMessage(true, true));
- assert.isTrue(element._computeHideEditCommitMessage(false, true));
- assert.isFalse(element._computeHideEditCommitMessage(true, false));
+ var _change = {
+ status: element.ChangeStatus.MERGED,
+ };
+ assert.isTrue(element._computeHideEditCommitMessage(false, false, {}));
+ assert.isTrue(element._computeHideEditCommitMessage(true, true, {}));
+ assert.isTrue(element._computeHideEditCommitMessage(false, true, {}));
+ assert.isFalse(element._computeHideEditCommitMessage(true, false, {}));
+ assert.isTrue(element._computeHideEditCommitMessage(true, false,
+ _change));
});
test('topic is coalesced to null', function(done) {