Merge "Show the latest commit message always in the overview"
diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html
index 8df807e..cad4298 100644
--- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html
+++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html
@@ -234,9 +234,9 @@
<div class="commitMessage">
<gr-editable-content id="commitMessageEditor"
editing="[[_editingCommitMessage]]"
- content="{{_commitInfo.message}}">
+ content="{{_latestCommitMessage}}">
<gr-linked-text pre
- content="[[_commitInfo.message]]"
+ content="[[_latestCommitMessage]]"
config="[[_projectConfig.commentlinks]]"></gr-linked-text>
</gr-editable-content>
<gr-button link
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 c7cb978..726e7e5 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,11 @@
_hideEditCommitMessage: {
type: Boolean,
computed: '_computeHideEditCommitMessage(_loggedIn, ' +
- '_editingCommitMessage, _change.*, _patchRange.patchNum)',
+ '_editingCommitMessage)',
+ },
+ _latestCommitMessage: {
+ type: String,
+ value: '',
},
_patchRange: Object,
_allPatchSets: {
@@ -123,7 +127,7 @@
this.$.commitMessageEditor.disabled = false;
if (!resp.ok) { return; }
- this.set('_commitInfo.message', message);
+ this._latestCommitMessage = message;
this._editingCommitMessage = false;
this._reloadWindow();
}.bind(this)).catch(function(err) {
@@ -148,18 +152,8 @@
}.bind(this));
},
- _computeHideEditCommitMessage: function(loggedIn, editing, changeRecord,
- patchNum) {
- if (!changeRecord || !loggedIn || editing) { return true; }
-
- patchNum = parseInt(patchNum, 10);
- if (isNaN(patchNum)) { return true; }
-
- var change = changeRecord.base;
- if (!change.current_revision) { return true; }
- if (change.revisions[change.current_revision]._number !== patchNum) {
- return true;
- }
+ _computeHideEditCommitMessage: function(loggedIn, editing) {
+ if (!loggedIn || editing) { return true; }
return false;
},
@@ -551,6 +545,14 @@
}.bind(this));
},
+ _getLatestCommitMessage: function() {
+ return this.$.restAPI.getChangeCommitInfo(this._changeNum,
+ this._computeLatestPatchNum(this._allPatchSets)).then(
+ function(commitInfo) {
+ this._latestCommitMessage = commitInfo.message;
+ }.bind(this));
+ },
+
_getCommitInfo: function() {
return this.$.restAPI.getChangeCommitInfo(
this._changeNum, this._patchRange.patchNum).then(
@@ -593,6 +595,7 @@
if (!this._change) { return Promise.resolve(); }
return Promise.all([
+ this._getLatestCommitMessage(),
this.$.relatedChanges.reload(),
this._getProjectConfig(),
]);
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 42f3e29..7f9fb02 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
@@ -332,23 +332,10 @@
});
test('show commit message edit button', function() {
- var changeRecord = {
- base: {
- revisions: {
- rev1: {_number: 1},
- rev2: {_number: 2},
- },
- current_revision: 'rev2',
- },
- };
- assert.isTrue(element._computeHideEditCommitMessage(
- false, false, changeRecord, '2'));
- assert.isTrue(element._computeHideEditCommitMessage(
- true, true, changeRecord, '2'));
- assert.isTrue(element._computeHideEditCommitMessage(
- true, false, changeRecord, '1'));
- assert.isFalse(element._computeHideEditCommitMessage(
- true, false, changeRecord, '2'));
+ assert.isTrue(element._computeHideEditCommitMessage(false, false));
+ assert.isTrue(element._computeHideEditCommitMessage(true, true));
+ assert.isTrue(element._computeHideEditCommitMessage(false, true));
+ assert.isFalse(element._computeHideEditCommitMessage(true, false));
});
test('topic is coalesced to null', function(done) {