Increase click area of checkbox

Wrap inside a label which has a padding and negative margin to
balance the spacing out.

Release-Notes: skip
Google-bug-id: b/238175667
Change-Id: I3623f58ea0aa4be19b925811932f4713810cb524
diff --git a/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item.ts b/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item.ts
index bf04808..3a18095 100644
--- a/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item.ts
+++ b/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item.ts
@@ -253,6 +253,10 @@
         .cell.selection input {
           vertical-align: middle;
         }
+        .selectionLabel {
+          padding: 10px;
+          margin: -10px;
+        }
         .cell.label {
           font-weight: var(--font-weight-normal);
         }
@@ -302,11 +306,13 @@
           update the current checked state.
           See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#attr-checked
         -->
-        <input
-          type="checkbox"
-          .checked=${this.checked}
-          @click=${() => this.toggleCheckbox()}
-        />
+        <label class="selectionLabel">
+          <input
+            type="checkbox"
+            .checked=${this.checked}
+            @click=${() => this.toggleCheckbox()}
+          />
+        </label>
       </td>
     `;
   }
diff --git a/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item_test.ts b/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item_test.ts
index fb45c40..91844e1 100644
--- a/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item_test.ts
+++ b/polygerrit-ui/app/elements/change-list/gr-change-list-item/gr-change-list-item_test.ts
@@ -121,7 +121,7 @@
 
       const checkbox = queryAndAssert<HTMLInputElement>(
         element,
-        '.selection > input'
+        '.selection > label > input'
       );
       tap(checkbox);
       let selectedChangeNums = await waitUntilObserved(
@@ -156,7 +156,7 @@
 
       const checkbox = queryAndAssert<HTMLInputElement>(
         element,
-        '.selection > input'
+        '.selection > label > input'
       );
       assert.isTrue(checkbox.checked);
 
diff --git a/polygerrit-ui/app/elements/change-list/gr-change-list-view/gr-change-list-view_test.ts b/polygerrit-ui/app/elements/change-list/gr-change-list-view/gr-change-list-view_test.ts
index c19ee11..7ff5866 100644
--- a/polygerrit-ui/app/elements/change-list/gr-change-list-view/gr-change-list-view_test.ts
+++ b/polygerrit-ui/app/elements/change-list/gr-change-list-view/gr-change-list-view_test.ts
@@ -65,7 +65,7 @@
           query(query(element, 'gr-change-list'), 'gr-change-list-section'),
           'gr-change-list-item'
         ),
-        '.selection > input'
+        '.selection > label > input'
       );
       tap(checkbox);
       await waitUntil(() => checkbox.checked);
@@ -80,7 +80,7 @@
           query(query(element, 'gr-change-list'), 'gr-change-list-section'),
           'gr-change-list-item'
         ),
-        '.selection > input'
+        '.selection > label > input'
       );
       assert.isTrue(checkbox.checked);
     });
diff --git a/polygerrit-ui/app/elements/change-list/gr-dashboard-view/gr-dashboard-view_test.ts b/polygerrit-ui/app/elements/change-list/gr-dashboard-view/gr-dashboard-view_test.ts
index 29c3751..339bfd3 100644
--- a/polygerrit-ui/app/elements/change-list/gr-dashboard-view/gr-dashboard-view_test.ts
+++ b/polygerrit-ui/app/elements/change-list/gr-dashboard-view/gr-dashboard-view_test.ts
@@ -91,7 +91,7 @@
           query(query(element, 'gr-change-list'), 'gr-change-list-section'),
           'gr-change-list-item'
         ),
-        '.selection > input'
+        '.selection > label > input'
       );
       MockInteractions.tap(checkbox);
       await waitUntil(() => checkbox.checked);