MD History: Remove isFirstItem property from history-item

This property can be replaced with padding at the top of <history-list>,
which simplifies the code and should have a minor performance
improvement.

BUG=425625
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2333163002
Cr-Commit-Position: refs/heads/master@{#419101}
diff --git a/chrome/browser/resources/md_history/app.crisper.js b/chrome/browser/resources/md_history/app.crisper.js
index b1425c6..8ae2931 100644
--- a/chrome/browser/resources/md_history/app.crisper.js
+++ b/chrome/browser/resources/md_history/app.crisper.js
@@ -6705,10 +6705,6 @@
         type: Boolean,
         reflectToAttribute: true
       },
-      isFirstItem: {
-        type: Boolean,
-        reflectToAttribute: true
-      },
       isCardStart: {
         type: Boolean,
         reflectToAttribute: true
@@ -8052,9 +8048,6 @@
     if (length == 0 || i > length - 1) return false;
     return i == length - 1 || this.historyData_[i].dateRelativeDay != this.historyData_[i + 1].dateRelativeDay;
   },
-  isFirstItem_: function(index) {
-    return index == 0;
-  },
   notifyListScroll_: function() {
     this.fire('history-list-scrolled');
   },
diff --git a/chrome/browser/resources/md_history/app.vulcanized.html b/chrome/browser/resources/md_history/app.vulcanized.html
index f5584ebc..38e708e 100644
--- a/chrome/browser/resources/md_history/app.vulcanized.html
+++ b/chrome/browser/resources/md_history/app.vulcanized.html
@@ -3706,10 +3706,6 @@
   margin: var(--card-sizing_-_margin); max-width: var(--card-sizing_-_max-width); min-width: var(--card-sizing_-_min-width); padding: var(--card-sizing_-_padding); width: var(--card-sizing_-_width);
 }
 
-:host([is-first-item]) #main-container {
-  margin-top: var(--first-card-padding-top);
-}
-
 :host([is-card-end]) #main-container {
   margin-bottom: var(--card-padding-between);
 }
@@ -4233,8 +4229,10 @@
 }
 
 :host {
-  display: block;
+  box-sizing: border-box;
+        display: block;
         overflow: auto;
+        padding-top: var(--first-card-padding-top);
 }
 
 history-item {
@@ -4247,7 +4245,7 @@
     </div>
     <iron-list items="{{historyData_}}" as="item" id="infinite-list" hidden$="[[!hasResults(historyData_.length)]]">
       <template>
-        <history-item item="[[item]]" selected="{{item.selected}}" is-first-item="[[isFirstItem_(index)]]" is-card-start="[[isCardStart_(item, index, historyData_.length)]]" is-card-end="[[isCardEnd_(item, index, historyData_.length)]]" has-time-gap="[[needsTimeGap_(item, index, historyData_.length)]]" search-term="[[searchedTerm]]" number-of-items="[[historyData_.length]]" path="[[pathForItem_(index)]]" index="[[index]]">
+        <history-item item="[[item]]" selected="{{item.selected}}" is-card-start="[[isCardStart_(item, index, historyData_.length)]]" is-card-end="[[isCardEnd_(item, index, historyData_.length)]]" has-time-gap="[[needsTimeGap_(item, index, historyData_.length)]]" search-term="[[searchedTerm]]" number-of-items="[[historyData_.length]]" path="[[pathForItem_(index)]]" index="[[index]]">
         </history-item>
       </template>
     </iron-list>
diff --git a/chrome/browser/resources/md_history/history_item.html b/chrome/browser/resources/md_history/history_item.html
index a0ea899..9b653e8 100644
--- a/chrome/browser/resources/md_history/history_item.html
+++ b/chrome/browser/resources/md_history/history_item.html
@@ -27,10 +27,6 @@
         @apply(--card-sizing);
       }
 
-      :host([is-first-item]) #main-container {
-        margin-top: var(--first-card-padding-top);
-      }
-
       :host([is-card-end]) #main-container {
         margin-bottom: var(--card-padding-between);
       }
diff --git a/chrome/browser/resources/md_history/history_item.js b/chrome/browser/resources/md_history/history_item.js
index 3a88c44..e7bc2da 100644
--- a/chrome/browser/resources/md_history/history_item.js
+++ b/chrome/browser/resources/md_history/history_item.js
@@ -16,8 +16,6 @@
 
       selected: {type: Boolean, reflectToAttribute: true},
 
-      isFirstItem: {type: Boolean, reflectToAttribute: true},
-
       isCardStart: {type: Boolean, reflectToAttribute: true},
 
       isCardEnd: {type: Boolean, reflectToAttribute: true},
diff --git a/chrome/browser/resources/md_history/history_list.html b/chrome/browser/resources/md_history/history_list.html
index fe68b546..7947550f 100644
--- a/chrome/browser/resources/md_history/history_list.html
+++ b/chrome/browser/resources/md_history/history_list.html
@@ -10,8 +10,10 @@
   <template>
     <style include="shared-style">
       :host {
+        box-sizing: border-box;
         display: block;
         overflow: auto;
+        padding-top: var(--first-card-padding-top);
       }
 
       history-item {
@@ -27,7 +29,6 @@
       <template>
         <history-item item="[[item]]"
             selected="{{item.selected}}"
-            is-first-item="[[isFirstItem_(index)]]"
             is-card-start="[[isCardStart_(item, index, historyData_.length)]]"
             is-card-end="[[isCardEnd_(item, index, historyData_.length)]]"
             has-time-gap="[[needsTimeGap_(item, index, historyData_.length)]]"
diff --git a/chrome/browser/resources/md_history/history_list.js b/chrome/browser/resources/md_history/history_list.js
index 1ab8a7a..0711bf2d 100644
--- a/chrome/browser/resources/md_history/history_list.js
+++ b/chrome/browser/resources/md_history/history_list.js
@@ -153,15 +153,6 @@
   },
 
   /**
-   * @param {number} index
-   * @return {boolean}
-   * @private
-   */
-  isFirstItem_: function(index) {
-    return index == 0;
-  },
-
-  /**
    * @private
    */
   notifyListScroll_: function() {