Merge "ChangeScreen2: Fix NPE in /related caused by wrong variable"
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/ChangeScreen2.ui.xml b/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/ChangeScreen2.ui.xml
index d50acc9..c2b98b0 100644
--- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/ChangeScreen2.ui.xml
+++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/change/ChangeScreen2.ui.xml
@@ -86,7 +86,6 @@
.headerTable {
border-spacing: 0;
- width: 100%;
}
.headerTable th {
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/CommentBoxUi.css b/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/CommentBoxUi.css
index 5b3b91a..7895c9b9 100644
--- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/CommentBoxUi.css
+++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/CommentBoxUi.css
@@ -16,6 +16,7 @@
.commentBox {
position: relative;
width: 679px;
+ min-height: 16px;
font-family: sans-serif;
background-color: #fcfa96;
border: 1px solid black;
@@ -31,7 +32,7 @@
.summary {
color: #777;
position: absolute;
- top: 0;
+ top: 2px;
left: 120px;
width: 408px;
overflow: hidden;
@@ -42,12 +43,13 @@
.date {
white-space: nowrap;
position: absolute;
- top: 0;
+ top: 2px;
right: 5px;
}
.contents {
margin-left: 28px;
+ padding-top: 2px;
position: relative;
}
.contents p,
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/DraftBox.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/DraftBox.java
index 25dcdf0..8d505ee 100644
--- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/DraftBox.java
+++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/DraftBox.java
@@ -92,6 +92,9 @@
expandTimer = new Timer() {
@Override
public void run() {
+ if (isNew()) {
+ cancel.setVisible(!isDirty());
+ }
expandText();
}
};
@@ -291,7 +294,7 @@
@UiHandler("cancel")
void onCancel(ClickEvent e) {
e.stopPropagation();
- if (comment.id() == null && editArea.getValue().length() == 0) {
+ if (isNew() && !isDirty()) {
removeUI();
} else {
setEdit(false);
@@ -302,7 +305,7 @@
@UiHandler({"discard1", "discard2"})
void onDiscard(ClickEvent e) {
e.stopPropagation();
- if (comment.id() == null) {
+ if (isNew()) {
removeUI();
} else {
setEdit(false);
@@ -327,11 +330,30 @@
onSave();
return;
}
- } else if (e.getNativeKeyCode() == KeyCodes.KEY_ESCAPE
- && comment.id() == null && editArea.getValue().length() == 0) {
- removeUI();
- return;
+ } else if (e.getNativeKeyCode() == KeyCodes.KEY_ESCAPE && !isDirty()) {
+ if (isNew()) {
+ removeUI();
+ return;
+ } else {
+ setEdit(false);
+ cm.focus();
+ return;
+ }
}
expandTimer.schedule(250);
}
+
+ private boolean isNew() {
+ return comment.id() == null;
+ }
+
+ private boolean isDirty() {
+ String msg = editArea.getValue().trim();
+ if (isNew()) {
+ return msg.length() > 0;
+ }
+ return msg.equals(comment.message() != null
+ ? comment.message().trim()
+ : "");
+ }
}
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/rpc/RestApi.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/rpc/RestApi.java
index 073b49e..4666d34 100644
--- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/rpc/RestApi.java
+++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/rpc/RestApi.java
@@ -93,6 +93,7 @@
case 405: // Method Not Allowed
case 409: // Conflict
case 412: // Precondition Failed
+ case 422: // Unprocessable Entity
case 429: // Too Many Requests (RFC 6585)
return true;
diff --git a/gerrit-server/src/main/resources/com/google/gerrit/server/tools/root/hooks/commit-msg b/gerrit-server/src/main/resources/com/google/gerrit/server/tools/root/hooks/commit-msg
index b29e25c..12dcd52 100644
--- a/gerrit-server/src/main/resources/com/google/gerrit/server/tools/root/hooks/commit-msg
+++ b/gerrit-server/src/main/resources/com/google/gerrit/server/tools/root/hooks/commit-msg
@@ -38,6 +38,11 @@
return
fi
+ if test "false" = "`git config --bool --get gerrit.createChangeId`"
+ then
+ return
+ fi
+
# Does Change-Id: already exist? if so, exit (no change).
if grep -i '^Change-Id:' "$MSG" >/dev/null
then
diff --git a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/PluginCommandModule.java b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/PluginCommandModule.java
index 013f070..334f155 100644
--- a/gerrit-sshd/src/main/java/com/google/gerrit/sshd/PluginCommandModule.java
+++ b/gerrit-sshd/src/main/java/com/google/gerrit/sshd/PluginCommandModule.java
@@ -26,7 +26,7 @@
private CommandName command;
@Inject
- void setPluginName(@PluginName String name, final String descr) {
+ void setPluginName(@PluginName String name) {
this.command = Commands.named(name);
}