Don't show 'Add Me' button for change owner or existing reviewers Change-Id: Ib79bd18d863b7b62e90be7179d85465f25cc7759
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.java index 10a140d..87320b8 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.java
@@ -65,6 +65,7 @@ @UiField Element reviewersText; @UiField Button openForm; + @UiField Button addMe; @UiField Element form; @UiField Element error; @UiField(provided = true) @@ -146,7 +147,7 @@ } } - @UiHandler("addme") + @UiHandler("addMe") void onAddMe(ClickEvent e) { String accountId = String.valueOf(Gerrit.getUserAccountInfo()._account_id()); addReviewer(accountId, false); @@ -248,6 +249,13 @@ reviewersText.setInnerSafeHtml(rHtml); ccText.setInnerSafeHtml(ccHtml); + if (Gerrit.isSignedIn()) { + int currentUser = Gerrit.getUserAccountInfo()._account_id(); + boolean showAddMeButton = info.owner()._account_id() != currentUser + && !cc.containsKey(currentUser) + && !r.containsKey(currentUser); + addMe.setVisible(showAddMeButton); + } } private static Map<Integer, VotableInfo> votable(ChangeInfo change) {
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.ui.xml b/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.ui.xml index 4e3b0c6..024197d 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.ui.xml +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/Reviewers.ui.xml
@@ -72,7 +72,8 @@ <g:Button ui:field='add' styleName='{res.style.button}'> <div>Add</div> </g:Button> - <g:Button ui:field='addme' styleName='{res.style.button}'> + <g:Button ui:field='addMe' + styleName='{res.style.button}' visible='false'> <div>Add Me</div> </g:Button> <g:Button ui:field='cancel'