summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java')
-rw-r--r--src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java b/src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java
index 0bf1c3fa4d..4295f27e76 100644
--- a/src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java
+++ b/src/main/java/com/google/gerrit/client/changes/PatchSetPanel.java
@@ -33,6 +33,7 @@ import com.google.gerrit.client.rpc.Common;
import com.google.gerrit.client.rpc.GerritCallback;
import com.google.gerrit.client.ui.RefreshListener;
import com.google.gwt.user.client.Window;
+import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Composite;
@@ -161,6 +162,9 @@ class PatchSetPanel extends Composite implements DisclosureHandler {
if (Gerrit.isSignedIn() && changeDetail.isCurrentPatchSet(detail)) {
populateCommentAction();
populateActions(detail);
+ if (changeDetail.canAbandon()) {
+ populateAbandonAction();
+ }
}
body.add(patchTable);
}
@@ -311,6 +315,24 @@ class PatchSetPanel extends Composite implements DisclosureHandler {
}
}
+ private void populateAbandonAction() {
+ final Button b = new Button(Util.C.buttonAbandonChangeBegin());
+ b.addClickListener(new ClickListener() {
+ public void onClick(Widget sender) {
+ new AbandonChangeDialog(patchSet.getId(), new AsyncCallback<Object>() {
+ public void onSuccess(Object result) {
+ actionsPanel.remove(b);
+ fireOnSuggestRefresh();
+ }
+
+ public void onFailure(Throwable caught) {
+ }
+ }).center();
+ }
+ });
+ actionsPanel.add(b);
+ }
+
private void populateCommentAction() {
final Button b = new Button(Util.C.buttonPublishCommentsBegin());
b.addClickListener(new ClickListener() {