Roll chromium_revision 20579735a6..e1ef7d4b6b (568689:568794)

Change log: https://chromium.googlesource.com/chromium/src/+log/20579735a6..e1ef7d4b6b
Full diff: https://chromium.googlesource.com/chromium/src/+/20579735a6..e1ef7d4b6b

Roll chromium third_party edc5c03dcd..ab9fbe29c9
Change log: https://chromium.googlesource.com/chromium/src/third_party/+log/edc5c03dcd..ab9fbe29c9

Changed dependencies:
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/d9f706c881..03e1bc561f
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/1115acd5aa..48697bf3a1
* src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/555ababf34..6440c4ea3a
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/16de1fe001..66f1089d0c
DEPS diff: https://chromium.googlesource.com/chromium/src/+/20579735a6..e1ef7d4b6b/DEPS

No update to Clang.

TBR=buildbot@webrtc.org,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal
NO_AUTOIMPORT_DEPS_CHECK=true

Change-Id: I51865c56c2126cdb24f66e70441101c1954ab01d
Reviewed-on: https://webrtc-review.googlesource.com/84342
Reviewed-by: WebRTC Buildbot <buildbot@webrtc.org>
Commit-Queue: WebRTC Buildbot <buildbot@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23680}
diff --git a/DEPS b/DEPS
index e27f5ed..4ead679 100644
--- a/DEPS
+++ b/DEPS
@@ -10,7 +10,7 @@
   'checkout_configuration': 'default',
   'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration == "default"',
   'webrtc_git': 'https://webrtc.googlesource.com',
-  'chromium_revision': '20579735a6a48710514d69d50ed0d2516b97f3ae',
+  'chromium_revision': 'e1ef7d4b6ba51e51817556f44f71b95d0c64f106',
   'boringssl_git': 'https://boringssl.googlesource.com',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling swarming_client
@@ -43,13 +43,13 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling Chromium third_party
   # and whatever else without interference from each other.
-  'chromium_third_party_revision': 'edc5c03dcdccbc132e4afcff18d8fa54bfb6c47d',
+  'chromium_third_party_revision': 'ab9fbe29c97f030a4787abf517e4902895c757f1',
 }
 deps = {
   # TODO(kjellander): Move this to be Android-only once the libevent dependency
   # in base/third_party/libevent is solved.
   'src/base':
-    Var('chromium_git') + '/chromium/src/base' + '@' + 'd9f706c881e376e32feb308b0f9f8ec74051b812',
+    Var('chromium_git') + '/chromium/src/base' + '@' + '03e1bc561f08357987d0a3b1a6306b378cd61c04',
   'src/build':
     Var('chromium_git') + '/chromium/src/build' + '@' + 'bb306be4076914cdd287517d8480851a410d7788',
   'src/buildtools':
@@ -61,11 +61,11 @@
     'condition': 'checkout_android',
   },
   'src/ios': {
-    'url': Var('chromium_git') + '/chromium/src/ios' + '@' + '1115acd5aa104c91d01bb2b728b3b397101fa793',
+    'url': Var('chromium_git') + '/chromium/src/ios' + '@' + '48697bf3a10f61dbd71c30722640efbbec82d3e2',
     'condition': 'checkout_ios',
   },
   'src/testing':
-    Var('chromium_git') + '/chromium/src/testing' + '@' + '555ababf34480bc4e23ac5363f61e0d578b45257',
+    Var('chromium_git') + '/chromium/src/testing' + '@' + '6440c4ea3ae95d9142ae72fdd55c6406ad0df00b',
   # This entry is used for chromium third_party rolling into webrtc third_party only.
   'src/third_party_chromium': {
       'url': Var('chromium_git') + '/chromium/src/third_party' + '@' + Var('chromium_third_party_revision'),
@@ -185,7 +185,7 @@
   'src/third_party/yasm/source/patched-yasm':
     Var('chromium_git') + '/chromium/deps/yasm/patched-yasm.git' + '@' + 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
   'src/tools':
-    Var('chromium_git') + '/chromium/src/tools' + '@' + '16de1fe001deeefb10875f26351b969c3d71400f',
+    Var('chromium_git') + '/chromium/src/tools' + '@' + '66f1089d0cd8b57081b77d828ee6f6c46a64a0c0',
   'src/tools/swarming_client':
     Var('chromium_git') + '/infra/luci/client-py.git' + '@' +  Var('swarming_revision'),
 
diff --git a/third_party/closure_compiler/compiled_resources2.gyp b/third_party/closure_compiler/compiled_resources2.gyp
index 7eddef4..1ab2cdf 100644
--- a/third_party/closure_compiler/compiled_resources2.gyp
+++ b/third_party/closure_compiler/compiled_resources2.gyp
@@ -14,10 +14,6 @@
       'target_name': 'compiled_resources2',
       'type': 'none',
       'dependencies': [
-        '<(DEPTH)/ui/webui/resources/cr_components/compiled_resources2.gyp:*',
-        '<(DEPTH)/ui/webui/resources/cr_elements/compiled_resources2.gyp:*',
-        '<(DEPTH)/ui/webui/resources/js/compiled_resources2.gyp:*',
-        '<(DEPTH)/ui/webui/resources/js/cr/ui/compiled_resources2.gyp:*',
       ],
     },
   ]
diff --git a/third_party/closure_compiler/externs/accessibility_private.js b/third_party/closure_compiler/externs/accessibility_private.js
index 7cb7cf0..903fdf8 100644
--- a/third_party/closure_compiler/externs/accessibility_private.js
+++ b/third_party/closure_compiler/externs/accessibility_private.js
@@ -21,7 +21,6 @@
  * @typedef {{
  *   message: string
  * }}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-AlertInfo
  */
 chrome.accessibilityPrivate.AlertInfo;
 
@@ -33,13 +32,11 @@
  *   width: number,
  *   height: number
  * }}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-ScreenRect
  */
 chrome.accessibilityPrivate.ScreenRect;
 
 /**
  * @enum {string}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-Gesture
  */
 chrome.accessibilityPrivate.Gesture = {
   CLICK: 'click',
@@ -63,7 +60,6 @@
 
 /**
  * @enum {string}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-SyntheticKeyboardEventType
  */
 chrome.accessibilityPrivate.SyntheticKeyboardEventType = {
   KEYUP: 'keyup',
@@ -77,7 +73,6 @@
  *   search: (boolean|undefined),
  *   shift: (boolean|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-SyntheticKeyboardModifiers
  */
 chrome.accessibilityPrivate.SyntheticKeyboardModifiers;
 
@@ -87,13 +82,11 @@
  *   keyCode: number,
  *   modifiers: (!chrome.accessibilityPrivate.SyntheticKeyboardModifiers|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-SyntheticKeyboardEvent
  */
 chrome.accessibilityPrivate.SyntheticKeyboardEvent;
 
 /**
  * @enum {string}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-KeyboardMode
  */
 chrome.accessibilityPrivate.KeyboardMode = {
   FULL_WIDTH: 'FULL_WIDTH',
@@ -102,7 +95,6 @@
 
 /**
  * @enum {string}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#type-SelectToSpeakState
  */
 chrome.accessibilityPrivate.SelectToSpeakState = {
   SELECTING: 'selecting',
@@ -115,7 +107,6 @@
  * the calling extension to provide accessibility for web contents.
  * @param {boolean} enabled True if native accessibility support should be
  *     enabled.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-setNativeAccessibilityEnabled
  */
 chrome.accessibilityPrivate.setNativeAccessibilityEnabled = function(enabled) {};
 
@@ -125,7 +116,6 @@
  *     rectangles to draw the accessibility focus ring around.
  * @param {string=} color CSS-style hex color string beginning with # like
  *     #FF9982 or #EEE.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-setFocusRing
  */
 chrome.accessibilityPrivate.setFocusRing = function(rects, color) {};
 
@@ -135,7 +125,6 @@
  *     rectangles to draw the highlight around.
  * @param {string} color CSS-style hex color string beginning with # like
  *     #FF9982 or #EEE.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-setHighlights
  */
 chrome.accessibilityPrivate.setHighlights = function(rects, color) {};
 
@@ -149,14 +138,12 @@
  * @param {boolean} capture True if key events should be swallowed natively and
  *     not propagated if preventDefault() gets called by the extension's
  *     background page.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-setKeyboardListener
  */
 chrome.accessibilityPrivate.setKeyboardListener = function(enabled, capture) {};
 
 /**
  * Darkens or undarkens the screen.
  * @param {boolean} enabled True to darken screen; false to undarken screen.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-darkenScreen
  */
 chrome.accessibilityPrivate.darkenScreen = function(enabled) {};
 
@@ -164,14 +151,12 @@
  * Change the keyboard keys captured by Switch Access.
  * @param {!Array<number>} key_codes The key codes for the keys that will be
  *     captured.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-setSwitchAccessKeys
  */
 chrome.accessibilityPrivate.setSwitchAccessKeys = function(key_codes) {};
 
 /**
  * Sets current ARC app to use native ARC support.
  * @param {boolean} enabled True for ChromeVox (native), false for TalkBack.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-setNativeChromeVoxArcSupportForCurrentApp
  */
 chrome.accessibilityPrivate.setNativeChromeVoxArcSupportForCurrentApp = function(enabled) {};
 
@@ -179,14 +164,12 @@
  * Sends a fabricated key event.
  * @param {!chrome.accessibilityPrivate.SyntheticKeyboardEvent} keyEvent The
  *     event to send.
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-sendSyntheticKeyEvent
  */
 chrome.accessibilityPrivate.sendSyntheticKeyEvent = function(keyEvent) {};
 
 /**
  * Fired whenever ChromeVox should output introduction.
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#event-onIntroduceChromeVox
  */
 chrome.accessibilityPrivate.onIntroduceChromeVox;
 
@@ -194,7 +177,6 @@
  * Fired when an accessibility gesture is detected by the touch exploration
  * controller.
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#event-onAccessibilityGesture
  */
 chrome.accessibilityPrivate.onAccessibilityGesture;
 
@@ -202,7 +184,6 @@
  * Fired when we first detect two fingers are held down, which can be used to
  * toggle spoken feedback on some touch-only devices.
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#event-onTwoFingerTouchStart
  */
 chrome.accessibilityPrivate.onTwoFingerTouchStart;
 
@@ -210,7 +191,6 @@
  * Fired when  the user is no longer holding down two fingers (including
  * releasing one, holding down three, or moving them).
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#event-onTwoFingerTouchStop
  */
 chrome.accessibilityPrivate.onTwoFingerTouchStop;
 
@@ -219,7 +199,6 @@
  * between selecting with the mouse, speaking, and inactive.
  * @param {!chrome.accessibilityPrivate.SelectToSpeakState} state The current
  *    state of the Select-to-Speak extension
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#method-onSelectToSpeakStateChanged
  */
 chrome.accessibilityPrivate.onSelectToSpeakStateChanged = function(state) {};
 
@@ -227,6 +206,5 @@
  * Called when Chrome OS wants to toggle the Select-to-Speak state, between selecting
  * with the mouse, speaking, and inactive
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/accessibilityPrivate#event-onSelectToSpeakStateChangeRequested
  */
 chrome.accessibilityPrivate.onSelectToSpeakStateChangeRequested;
diff --git a/third_party/closure_compiler/externs/autofill_private.js b/third_party/closure_compiler/externs/autofill_private.js
index e069ae9..40baff7 100644
--- a/third_party/closure_compiler/externs/autofill_private.js
+++ b/third_party/closure_compiler/externs/autofill_private.js
@@ -1,4 +1,4 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
+// Copyright 2018 The Chromium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
@@ -18,7 +18,6 @@
 
 /**
  * @enum {string}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressField
  */
 chrome.autofillPrivate.AddressField = {
   FULL_NAME: 'FULL_NAME',
@@ -39,7 +38,6 @@
  *   isLocal: (boolean|undefined),
  *   isCached: (boolean|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-AutofillMetadata
  */
 chrome.autofillPrivate.AutofillMetadata;
 
@@ -60,7 +58,6 @@
  *   languageCode: (string|undefined),
  *   metadata: (!chrome.autofillPrivate.AutofillMetadata|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressEntry
  */
 chrome.autofillPrivate.AddressEntry;
 
@@ -69,7 +66,6 @@
  *   name: (string|undefined),
  *   countryCode: (string|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-CountryEntry
  */
 chrome.autofillPrivate.CountryEntry;
 
@@ -80,7 +76,6 @@
  *   isLongField: boolean,
  *   placeholder: (string|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressComponent
  */
 chrome.autofillPrivate.AddressComponent;
 
@@ -88,7 +83,6 @@
  * @typedef {{
  *   row: !Array<!chrome.autofillPrivate.AddressComponent>
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressComponentRow
  */
 chrome.autofillPrivate.AddressComponentRow;
 
@@ -97,7 +91,6 @@
  *   components: !Array<!chrome.autofillPrivate.AddressComponentRow>,
  *   languageCode: string
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressComponents
  */
 chrome.autofillPrivate.AddressComponents;
 
@@ -110,7 +103,6 @@
  *   expirationYear: (string|undefined),
  *   metadata: (!chrome.autofillPrivate.AutofillMetadata|undefined)
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-CreditCardEntry
  */
 chrome.autofillPrivate.CreditCardEntry;
 
@@ -120,7 +112,6 @@
  *   indexOfNewNumber: number,
  *   countryCode: string
  * }}
- * @see https://developer.chrome.com/extensions/autofillPrivate#type-ValidatePhoneParams
  */
 chrome.autofillPrivate.ValidatePhoneParams;
 
@@ -129,7 +120,6 @@
  * be assigned a new one and added as a new entry.
  * @param {!chrome.autofillPrivate.AddressEntry} address The address entry to
  *     save.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-saveAddress
  */
 chrome.autofillPrivate.saveAddress = function(address) {};
 
@@ -137,7 +127,6 @@
  * Gets the list of all countries.
  * @param {function(!Array<!chrome.autofillPrivate.CountryEntry>):void} callback
  *     Callback which will be called with the countries.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-getCountryList
  */
 chrome.autofillPrivate.getCountryList = function(callback) {};
 
@@ -148,7 +137,6 @@
  *     for a     list of valid codes.
  * @param {function(!chrome.autofillPrivate.AddressComponents):void} callback
  *     Callback which will be called with components.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-getAddressComponents
  */
 chrome.autofillPrivate.getAddressComponents = function(countryCode, callback) {};
 
@@ -156,7 +144,6 @@
  * Gets the list of addresses.
  * @param {function(!Array<!chrome.autofillPrivate.AddressEntry>):void} callback
  *     Callback which will be called with the list of addresses.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-getAddressList
  */
 chrome.autofillPrivate.getAddressList = function(callback) {};
 
@@ -164,14 +151,12 @@
  * Saves the given credit card. If |card| has an empty string as its ID, it will
  * be assigned a new one and added as a new entry.
  * @param {!chrome.autofillPrivate.CreditCardEntry} card The card entry to save.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-saveCreditCard
  */
 chrome.autofillPrivate.saveCreditCard = function(card) {};
 
 /**
  * Removes the entry (address or credit card) with the given ID.
  * @param {string} guid ID of the entry to remove.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-removeEntry
  */
 chrome.autofillPrivate.removeEntry = function(guid) {};
 
@@ -183,7 +168,6 @@
  *     this function.
  * @param {function(!Array<string>):void} callback Callback which will be called
  *     with validated phone numbers.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-validatePhoneNumbers
  */
 chrome.autofillPrivate.validatePhoneNumbers = function(params, callback) {};
 
@@ -191,7 +175,6 @@
  * Gets the list of credit cards.
  * @param {function(!Array<!chrome.autofillPrivate.CreditCardEntry>):void}
  *     callback Callback which will be called with the list of credit cards.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-getCreditCardList
  */
 chrome.autofillPrivate.getCreditCardList = function(callback) {};
 
@@ -199,7 +182,6 @@
  * Clears the data associated with a wallet card which was saved locally so that
  * the saved copy is masked (e.g., "Card ending in 1234").
  * @param {string} guid GUID of the credit card to mask.
- * @see https://developer.chrome.com/extensions/autofillPrivate#method-maskCreditCard
  */
 chrome.autofillPrivate.maskCreditCard = function(guid) {};
 
@@ -207,7 +189,6 @@
  * Fired when the address list has changed, meaning that an entry has been
  * added, removed, or changed. |entries| The updated list of entries.
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/autofillPrivate#event-onAddressListChanged
  */
 chrome.autofillPrivate.onAddressListChanged;
 
@@ -215,6 +196,5 @@
  * Fired when the credit card list has changed, meaning that an entry has been
  * added, removed, or changed. |entries| The updated list of entries.
  * @type {!ChromeEvent}
- * @see https://developer.chrome.com/extensions/autofillPrivate#event-onCreditCardListChanged
  */
 chrome.autofillPrivate.onCreditCardListChanged;
diff --git a/third_party/closure_compiler/externs/file_manager_private.js b/third_party/closure_compiler/externs/file_manager_private.js
index fb3103e..bb81dcd 100644
--- a/third_party/closure_compiler/externs/file_manager_private.js
+++ b/third_party/closure_compiler/externs/file_manager_private.js
@@ -898,7 +898,7 @@
  * Requests fetching list of actions for the specified set of entries. If not
  * possible, then returns an error via chrome.runtime.lastError.
  * @param {!Array<!Entry>} entries
- * @param {function((!Array<!EntryAction>|undefined))} callback
+ * @param {function((!Array<!chrome.fileSystemProvider.Action>|undefined))} callback
  */
 chrome.fileManagerPrivate.getCustomActions = function(entries, callback) {};
 
@@ -967,17 +967,3 @@
 
 /** @type {!ChromeEvent} */
 chrome.fileManagerPrivate.onAppsUpdated;
-
-/* The declaration below (EntryAction) doesn't have any corresponding entry in
- * the file_manager_private.idl file.
- *
- * TODO(nigeltao): delete it.
- */
-
-/**
- * @typedef {{
- *   id: string,
- *   title: (string|undefined)
- * }}
- */
-var EntryAction;