diff --git a/engine/src/flutter/lib/ui/hooks.dart b/engine/src/flutter/lib/ui/hooks.dart index be95488031..5ba01a6ca8 100644 --- a/engine/src/flutter/lib/ui/hooks.dart +++ b/engine/src/flutter/lib/ui/hooks.dart @@ -125,7 +125,7 @@ void _runMainZoned(Function startMainIsolateFunction, startMainIsolateFunction(() { runZonedGuarded(() { if (userMainFunction is _ListStringArgFunction) { - (userMainFunction as dynamic)(args); + userMainFunction(args); } else { userMainFunction(); } @@ -233,7 +233,7 @@ bool _isLoopback(String host) { @pragma('vm:entry-point') void Function(Uri) _getHttpConnectionHookClosure(bool mayInsecurelyConnectToAllDomains) { return (Uri uri) { - final dynamic zoneOverride = Zone.current[#flutter.io.allow_http]; + final Object? zoneOverride = Zone.current[#flutter.io.allow_http]; if (zoneOverride == true) { return; } diff --git a/engine/src/flutter/lib/ui/natives.dart b/engine/src/flutter/lib/ui/natives.dart index 07eb5f099a..312593daea 100644 --- a/engine/src/flutter/lib/ui/natives.dart +++ b/engine/src/flutter/lib/ui/natives.dart @@ -9,11 +9,11 @@ part of dart.ui; // Corelib 'print' implementation. -void _print(dynamic arg) { +void _print(Object? arg) { _Logger._printString(arg.toString()); } -void _printDebug(dynamic arg) { +void _printDebug(Object? arg) { _Logger._printDebugString(arg.toString()); } diff --git a/engine/src/flutter/lib/ui/painting.dart b/engine/src/flutter/lib/ui/painting.dart index 5ef0fd4ccb..9f6763f206 100644 --- a/engine/src/flutter/lib/ui/painting.dart +++ b/engine/src/flutter/lib/ui/painting.dart @@ -1107,6 +1107,7 @@ class Paint { // The binary format must match the deserialization code in paint.cc. final ByteData _data = ByteData(_kDataByteCount); + static const int _kIsAntiAliasIndex = 0; static const int _kColorIndex = 1; static const int _kBlendModeIndex = 2; @@ -1140,10 +1141,10 @@ class Paint { static const int _kDataByteCount = 56; // Binary format must match the deserialization code in paint.cc. - List? _objects; + List? _objects; - List _ensureObjectsInitialized() { - return _objects ??= List.filled(_kObjectCount, null, growable: false); + List _ensureObjectsInitialized() { + return _objects ??= List.filled(_kObjectCount, null, growable: false); } static const int _kShaderIndex = 0; @@ -1409,7 +1410,8 @@ class Paint { /// /// When a shape is being drawn, [colorFilter] overrides [color] and [shader]. ColorFilter? get colorFilter { - return _objects?[_kColorFilterIndex]?.creator as ColorFilter?; + final _ColorFilter? nativeFilter = _objects?[_kColorFilterIndex] as _ColorFilter?; + return nativeFilter?.creator; } set colorFilter(ColorFilter? value) { @@ -1446,7 +1448,8 @@ class Paint { /// /// * [MaskFilter], which is used for drawing geometry. ImageFilter? get imageFilter { - return _objects?[_kImageFilterIndex]?.creator as ImageFilter?; + final _ImageFilter? nativeFilter = _objects?[_kImageFilterIndex] as _ImageFilter?; + return nativeFilter?.creator; } set imageFilter(ImageFilter? value) { @@ -1455,8 +1458,9 @@ class Paint { _objects![_kImageFilterIndex] = null; } } else { - final List objects = _ensureObjectsInitialized(); - if (objects[_kImageFilterIndex]?.creator != value) { + final List objects = _ensureObjectsInitialized(); + final _ImageFilter? imageFilter = objects[_kImageFilterIndex] as _ImageFilter?; + if (imageFilter?.creator != value) { objects[_kImageFilterIndex] = value._toNativeImageFilter(); } } @@ -4247,13 +4251,13 @@ class Canvas extends NativeFieldWrapperClass1 { paint._objects, paint._data); } } - void _saveLayerWithoutBounds(List? paintObjects, ByteData paintData) + void _saveLayerWithoutBounds(List? paintObjects, ByteData paintData) native 'Canvas_saveLayerWithoutBounds'; void _saveLayer(double left, double top, double right, double bottom, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_saveLayer'; /// Pops the current save stack, if there is anything to pop. @@ -4384,7 +4388,7 @@ class Canvas extends NativeFieldWrapperClass1 { double y1, double x2, double y2, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawLine'; /// Fills the canvas with the given [Paint]. @@ -4395,7 +4399,7 @@ class Canvas extends NativeFieldWrapperClass1 { assert(paint != null); _drawPaint(paint._objects, paint._data); } - void _drawPaint(List? paintObjects, ByteData paintData) native 'Canvas_drawPaint'; + void _drawPaint(List? paintObjects, ByteData paintData) native 'Canvas_drawPaint'; /// Draws a rectangle with the given [Paint]. Whether the rectangle is filled /// or stroked (or both) is controlled by [Paint.style]. @@ -4409,7 +4413,7 @@ class Canvas extends NativeFieldWrapperClass1 { double top, double right, double bottom, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawRect'; /// Draws a rounded rectangle with the given [Paint]. Whether the rectangle is @@ -4420,7 +4424,7 @@ class Canvas extends NativeFieldWrapperClass1 { _drawRRect(rrect._getValue32(), paint._objects, paint._data); } void _drawRRect(Float32List rrect, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawRRect'; /// Draws a shape consisting of the difference between two rounded rectangles @@ -4436,7 +4440,7 @@ class Canvas extends NativeFieldWrapperClass1 { } void _drawDRRect(Float32List outer, Float32List inner, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawDRRect'; /// Draws an axis-aligned oval that fills the given axis-aligned rectangle @@ -4452,7 +4456,7 @@ class Canvas extends NativeFieldWrapperClass1 { double top, double right, double bottom, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawOval'; /// Draws a circle centered at the point given by the first argument and @@ -4467,7 +4471,7 @@ class Canvas extends NativeFieldWrapperClass1 { void _drawCircle(double x, double y, double radius, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawCircle'; /// Draw an arc scaled to fit inside the given rectangle. @@ -4494,7 +4498,7 @@ class Canvas extends NativeFieldWrapperClass1 { double startAngle, double sweepAngle, bool useCenter, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawArc'; /// Draws the given [Path] with the given [Paint]. @@ -4508,7 +4512,7 @@ class Canvas extends NativeFieldWrapperClass1 { _drawPath(path, paint._objects, paint._data); } void _drawPath(Path path, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawPath'; /// Draws the given [Image] into the canvas with its top-left corner at the @@ -4522,7 +4526,7 @@ class Canvas extends NativeFieldWrapperClass1 { void _drawImage(_Image image, double x, double y, - List? paintObjects, + List? paintObjects, ByteData paintData, int filterQualityIndex) native 'Canvas_drawImage'; @@ -4562,7 +4566,7 @@ class Canvas extends NativeFieldWrapperClass1 { double dstTop, double dstRight, double dstBottom, - List? paintObjects, + List? paintObjects, ByteData paintData, int filterQualityIndex) native 'Canvas_drawImageRect'; @@ -4606,7 +4610,7 @@ class Canvas extends NativeFieldWrapperClass1 { double dstTop, double dstRight, double dstBottom, - List? paintObjects, + List? paintObjects, ByteData paintData, int filterQualityIndex) native 'Canvas_drawImageNine'; @@ -4677,7 +4681,7 @@ class Canvas extends NativeFieldWrapperClass1 { _drawPoints(paint._objects, paint._data, pointMode.index, points); } - void _drawPoints(List? paintObjects, + void _drawPoints(List? paintObjects, ByteData paintData, int pointMode, Float32List points) native 'Canvas_drawPoints'; @@ -4711,7 +4715,7 @@ class Canvas extends NativeFieldWrapperClass1 { } void _drawVertices(Vertices vertices, int blendMode, - List? paintObjects, + List? paintObjects, ByteData paintData) native 'Canvas_drawVertices'; /// Draws many parts of an image - the [atlas] - onto the canvas. @@ -5060,7 +5064,7 @@ class Canvas extends NativeFieldWrapperClass1 { ); } - void _drawAtlas(List? paintObjects, + void _drawAtlas(List? paintObjects, ByteData paintData, int filterQualityIndex, _Image atlas, diff --git a/engine/src/flutter/lib/ui/platform_dispatcher.dart b/engine/src/flutter/lib/ui/platform_dispatcher.dart index 978792033f..36deee6632 100644 --- a/engine/src/flutter/lib/ui/platform_dispatcher.dart +++ b/engine/src/flutter/lib/ui/platform_dispatcher.dart @@ -866,20 +866,20 @@ class PlatformDispatcher { // Called from the engine, via hooks.dart void _updateUserSettingsData(String jsonData) { - final Map data = json.decode(jsonData) as Map; + final Map data = json.decode(jsonData) as Map; if (data.isEmpty) { return; } - final double textScaleFactor = (data['textScaleFactor'] as num).toDouble(); - final bool alwaysUse24HourFormat = data['alwaysUse24HourFormat'] as bool; + final double textScaleFactor = (data['textScaleFactor']! as num).toDouble(); + final bool alwaysUse24HourFormat = data['alwaysUse24HourFormat']! as bool; // This field is optional. final bool? brieflyShowPassword = data['brieflyShowPassword'] as bool?; if (brieflyShowPassword != null) { _brieflyShowPassword = brieflyShowPassword; } final Brightness platformBrightness = - data['platformBrightness'] as String == 'dark' ? Brightness.dark : Brightness.light; + data['platformBrightness']! as String == 'dark' ? Brightness.dark : Brightness.light; final PlatformConfiguration previousConfiguration = configuration; final bool platformBrightnessChanged = previousConfiguration.platformBrightness != platformBrightness; diff --git a/engine/src/flutter/lib/ui/text.dart b/engine/src/flutter/lib/ui/text.dart index 64103c4263..f77ea978f9 100644 --- a/engine/src/flutter/lib/ui/text.dart +++ b/engine/src/flutter/lib/ui/text.dart @@ -2823,7 +2823,7 @@ class ParagraphBuilder extends NativeFieldWrapperClass1 { Int32List encoded, ByteData? strutData, String? fontFamily, - List? strutFontFamily, + List? strutFontFamily, double? fontSize, double? height, String? ellipsis, @@ -2888,16 +2888,16 @@ class ParagraphBuilder extends NativeFieldWrapperClass1 { void _pushStyle( Int32List encoded, - List fontFamilies, + List fontFamilies, double? fontSize, double? letterSpacing, double? wordSpacing, double? height, double? decorationThickness, String locale, - List? backgroundObjects, + List? backgroundObjects, ByteData? backgroundData, - List? foregroundObjects, + List? foregroundObjects, ByteData? foregroundData, ByteData shadowsData, ByteData? fontFeaturesData, @@ -3015,7 +3015,7 @@ Future loadFontFromList(Uint8List list, {String? fontFamily}) { } final ByteData _fontChangeMessage = utf8.encoder.convert( - json.encode({'type': 'fontsChange'}) + json.encode({'type': 'fontsChange'}) ).buffer.asByteData(); FutureOr _sendFontChangeMessage() async {