diff --git a/lib/web_ui/lib/src/engine/dom.dart b/lib/web_ui/lib/src/engine/dom.dart index 0975d736212e4..e9c6fb074b88c 100644 --- a/lib/web_ui/lib/src/engine/dom.dart +++ b/lib/web_ui/lib/src/engine/dom.dart @@ -198,9 +198,11 @@ DomEvent createDomEvent(String type, String name) { return event; } -@JS() +@JS('ProgressEvent') @staticInterop -class DomProgressEvent extends DomEvent {} +class DomProgressEvent extends DomEvent { + external factory DomProgressEvent(String type); +} extension DomProgressEventExtension on DomProgressEvent { int? get loaded => diff --git a/lib/web_ui/test/canvaskit/image_golden_test.dart b/lib/web_ui/test/canvaskit/image_golden_test.dart index fd32c13be19e6..090eb68208fb4 100644 --- a/lib/web_ui/test/canvaskit/image_golden_test.dart +++ b/lib/web_ui/test/canvaskit/image_golden_test.dart @@ -229,7 +229,7 @@ void _testForImageCodecs({required bool useBrowserImageDecoder}) { final Future futureCodec = skiaInstantiateWebImageCodec('http://image-server.com/picture.jpg', null); - mock.sendEvent('load', DomProgressEvent()); + mock.sendEvent('load', DomProgressEvent('test progress event')); final ui.Codec codec = await futureCodec; expect(codec.frameCount, 1); final ui.Image image = (await codec.getNextFrame()).image; @@ -277,7 +277,7 @@ void _testForImageCodecs({required bool useBrowserImageDecoder}) { try { final Future futureCodec = skiaInstantiateWebImageCodec( 'url-does-not-matter', null); - mock.sendEvent('error', DomProgressEvent()); + mock.sendEvent('error', DomProgressEvent('test error')); await futureCodec; fail('Expected to throw'); } on ImageCodecException catch (exception) { @@ -317,7 +317,7 @@ void _testForImageCodecs({required bool useBrowserImageDecoder}) { try { final Future futureCodec = skiaInstantiateWebImageCodec( 'http://image-server.com/picture.jpg', null); - mock.sendEvent('load', DomProgressEvent()); + mock.sendEvent('load', DomProgressEvent('test progress event')); await futureCodec; fail('Expected to throw'); } on ImageCodecException catch (exception) {