Roll Chromium + Fix Android lint suppressions

* Roll chromium_revision 5bd5874cbf..840e0f7269 (519731:520123)
* Suppress NewApi lint warnings from Chromium.
* Suppress NewApi lint warnings for WebRTCAudio{Track,Utils}.java
* Suppress deprecation warnings for
  FLAG_SHOW_WHEN_LOCKED and FLAG_TURN_SCREEN_ON in LayoutParams
  in examples/androidapp/src/org/appspot/apprtc/CallActivity.java

Change log: https://chromium.googlesource.com/chromium/src/+log/5bd5874cbf..840e0f7269
Full diff: https://chromium.googlesource.com/chromium/src/+/5bd5874cbf..840e0f7269

Changed dependencies:
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/fc034c4143..5dfdb70192
* src/build: https://chromium.googlesource.com/chromium/src/build/+log/f0766940d5..b1a63aeccd
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/49bd74cee7..597d6a0451
* src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/373652d16f..119295dad5
* src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/34c5bb433a..38215cc4ef
* src/third_party/android_tools: https://chromium.googlesource.com/android_tools.git/+log/9914c57047..a2e9bc7c1b
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/230a61040f..b0b1ce2c6e
* src/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/1b30125fbc..9e51906ffb
* src/third_party/ffmpeg: https://chromium.googlesource.com/chromium/third_party/ffmpeg.git/+log/9cb03e5705..18c815f814
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/8d915c324e..d5795c8019
DEPS diff: https://chromium.googlesource.com/chromium/src/+/5bd5874cbf..840e0f7269/DEPS

No update to Clang.

Bug: webrtc:8580
Change-Id: I6b78fd2d10c1f790a7606c19982f00c6a3dde968
Reviewed-on: https://webrtc-review.googlesource.com/26640
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Henrik Grunell <henrikg@webrtc.org>
Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20958}
diff --git a/DEPS b/DEPS
index bcaae7e..2543ed0 100644
--- a/DEPS
+++ b/DEPS
@@ -7,7 +7,7 @@
   'checkout_configuration': 'default',
   'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration == "default"',
   'webrtc_git': 'https://webrtc.googlesource.com',
-  'chromium_revision': '5bd5874cbfedb8f8ede66d1cc14d6fd8cac9d29e',
+  'chromium_revision': '840e0f72691f6dd93fb5a1ac68ad39094ce7df3a',
   'boringssl_git': 'https://boringssl.googlesource.com',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling swarming_client
@@ -28,7 +28,7 @@
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling catapult
   # and whatever else without interference from each other.
-  'catapult_revision': '230a61040fc82beb17c9ea7fee9a462bc0311b85',
+  'catapult_revision': 'b0b1ce2c6e9001363a35c0ec943dc873d0b24d4a',
   # Three lines of non-changing comments so that
   # the commit queue can handle CLs rolling libFuzzer
   # and whatever else without interference from each other.
@@ -38,9 +38,9 @@
   # 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' + '@' + 'fc034c4143e4e7c49cc573d325692400da6c7fba',
+    Var('chromium_git') + '/chromium/src/base' + '@' + '5dfdb70192b1894ad11280b7903132e41c240f1a',
   'src/build':
-    Var('chromium_git') + '/chromium/src/build' + '@' + 'f0766940d597acdbfdd7047abc07d1a0af5e60f0',
+    Var('chromium_git') + '/chromium/src/build' + '@' + 'b1a63aeccdb8df053bbc28b7648f95d9e2bf0898',
   'src/buildtools':
     Var('chromium_git') + '/chromium/buildtools.git' + '@' + '505de88083136eefd056e5ee4ca0f01fe9b33de8',
   # Gradle 4.3-rc4. Used for testing Android Studio project generation for WebRTC.
@@ -50,15 +50,15 @@
     'condition': 'checkout_android',
   },
   'src/ios': {
-    'url': Var('chromium_git') + '/chromium/src/ios' + '@' + '49bd74cee788d191b4631f2761d94392f0fb6063',
+    'url': Var('chromium_git') + '/chromium/src/ios' + '@' + '597d6a0451433151d51b42a56210f4eb129a1967',
     'condition': 'checkout_ios',
   },
   'src/testing':
-    Var('chromium_git') + '/chromium/src/testing' + '@' + '373652d16f7af62331f187efcaecc16512f5ce86',
+    Var('chromium_git') + '/chromium/src/testing' + '@' + '119295dad5963e7ebb1cc2df6338ac919aea599f',
   'src/third_party':
-    Var('chromium_git') + '/chromium/src/third_party' + '@' + '34c5bb433a7501b0585e23dc1f3113ff82f3626b',
+    Var('chromium_git') + '/chromium/src/third_party' + '@' + '38215cc4ef02e57c117a236ce36a65389a102e73',
   'src/third_party/android_tools': {
-    'url': Var('chromium_git') + '/android_tools.git' + '@' + '9914c5704717424998c69e837be3631914d787cc',
+    'url': Var('chromium_git') + '/android_tools.git' + '@' + 'a2e9bc7c1b41d983577907df51d339fb1e0fd02f',
     'condition': 'checkout_android',
   },
   'src/third_party/auto/src': {
@@ -76,13 +76,13 @@
   'src/third_party/colorama/src':
     Var('chromium_git') + '/external/colorama.git' + '@' + '799604a1041e9b3bc5d2789ecbd7e8db2e18e6b8',
   'src/third_party/depot_tools':
-    Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '1b30125fbc42e1a3c2c89c26eee813384f42d22c',
+    Var('chromium_git') + '/chromium/tools/depot_tools.git' + '@' + '9e51906ffb13222de7215293dac7a8031d538c0e',
   'src/third_party/errorprone/lib': {
       'url': Var('chromium_git') + '/chromium/third_party/errorprone.git' + '@' + '635c410fc42614b48518ae6818105bc83af88497',
       'condition': 'checkout_android',
   },
   'src/third_party/ffmpeg':
-    Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '9cb03e5705c1bcff7cdaace0e8f55d79374e24b6',
+    Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '18c815f81428e3b41e6f4efc6cb0cbe5b846d1c2',
   'src/third_party/findbugs': {
     'url': Var('chromium_git') + '/chromium/deps/findbugs.git' + '@' + '4275d9ac8610db6b1bc9a5e887f97e41b33fac67',
     'condition': 'checkout_android',
@@ -155,7 +155,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' + '@' + '8d915c324e2be542e06aebbf29acbc378e394779',
+    Var('chromium_git') + '/chromium/src/tools' + '@' + 'd5795c80199b12ccb943d6260c09b4fdbdb44c45',
   'src/tools/gyp':
     Var('chromium_git') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
   'src/tools/swarming_client':
diff --git a/examples/androidapp/src/org/appspot/apprtc/CallActivity.java b/examples/androidapp/src/org/appspot/apprtc/CallActivity.java
index dabff97..bd20824 100644
--- a/examples/androidapp/src/org/appspot/apprtc/CallActivity.java
+++ b/examples/androidapp/src/org/appspot/apprtc/CallActivity.java
@@ -196,6 +196,9 @@
   private CpuMonitor cpuMonitor;
 
   @Override
+  // TODO(bugs.webrtc.org/8580): LayoutParams.FLAG_TURN_SCREEN_ON and
+  // LayoutParams.FLAG_SHOW_WHEN_LOCKED are deprecated.
+  @SuppressWarnings("deprecation")
   public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     Thread.setDefaultUncaughtExceptionHandler(new UnhandledExceptionHandler(this));
diff --git a/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioTrack.java b/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioTrack.java
index 1d2f4af..3c8c9eb 100644
--- a/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioTrack.java
+++ b/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioTrack.java
@@ -10,6 +10,7 @@
 
 package org.webrtc.voiceengine;
 
+import android.annotation.SuppressLint;
 import android.annotation.TargetApi;
 import android.content.Context;
 import android.media.AudioAttributes;
@@ -368,6 +369,9 @@
     return true;
   }
 
+  // TODO(bugs.webrtc.org/8580): Call requires API level 21 (current min is 16):
+  // `android.media.AudioManager#isVolumeFixed`: NewApi [warning]
+  @SuppressLint("NewApi")
   private boolean isVolumeFixed() {
     if (!WebRtcAudioUtils.runningOnLollipopOrHigher())
       return false;
diff --git a/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioUtils.java b/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioUtils.java
index da3e1f0..f31e497 100644
--- a/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioUtils.java
+++ b/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioUtils.java
@@ -15,6 +15,7 @@
 import static android.media.AudioManager.MODE_NORMAL;
 import static android.media.AudioManager.MODE_RINGTONE;
 
+import android.annotation.SuppressLint;
 import android.annotation.TargetApi;
 import android.content.Context;
 import android.content.pm.PackageManager;
@@ -244,6 +245,9 @@
             + "BT SCO: " + audioManager.isBluetoothScoOn());
   }
 
+  // TODO(bugs.webrtc.org/8580): Call requires API level 21 (current min is 16):
+  // `android.media.AudioManager#isVolumeFixed`: NewApi [warning]
+  @SuppressLint("NewApi")
   // Adds volume information for all possible stream types.
   private static void logAudioStateVolume(String tag, AudioManager audioManager) {
     final int[] streams = {
diff --git a/tools_webrtc/android/suppressions.xml b/tools_webrtc/android/suppressions.xml
index ff304e6..e20871d 100644
--- a/tools_webrtc/android/suppressions.xml
+++ b/tools_webrtc/android/suppressions.xml
@@ -33,4 +33,16 @@
   <issue id="all">
     <ignore path="**/org/chromium/**/*.java" />
   </issue>
+
+  <issue id="NewApi">
+    <!-- This is rewritten by desugar after lint runs. -->
+    <ignore regexp="Call requires API level 19.*`java.util.Objects#requireNonNull`"/>
+    <!-- AutoCloseable has been available since API 15, just hidden. -->
+    <ignore regexp="Class requires API level 19.*java.lang.AutoCloseable"/>
+    <ignore regexp="Call requires API level 19.*java.lang.AutoCloseable#close"/>
+    <!-- We support try-with-resources via desugar. -->
+    <ignore regexp="Try-with-resources requires API level 19"/>
+    <ignore regexp="Call requires API level 19.*`java.lang.Throwable#addSuppressed`"/>
+  </issue>
+
 </lint>