Do not block reply dialog if attention set was modified

Change-Id: Ibae1bb972346117a4919ee91b249696312410ee5
diff --git a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js
index 3fb8442..0690a87 100644
--- a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js
+++ b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js
@@ -281,7 +281,7 @@
         type: Boolean,
         computed: '_computeSendButtonDisabled(canBeStarted, ' +
           'draftCommentThreads, draft, _reviewersMutated, _labelsChanged, ' +
-          '_includeComments, disabled, _commentEditing)',
+          '_includeComments, disabled, _commentEditing, _attentionModified)',
         observer: '_sendDisabledChanged',
       },
       draftCommentThreads: {
@@ -1028,7 +1028,8 @@
 
   _computeSendButtonDisabled(
       canBeStarted, draftCommentThreads, text, reviewersMutated,
-      labelsChanged, includeComments, disabled, commentEditing) {
+      labelsChanged, includeComments, disabled, commentEditing,
+      attentionModified) {
     // Polymer 2: check for undefined
     if ([
       canBeStarted,
@@ -1039,14 +1040,15 @@
       includeComments,
       disabled,
       commentEditing,
+      attentionModified,
     ].includes(undefined)) {
       return undefined;
     }
-
     if (commentEditing || disabled) { return true; }
     if (canBeStarted === true) { return false; }
     const hasDrafts = includeComments && draftCommentThreads.length;
-    return !hasDrafts && !text.length && !reviewersMutated && !labelsChanged;
+    return !hasDrafts && !text.length && !reviewersMutated && !labelsChanged &&
+      !attentionModified;
   }
 
   _computePatchSetWarning(patchNum, labelsChanged) {
diff --git a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.js b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.js
index 456adb5..29f1e8a 100644
--- a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.js
+++ b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.js
@@ -1235,7 +1235,8 @@
         /* labelsChanged= */ false,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
   });
 
@@ -1250,7 +1251,24 @@
         /* labelsChanged= */ false,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
+    ));
+  });
+
+  test('_computeSendButtonDisabled_attentionModified true', () => {
+    const fn = element._computeSendButtonDisabled.bind(element);
+    // Mock everything false
+    assert.isFalse(fn(
+        /* canBeStarted= */ false,
+        /* draftCommentThreads= */ [],
+        /* text= */ '',
+        /* reviewersMutated= */ false,
+        /* labelsChanged= */ false,
+        /* includeComments= */ false,
+        /* disabled= */ false,
+        /* commentEditing= */ false,
+        /* attentionModified= */ true
     ));
   });
 
@@ -1265,7 +1283,8 @@
         /* labelsChanged= */ false,
         /* includeComments= */ true,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
   });
 
@@ -1280,7 +1299,8 @@
         /* labelsChanged= */ false,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
   });
 
@@ -1295,7 +1315,8 @@
         /* labelsChanged= */ false,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
   });
 
@@ -1310,7 +1331,8 @@
         /* labelsChanged= */ false,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
   });
 
@@ -1325,7 +1347,8 @@
         /* labelsChanged= */ true,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
   });
 
@@ -1340,7 +1363,8 @@
         /* labelsChanged= */ true,
         /* includeComments= */ false,
         /* disabled= */ true,
-        /* commentEditing= */ false
+        /* commentEditing= */ false,
+        /* attentionModified= */ false
     ));
     assert.isTrue(fn(
         /* buttonLabel= */ 'Send',
@@ -1350,7 +1374,8 @@
         /* labelsChanged= */ true,
         /* includeComments= */ false,
         /* disabled= */ false,
-        /* commentEditing= */ true
+        /* commentEditing= */ true,
+        /* attentionModified= */ false
     ));
   });