Revert "gr-diff-builder: Changing single-directional context expansion to bi-directional ('+10' button)"

This reverts commit 22b5757ca55ebc57d97d92c43cb763101ae76ef4.

Reason for revert: We will wait for UX feedback to be sure.

Change-Id: I71d81bc46c47863b932ed22e98ee2392dc4cd54e
diff --git a/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js b/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js
index d1c58b2..d4b4e2b 100644
--- a/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js
+++ b/polygerrit-ui/app/elements/diff/gr-diff-processor/gr-diff-processor.js
@@ -66,6 +66,7 @@
     ADDED: 'edit_b',
     REMOVED: 'edit_a',
   };
+
   /**
    * The maximum size for an addition or removal chunk before it is broken down
    * into a series of chunks that are this size at most.
@@ -268,8 +269,7 @@
             right: this._linesRight(chunk).length,
           },
           groups: [this._chunkToGroup(
-              chunk, state.lineNums.left + 1, state.lineNums.right + 1,
-              /* firstInFile */ false, /* lastInFile */ false)],
+              chunk, state.lineNums.left + 1, state.lineNums.right + 1)],
           newChunkIndex: state.chunkIndex + 1,
         };
       }
@@ -321,13 +321,10 @@
       const lineCount = collapsibleChunks.reduce(
           (sum, chunk) => sum + this._commonChunkLength(chunk), 0);
 
-      const firstChunk = state.chunkIndex === 0;
-      const lastChunk = state.chunkIndex === chunks.length - 1;
       let groups = this._chunksToGroups(
           collapsibleChunks,
           state.lineNums.left + 1,
-          state.lineNums.right + 1,
-          firstChunk, lastChunk);
+          state.lineNums.right + 1);
 
       if (this.context !== WHOLE_FILE) {
         const hiddenStart = state.chunkIndex === 0 ? 0 : this.context;
@@ -360,17 +357,11 @@
      * @param {!Array<!Object>} chunks
      * @param {number} offsetLeft
      * @param {number} offsetRight
-     * @param {boolean} firstProcessed
-     * @param {boolean} lastProcessed
      * @return {!Array<!Object>} (GrDiffGroup)
      */
-    _chunksToGroups(chunks, offsetLeft, offsetRight, firstProcessed,
-        lastProcessed) {
-      return chunks.map((chunk, index) => {
-        const firstInFile = firstProcessed && index === 0;
-        const lastInFile = lastProcessed && index === chunks.length - 1;
-        const group = this._chunkToGroup(chunk, offsetLeft,
-            offsetRight, firstInFile, lastInFile);
+    _chunksToGroups(chunks, offsetLeft, offsetRight) {
+      return chunks.map(chunk => {
+        const group = this._chunkToGroup(chunk, offsetLeft, offsetRight);
         const chunkLength = this._commonChunkLength(chunk);
         offsetLeft += chunkLength;
         offsetRight += chunkLength;
@@ -384,10 +375,9 @@
      * @param {number} offsetRight
      * @return {!Object} (GrDiffGroup)
      */
-    _chunkToGroup(chunk, offsetLeft, offsetRight, firstInFile, lastInFile) {
+    _chunkToGroup(chunk, offsetLeft, offsetRight) {
       const type = chunk.ab ? GrDiffGroup.Type.BOTH : GrDiffGroup.Type.DELTA;
-      const lines = this._linesFromChunk(chunk, offsetLeft, offsetRight,
-          firstInFile, lastInFile);
+      const lines = this._linesFromChunk(chunk, offsetLeft, offsetRight);
       const group = new GrDiffGroup(type, lines);
       group.keyLocation = chunk.keyLocation;
       group.dueToRebase = chunk.due_to_rebase;
@@ -395,30 +385,25 @@
       return group;
     },
 
-    _linesFromChunk(chunk, offsetLeft, offsetRight, firstInFile, lastInFile) {
-      let lines = [];
+    _linesFromChunk(chunk, offsetLeft, offsetRight) {
       if (chunk.ab) {
-        lines = chunk.ab.map((row, i) => this._lineFromRow(
+        return chunk.ab.map((row, i) => this._lineFromRow(
             GrDiffLine.Type.BOTH, offsetLeft, offsetRight, row, i));
-      } else {
-        if (chunk.a) {
-          // Avoiding a.push(...b) because that causes callstack overflows for
-          // large b, which can occur when large files are added removed.
-          lines = lines.concat(this._linesFromRows(
-              GrDiffLine.Type.REMOVE, chunk.a, offsetLeft,
-              chunk[DiffHighlights.REMOVED]));
-        }
-        if (chunk.b) {
-          // Avoiding a.push(...b) because that causes callstack overflows for
-          // large b, which can occur when large files are added removed.
-          lines = lines.concat(this._linesFromRows(
-              GrDiffLine.Type.ADD, chunk.b, offsetRight,
-              chunk[DiffHighlights.ADDED]));
-        }
       }
-      if (lines.length > 0) {
-        lines[0].firstInFile = firstInFile;
-        lines[lines.length - 1].lastInFile = lastInFile;
+      let lines = [];
+      if (chunk.a) {
+        // Avoiding a.push(...b) because that causes callstack overflows for
+        // large b, which can occur when large files are added removed.
+        lines = lines.concat(this._linesFromRows(
+            GrDiffLine.Type.REMOVE, chunk.a, offsetLeft,
+            chunk[DiffHighlights.REMOVED]));
+      }
+      if (chunk.b) {
+        // Avoiding a.push(...b) because that causes callstack overflows for
+        // large b, which can occur when large files are added removed.
+        lines = lines.concat(this._linesFromRows(
+            GrDiffLine.Type.ADD, chunk.b, offsetRight,
+            chunk[DiffHighlights.ADDED]));
       }
       return lines;
     },