Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1260)

Unified Diff: appengine/chromium_rietveld/new_static/components/cr-patchset-edit-dialog.html

Issue 873593007: Add the ability to delete patchsets. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Fix |sending| Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: appengine/chromium_rietveld/new_static/components/cr-patchset-edit-dialog.html
diff --git a/appengine/chromium_rietveld/new_static/components/cr-patchset-title-dialog.html b/appengine/chromium_rietveld/new_static/components/cr-patchset-edit-dialog.html
similarity index 51%
rename from appengine/chromium_rietveld/new_static/components/cr-patchset-title-dialog.html
rename to appengine/chromium_rietveld/new_static/components/cr-patchset-edit-dialog.html
index 35ef4b199eefdc2619a19fc41871e9f4201126de..d6f1f616e06a99c0b3a4a03e262d1026e15c3a88 100644
--- a/appengine/chromium_rietveld/new_static/components/cr-patchset-title-dialog.html
+++ b/appengine/chromium_rietveld/new_static/components/cr-patchset-edit-dialog.html
@@ -7,17 +7,50 @@ found in the LICENSE file. -->
<link rel="import" href="cr-dialog.html">
<link rel="import" href="cr-toolbar.html">
-<polymer-element name="cr-patchset-title-dialog" attributes="patchset">
+<polymer-element name="cr-patchset-edit-dialog" attributes="patchset">
<template>
<link rel="stylesheet" href="common.css">
<link rel="stylesheet" href="forms.css">
+ <style>
+ img {
+ display: block;
+ }
+
+ .delete-action {
+ flex: 1;
+ display: flex;
+ justify-content: flex-end;
+ }
+
+ .delete-action > cr-button {
+ margin-right: 0;
+ }
+
+ .delete-confirmation {
+ display: flex;
+ align-items: center;
+ border: 1px solid #dcdcdc;
+ margin-left: -1px;
+ }
+
+ .delete-confirmation div {
+ display: flex;
+ align-items: center;
+ margin: 0 16px;
+ }
+
+ .delete-confirmation cr-button {
+ height: 20px;
+ }
+ </style>
+
<dialog is="cr-dialog" id="dialog" on-cancel="{{ cancel }}">
<cr-butterbar message="{{ butterbarMessage }}"></cr-butterbar>
<h1>Edit patchset {{ patchset.sequence }}</h1>
- <fieldset class="form-fields" disabled?="{{ disabled }}">
+ <fieldset class="form-fields" disabled?="{{ sending }}">
<div class="form-row">
<label class="form-label" for="title">Title</label>
<div class="form-field">
@@ -29,17 +62,45 @@ found in the LICENSE file. -->
<cr-toolbar>
<cr-button primary on-tap="{{ save }}">Save</cr-button>
<cr-button on-tap="{{ cancel }}">Cancel</cr-button>
+ <template if="{{ patchset.issue.patchsets.length > 1 }}">
+ <div class="delete-action">
+ <cr-button on-tap="{{ toggleDeleteAction }}" icon>
+ <img src="../images/delete_icon_36.png" height="25">
+ </cr-button>
+ <template if="{{ showDeleteAction }}">
+ <div class="delete-confirmation">
+ <div>Permanently delete this patch?</div>
+ <cr-button create on-tap="{{ deletePatchset }}">Delete</cr-button>
+ <cr-button on-tap="{{ toggleDeleteAction }}">No</cr-button>
+ </div>
+ </template>
+ </div>
+ </template>
</cr-toolbar>
</dialog>
</template>
<script>
- Polymer("cr-patchset-title-dialog", {
+ Polymer("cr-patchset-edit-dialog", {
created: function() {
this.patchset = null;
this.commit = true;
this.butterbarMessage = "";
this.sending = false;
this.title = "";
+ this.showDeleteAction = false;
+ },
+ toggleDeleteAction: function() {
+ this.showDeleteAction = !this.showDeleteAction;
+ },
+ deletePatchset: function() {
+ this.sending = true;
+ this.patchset.delete()
+ .then(this.deleteSuccess.bind(this))
+ .catch(this.displayError.bind(this));
+ },
+ deleteSuccess: function() {
+ this.fire("issue-refresh");
+ this.close();
},
cancel: function(event) {
this.close();
@@ -49,6 +110,7 @@ found in the LICENSE file. -->
this.butterbarMessage = "";
this.commit = true;
this.title = this.patchset ? this.patchset.title : "";
+ this.showDeleteAction = false;
},
close: function() {
this.reset();
@@ -59,12 +121,12 @@ found in the LICENSE file. -->
this.butterbarMessage = "Saving...";
this.patchset.setTitle(this.title)
.then(this.saveSuccess.bind(this))
- .catch(this.saveFailure.bind(this));
+ .catch(this.displayError.bind(this));
},
saveSuccess: function() {
this.close();
},
- saveFailure: function(error) {
+ displayError: function(error) {
// TODO(esprehn): We should show an better error message.
this.sending = false;
this.butterbarMessage = "Error: " + error.message;

Powered by Google App Engine
This is Rietveld 408576698