Roll engine to 0c09bf03d. (#16668)

This roll includes the following engine commits:

* flutter/engine@0c09bf03: In the service protocol, if no view is specified to flush tasks on, pick the first one. (#5028)
* flutter/engine@ecaefd7a: Roll src/third_party/skia/ 276886160..1cd6098d5 (50 commits) (#5026)
* flutter/engine@e6545573: Enable 'Speak Screen' and 'Switch Control' for iOS (#5016)
* flutter/engine@3393c179: Fix Android platform channels (#5025)
* flutter/engine@1bc0e1bb: On windows, refer to Dart snapshot directly executable. (#5024)
* flutter/engine@cf6ca32d: Revert "Roll Dart to fe606f890b0a311da802c78b0af414a3c2087a79" (#5023)
* flutter/engine@4b45a53e: Only make ERROR and FATAL log levels visible by default. (#5022)
* flutter/engine@98f6c2d5: Fix shell launcher test (dart2 compliant and stop polling) (#5009)
* flutter/engine@75851f08: Roll Dart to fe606f890b0a311da802c78b0af414a3c2087a79 (#5020)
* flutter/engine@9495a52d: On iOS, try to use ES3, then fall back to ES2. (#5006)
* flutter/engine@d6d4eec2: Fix broken Linux build (#5019)
* flutter/engine@d15dc76e: Fix broken Chromebot build (#5018)
* flutter/engine@c17a6290: Breadcrumbs to the wiki (#5017)
* flutter/engine@4eaf2c2f: Return raw (unencoded) bytes in Image.toByteData() (#5008)
* flutter/engine@d812a617: Roll src/third_party/skia/ e669bdfad..276886160 (9 commits) (#5014)
* flutter/engine@62aeab72: Call SkSurface::flush instead of getting a backend handle in vulkan_swapchain. (#5012)
* flutter/engine@f4ebb180: Roll src/third_party/skia/ 3462eb034..e669bdfad (54 commits) (#5007)
* flutter/engine@0b7d6be9: Re-land "do not pause rendering when android view loses focus" (#5004)
* flutter/engine@91dee598: If the rasterizer has a valid surface context, use that to create a snapshotting render target. (#4979)
* flutter/engine@570231b7: Specify the packages file path when running engine dart tests. (#5005)
* flutter/engine@0b9cef5a: Minor update to README (#5003)
* flutter/engine@c386418f: Promote line height in text style created from paragraph style (#4995)
* flutter/engine@4e0fbb6f: If the test specifies a .dill file, dont make the engine interpret is as source. (#5002)
* flutter/engine@58e84c8b: Re-land "Support multiple shells in a single process. (#4932)" (#4998)
* flutter/engine@37e5df05: Remove only use of SkPaint::kGenA8FromLCD (#4994)
* flutter/engine@b7358b33: libtxt: cache font families that are remapped to the default font family (#4990)
* flutter/engine@a530035b: libtxt: fix leaks in Skia object reference counting (#4988)
* flutter/engine@0c74fc93: [fuchsia] Fix use-after-free (#4987)
* flutter/engine@b6d2dde9: [fuchsia] Fix build (#4986)
* flutter/engine@1dd12649: [async] Adapt to libasync API changes. (#4980)
diff --git a/bin/internal/engine.version b/bin/internal/engine.version
index ecee599..136bcaa 100644
--- a/bin/internal/engine.version
+++ b/bin/internal/engine.version
@@ -1 +1 @@
-76cb311d9c33720dcd19274228b39ecdbad8d9af
+0c09bf03d1dcde1a6c8cfaa2102949abac7757cd
diff --git a/packages/flutter/test/painting/decoration_test.dart b/packages/flutter/test/painting/decoration_test.dart
index 0b67c90..31e79ff 100644
--- a/packages/flutter/test/painting/decoration_test.dart
+++ b/packages/flutter/test/painting/decoration_test.dart
@@ -4,7 +4,7 @@
 
 import 'dart:async';
 import 'dart:typed_data';
-import 'dart:ui' as ui show EncodingFormat, Image, ColorFilter;
+import 'dart:ui' as ui show Image, ColorFilter;
 
 import 'package:flutter/foundation.dart';
 import 'package:flutter/painting.dart';
@@ -90,7 +90,7 @@
   void dispose() { }
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 }
diff --git a/packages/flutter/test/painting/image_stream_test.dart b/packages/flutter/test/painting/image_stream_test.dart
index a6809a9..279e8a5 100644
--- a/packages/flutter/test/painting/image_stream_test.dart
+++ b/packages/flutter/test/painting/image_stream_test.dart
@@ -40,7 +40,7 @@
   void dispose() {}
 
   @override
-  Future<ByteData> toByteData({EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 }
diff --git a/packages/flutter/test/painting/paint_image_test.dart b/packages/flutter/test/painting/paint_image_test.dart
index 9d57152..972f195 100644
--- a/packages/flutter/test/painting/paint_image_test.dart
+++ b/packages/flutter/test/painting/paint_image_test.dart
@@ -23,7 +23,7 @@
   void dispose() { }
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 }
diff --git a/packages/flutter/test/painting/shape_decoration_test.dart b/packages/flutter/test/painting/shape_decoration_test.dart
index 510c566..068db56 100644
--- a/packages/flutter/test/painting/shape_decoration_test.dart
+++ b/packages/flutter/test/painting/shape_decoration_test.dart
@@ -125,7 +125,7 @@
   void dispose() { }
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 }
diff --git a/packages/flutter/test/rendering/image_test.dart b/packages/flutter/test/rendering/image_test.dart
index 402e83f..0d4f2e9 100644
--- a/packages/flutter/test/rendering/image_test.dart
+++ b/packages/flutter/test/rendering/image_test.dart
@@ -4,7 +4,7 @@
 
 import 'dart:async';
 import 'dart:typed_data';
-import 'dart:ui' as ui show EncodingFormat, Image;
+import 'dart:ui' as ui show Image;
 
 import 'package:flutter/rendering.dart';
 import 'package:flutter_test/flutter_test.dart';
@@ -19,7 +19,7 @@
   int get height => 10;
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 
@@ -38,7 +38,7 @@
   int get height => 10;
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 
@@ -57,7 +57,7 @@
   int get height => 20;
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 
diff --git a/packages/flutter/test/widgets/image_resolution_test.dart b/packages/flutter/test/widgets/image_resolution_test.dart
index 1903636..be4c35b 100644
--- a/packages/flutter/test/widgets/image_resolution_test.dart
+++ b/packages/flutter/test/widgets/image_resolution_test.dart
@@ -4,7 +4,7 @@
 
 import 'dart:async';
 import 'dart:typed_data';
-import 'dart:ui' as ui show EncodingFormat, Image;
+import 'dart:ui' as ui show Image;
 
 import 'package:flutter/foundation.dart';
 import 'package:flutter/rendering.dart';
@@ -26,7 +26,7 @@
   void dispose() { }
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 }
diff --git a/packages/flutter/test/widgets/image_rtl_test.dart b/packages/flutter/test/widgets/image_rtl_test.dart
index 492a326..553cf6f 100644
--- a/packages/flutter/test/widgets/image_rtl_test.dart
+++ b/packages/flutter/test/widgets/image_rtl_test.dart
@@ -4,7 +4,7 @@
 
 import 'dart:async';
 import 'dart:typed_data';
-import 'dart:ui' as ui show EncodingFormat, Image;
+import 'dart:ui' as ui show Image;
 
 import 'package:flutter/foundation.dart';
 import 'package:flutter/widgets.dart';
@@ -37,7 +37,7 @@
   void dispose() { }
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }
 }
diff --git a/packages/flutter/test/widgets/image_test.dart b/packages/flutter/test/widgets/image_test.dart
index a060f99..91343a9 100644
--- a/packages/flutter/test/widgets/image_test.dart
+++ b/packages/flutter/test/widgets/image_test.dart
@@ -4,7 +4,7 @@
 
 import 'dart:async';
 import 'dart:typed_data';
-import 'dart:ui' as ui show EncodingFormat, Image;
+import 'dart:ui' as ui show Image;
 
 import 'package:flutter/foundation.dart';
 import 'package:flutter/rendering.dart';
@@ -484,7 +484,7 @@
   void dispose() { }
 
   @override
-  Future<ByteData> toByteData({ui.EncodingFormat format}) async {
+  Future<ByteData> toByteData() async {
     throw new UnsupportedError('Cannot encode test image');
   }