@@ -71,9 +71,7 @@ Future<void> testMain() async {
7171 setUp (() {
7272 assetScope = fakeAssetManager.pushAssetScope ();
7373 assetScope.setAsset (
74- 'glitch_shader' ,
75- ByteData .sublistView (utf8.encode (kGlitchShaderSksl))
76- );
74+ 'glitch_shader' , ByteData .sublistView (utf8.encode (kGlitchShaderSksl)));
7775 });
7876
7977 tearDown (() {
@@ -107,14 +105,19 @@ Future<void> testMain() async {
107105
108106 final ui.PictureRecorder recorder = ui.PictureRecorder ();
109107 final ui.Canvas canvas = ui.Canvas (recorder, drawRegion);
110- canvas.drawImage (image, ui.Offset .zero, ui.Paint ()..filterQuality = ui.FilterQuality .none);
111- canvas.drawImage (image, const ui.Offset (150 , 0 ), ui.Paint ()..filterQuality = ui.FilterQuality .low);
112- canvas.drawImage (image, const ui.Offset (0 , 150 ), ui.Paint ()..filterQuality = ui.FilterQuality .medium);
113- canvas.drawImage (image, const ui.Offset (150 , 150 ), ui.Paint ()..filterQuality = ui.FilterQuality .high);
108+ canvas.drawImage (image, ui.Offset .zero,
109+ ui.Paint ()..filterQuality = ui.FilterQuality .none);
110+ canvas.drawImage (image, const ui.Offset (150 , 0 ),
111+ ui.Paint ()..filterQuality = ui.FilterQuality .low);
112+ canvas.drawImage (image, const ui.Offset (0 , 150 ),
113+ ui.Paint ()..filterQuality = ui.FilterQuality .medium);
114+ canvas.drawImage (image, const ui.Offset (150 , 150 ),
115+ ui.Paint ()..filterQuality = ui.FilterQuality .high);
114116
115117 await drawPictureUsingCurrentRenderer (recorder.endRecording ());
116118
117- await matchGoldenFile ('${name }_canvas_drawImage.png' , region: drawRegion);
119+ await matchGoldenFile ('${name }_canvas_drawImage.png' ,
120+ region: drawRegion);
118121 });
119122
120123 test ('drawImageRect' , () async {
@@ -124,57 +127,52 @@ Future<void> testMain() async {
124127 final ui.Canvas canvas = ui.Canvas (recorder, drawRegion);
125128 const ui.Rect srcRect = ui.Rect .fromLTRB (50 , 50 , 100 , 100 );
126129 canvas.drawImageRect (
127- image,
128- srcRect,
129- const ui.Rect .fromLTRB (0 , 0 , 150 , 150 ),
130- ui.Paint ()..filterQuality = ui.FilterQuality .none
131- );
130+ image,
131+ srcRect,
132+ const ui.Rect .fromLTRB (0 , 0 , 150 , 150 ),
133+ ui.Paint ()..filterQuality = ui.FilterQuality .none);
132134 canvas.drawImageRect (
133- image,
134- srcRect,
135- const ui.Rect .fromLTRB (150 , 0 , 300 , 150 ),
136- ui.Paint ()..filterQuality = ui.FilterQuality .low
137- );
135+ image,
136+ srcRect,
137+ const ui.Rect .fromLTRB (150 , 0 , 300 , 150 ),
138+ ui.Paint ()..filterQuality = ui.FilterQuality .low);
138139 canvas.drawImageRect (
139- image,
140- srcRect,
141- const ui.Rect .fromLTRB (0 , 150 , 150 , 300 ),
142- ui.Paint ()..filterQuality = ui.FilterQuality .medium
143- );
140+ image,
141+ srcRect,
142+ const ui.Rect .fromLTRB (0 , 150 , 150 , 300 ),
143+ ui.Paint ()..filterQuality = ui.FilterQuality .medium);
144144 canvas.drawImageRect (
145- image,
146- srcRect,
147- const ui.Rect .fromLTRB (150 , 150 , 300 , 300 ),
148- ui.Paint ()..filterQuality = ui.FilterQuality .high
149- );
145+ image,
146+ srcRect,
147+ const ui.Rect .fromLTRB (150 , 150 , 300 , 300 ),
148+ ui.Paint ()..filterQuality = ui.FilterQuality .high);
150149
151150 await drawPictureUsingCurrentRenderer (recorder.endRecording ());
152151
153- await matchGoldenFile ('${name }_canvas_drawImageRect.png' , region: drawRegion);
152+ await matchGoldenFile ('${name }_canvas_drawImageRect.png' ,
153+ region: drawRegion);
154154 });
155155
156156 test ('drawImageNine' , () async {
157157 final ui.Image image = await generateImage ();
158158
159159 final ui.PictureRecorder recorder = ui.PictureRecorder ();
160160 final ui.Canvas canvas = ui.Canvas (recorder, drawRegion);
161- canvas.drawImageNine (
162- image,
163- const ui.Rect .fromLTRB (50 , 50 , 100 , 100 ),
164- drawRegion,
165- ui.Paint ()
166- );
161+ canvas.drawImageNine (image, const ui.Rect .fromLTRB (50 , 50 , 100 , 100 ),
162+ drawRegion, ui.Paint ());
167163
168164 await drawPictureUsingCurrentRenderer (recorder.endRecording ());
169165
170- await matchGoldenFile ('${name }_canvas_drawImageNine.png' , region: drawRegion);
166+ await matchGoldenFile ('${name }_canvas_drawImageNine.png' ,
167+ region: drawRegion);
171168 });
172169
173170 test ('image_shader_cubic_rotated' , () async {
174171 final ui.PictureRecorder recorder = ui.PictureRecorder ();
175172 final ui.Canvas canvas = ui.Canvas (recorder, drawRegion);
176173 final Float64List matrix = Matrix4 .rotationZ (pi / 6 ).toFloat64 ();
177- Future <void > drawOvalWithShader (ui.Rect rect, ui.FilterQuality quality) async {
174+ Future <void > drawOvalWithShader (
175+ ui.Rect rect, ui.FilterQuality quality) async {
178176 final ui.Image image = await generateImage ();
179177 final ui.ImageShader shader = ui.ImageShader (
180178 image,
@@ -183,32 +181,35 @@ Future<void> testMain() async {
183181 matrix,
184182 filterQuality: quality,
185183 );
186- canvas.drawOval (
187- rect,
188- ui.Paint ()..shader = shader
189- );
184+ canvas.drawOval (rect, ui.Paint ()..shader = shader);
190185 }
191186
192187 // Draw image shader with all four qualities.
193- await drawOvalWithShader (const ui.Rect .fromLTRB (0 , 0 , 150 , 100 ), ui.FilterQuality .none);
194- await drawOvalWithShader (const ui.Rect .fromLTRB (150 , 0 , 300 , 100 ), ui.FilterQuality .low);
188+ await drawOvalWithShader (
189+ const ui.Rect .fromLTRB (0 , 0 , 150 , 100 ), ui.FilterQuality .none);
190+ await drawOvalWithShader (
191+ const ui.Rect .fromLTRB (150 , 0 , 300 , 100 ), ui.FilterQuality .low);
195192
196193 // Note that for images that CanvasKit handles lazily (ones created via
197194 // `createImageFromImageBitmap` or `instantiateImageCodecFromUrl`)
198195 // there is a CanvasKit bug that this just renders a black oval instead of
199196 // actually texturing it with the image.
200197 // See https://g-issues.skia.org/issues/338095525
201- await drawOvalWithShader (const ui.Rect .fromLTRB (0 , 100 , 150 , 200 ), ui.FilterQuality .medium);
202- await drawOvalWithShader (const ui.Rect .fromLTRB (150 , 100 , 300 , 200 ), ui.FilterQuality .high);
198+ await drawOvalWithShader (
199+ const ui.Rect .fromLTRB (0 , 100 , 150 , 200 ), ui.FilterQuality .medium);
200+ await drawOvalWithShader (
201+ const ui.Rect .fromLTRB (150 , 100 , 300 , 200 ), ui.FilterQuality .high);
203202
204203 await drawPictureUsingCurrentRenderer (recorder.endRecording ());
205- await matchGoldenFile ('${name }_image_shader_cubic_rotated.png' , region: drawRegion);
204+ await matchGoldenFile ('${name }_image_shader_cubic_rotated.png' ,
205+ region: drawRegion);
206206 });
207207
208208 test ('fragment_shader_sampler' , () async {
209209 final ui.Image image = await generateImage ();
210210
211- final ui.FragmentProgram program = await renderer.createFragmentProgram ('glitch_shader' );
211+ final ui.FragmentProgram program =
212+ await renderer.createFragmentProgram ('glitch_shader' );
212213 final ui.FragmentShader shader = program.fragmentShader ();
213214
214215 // Resolution
@@ -223,11 +224,13 @@ Future<void> testMain() async {
223224
224225 final ui.PictureRecorder recorder = ui.PictureRecorder ();
225226 final ui.Canvas canvas = ui.Canvas (recorder, drawRegion);
226- canvas.drawCircle (const ui.Offset (150 , 150 ), 100 , ui.Paint ()..shader = shader);
227+ canvas.drawCircle (
228+ const ui.Offset (150 , 150 ), 100 , ui.Paint ()..shader = shader);
227229
228230 await drawPictureUsingCurrentRenderer (recorder.endRecording ());
229231
230- await matchGoldenFile ('${name }_fragment_shader_sampler.png' , region: drawRegion);
232+ await matchGoldenFile ('${name }_fragment_shader_sampler.png' ,
233+ region: drawRegion);
231234 }, skip: isHtml); // HTML doesn't support fragment shaders
232235
233236 test ('drawVertices with image shader' , () async {
@@ -268,11 +271,13 @@ Future<void> testMain() async {
268271
269272 final ui.PictureRecorder recorder = ui.PictureRecorder ();
270273 final ui.Canvas canvas = ui.Canvas (recorder, drawRegion);
271- canvas.drawVertices (vertices, ui.BlendMode .srcOver, ui.Paint ()..shader = shader);
274+ canvas.drawVertices (
275+ vertices, ui.BlendMode .srcOver, ui.Paint ()..shader = shader);
272276
273277 await drawPictureUsingCurrentRenderer (recorder.endRecording ());
274278
275- await matchGoldenFile ('${name }_drawVertices_imageShader.png' , region: drawRegion);
279+ await matchGoldenFile ('${name }_drawVertices_imageShader.png' ,
280+ region: drawRegion);
276281 }, skip: isHtml); // https://github.com/flutter/flutter/issues/127454;
277282
278283 test ('toByteData_rgba' , () async {
@@ -286,7 +291,8 @@ Future<void> testMain() async {
286291 test ('toByteData_png' , () async {
287292 final ui.Image image = await generateImage ();
288293
289- final ByteData ? pngData = await image.toByteData (format: ui.ImageByteFormat .png);
294+ final ByteData ? pngData =
295+ await image.toByteData (format: ui.ImageByteFormat .png);
290296 expect (pngData, isNotNull);
291297 expect (pngData! .lengthInBytes, isNonZero);
292298 }, skip: isHtml); // https://github.com/flutter/flutter/issues/126611
@@ -300,19 +306,18 @@ Future<void> testMain() async {
300306 for (int x = 0 ; x < 15 ; x++ ) {
301307 final ui.Offset center = ui.Offset (x * 10 + 5 , y * 10 + 5 );
302308 final ui.Color color = ui.Color .fromRGBO (
303- (center.dx * 256 / 150 ).round (),
304- (center.dy * 256 / 150 ).round (), 0 , 1 );
309+ (center.dx * 256 / 150 ).round (),
310+ (center.dy * 256 / 150 ).round (),
311+ 0 ,
312+ 1 );
305313 canvas.drawCircle (center, 5 , ui.Paint ()..color = color);
306314 }
307315 }
308316 return recorder.endRecording ().toImage (150 , 150 );
309317 });
310318
311319 Uint8List generatePixelData (
312- int width,
313- int height,
314- ui.Color Function (double , double ) generator
315- ) {
320+ int width, int height, ui.Color Function (double , double ) generator) {
316321 final Uint8List data = Uint8List (width * height * 4 );
317322 int outputIndex = 0 ;
318323 for (int y = 0 ; y < height; y++ ) {
@@ -342,7 +347,8 @@ Future<void> testMain() async {
342347 );
343348 });
344349 final Completer <ui.Image > completer = Completer <ui.Image >();
345- ui.decodeImageFromPixels (pixels, 150 , 150 , ui.PixelFormat .rgba8888, completer.complete);
350+ ui.decodeImageFromPixels (
351+ pixels, 150 , 150 , ui.PixelFormat .rgba8888, completer.complete);
346352 return completer.future;
347353 });
348354
@@ -375,8 +381,7 @@ Future<void> testMain() async {
375381
376382 emitImageTests ('codec_uri' , () async {
377383 final ui.Codec codec = await renderer.instantiateImageCodecFromUrl (
378- Uri (path: '/test_images/mandrill_128.png' )
379- );
384+ Uri (path: '/test_images/mandrill_128.png' ));
380385 expect (codec.frameCount, 1 );
381386
382387 final ui.FrameInfo info = await codec.getNextFrame ();
@@ -388,12 +393,14 @@ Future<void> testMain() async {
388393 if (! isFirefox) {
389394 emitImageTests ('svg_image_bitmap' , () async {
390395 final DomBlob svgBlob = createDomBlob (< String > [
391- '''
396+ '''
392397 <svg xmlns="http://www.w3.org/2000/svg" width="150" height="150">
393398 <path d="M25,75 A50,50 0 1,0 125 75 L75,25 Z" stroke="blue" stroke-width="10" fill="red"></path>
394399 </svg>
395400 '''
396- ], < String , String > {'type' : 'image/svg+xml' });
401+ ], < String , String > {
402+ 'type' : 'image/svg+xml'
403+ });
397404 final String url = domWindow.URL .createObjectURL (svgBlob);
398405 final DomHTMLImageElement image = createDomHTMLImageElement ();
399406 final Completer <void > completer = Completer <void >();
@@ -410,7 +417,8 @@ Future<void> testMain() async {
410417
411418 expect (bitmap.width.toDartInt, 150 );
412419 expect (bitmap.height.toDartInt, 150 );
413- final ui.Image uiImage = await renderer.createImageFromImageBitmap (bitmap);
420+ final ui.Image uiImage =
421+ await renderer.createImageFromImageBitmap (bitmap);
414422
415423 if (isSkwasm) {
416424 // Skwasm transfers the bitmap to the web worker, so it should be disposed/consumed.
@@ -426,12 +434,14 @@ Future<void> testMain() async {
426434 if (! isFirefox && ! isHtml) {
427435 emitImageTests ('svg_image_bitmap_texture_source' , () async {
428436 final DomBlob svgBlob = createDomBlob (< String > [
429- '''
437+ '''
430438 <svg xmlns="http://www.w3.org/2000/svg" width="150" height="150">
431439 <path d="M25,75 A50,50 0 1,0 125 75 L75,25 Z" stroke="blue" stroke-width="10" fill="red"></path>
432440 </svg>
433441 '''
434- ], < String , String > {'type' : 'image/svg+xml' });
442+ ], < String , String > {
443+ 'type' : 'image/svg+xml'
444+ });
435445 final String url = domWindow.URL .createObjectURL (svgBlob);
436446 final DomHTMLImageElement image = createDomHTMLImageElement ();
437447 final Completer <void > completer = Completer <void >();
@@ -444,23 +454,27 @@ Future<void> testMain() async {
444454 image.src = url;
445455 await completer.future;
446456
447- if (isSkwasm) {
457+ if (isSkwasm) {
448458 // Send something we can actually transfer to a worker, unfortunately we can't transfer an element.
449- final DomImageBitmap bitmap = await createImageBitmap (image as JSObject );
459+ final DomImageBitmap bitmap =
460+ await createImageBitmap (image as JSObject );
450461 expect (bitmap.width.toDartInt, 150 );
451462 expect (bitmap.height.toDartInt, 150 );
452-
453- final ui.Image uiImage = renderer.createImageFromTextureSource (bitmap, width: 150 , height: 150 );
463+
464+ final ui.Image uiImage = renderer.createImageFromTextureSource (bitmap,
465+ width: 150 , height: 150 );
454466 return uiImage;
455467 } else {
456- final ui.Image uiImage = renderer.createImageFromTextureSource (image, width: 150 , height: 150 );
468+ final ui.Image uiImage = renderer.createImageFromTextureSource (image,
469+ width: 150 , height: 150 );
457470 return uiImage;
458471 }
459472 });
460473 }
461474
462475 emitImageTests ('codec_list_resized' , () async {
463- final ByteBuffer data = await httpFetchByteBuffer ('/test_images/mandrill_128.png' );
476+ final ByteBuffer data =
477+ await httpFetchByteBuffer ('/test_images/mandrill_128.png' );
464478 final ui.Codec codec = await renderer.instantiateImageCodec (
465479 data.asUint8List (),
466480 targetWidth: 150 ,
0 commit comments