Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 0299ffd

Browse files
authored
[web] Migrate Flutter Web to JS static interop - 2 (#32427)
1 parent fe6a51a commit 0299ffd

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

lib/web_ui/lib/src/engine/canvaskit/canvaskit_api.dart

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,7 @@ typedef LocateFileCallback = String Function(String file, String unusedBase);
170170

171171
@JS()
172172
@anonymous
173+
@staticInterop
173174
class CanvasKitInitOptions {
174175
external factory CanvasKitInitOptions({
175176
required LocateFileCallback locateFile,
@@ -179,7 +180,10 @@ class CanvasKitInitOptions {
179180
typedef CanvasKitInitCallback = void Function(CanvasKit canvasKit);
180181

181182
@JS()
182-
class CanvasKitInitPromise {
183+
@staticInterop
184+
class CanvasKitInitPromise {}
185+
186+
extension CanvasKitInitPromiseExtension on CanvasKitInitPromise {
183187
external void then(CanvasKitInitCallback callback);
184188
}
185189

@@ -191,6 +195,7 @@ class ColorSpace {}
191195

192196
@JS()
193197
@anonymous
198+
@staticInterop
194199
class SkWebGLContextOptions {
195200
external factory SkWebGLContextOptions({
196201
required int antialias,
@@ -200,7 +205,10 @@ class SkWebGLContextOptions {
200205
}
201206

202207
@JS('window.flutterCanvasKit.Surface')
203-
class SkSurface {
208+
@staticInterop
209+
class SkSurface {}
210+
211+
extension SkSurfaceExtension on SkSurface {
204212
external SkCanvas getCanvas();
205213
external void flush();
206214
external int width();
@@ -210,8 +218,10 @@ class SkSurface {
210218
}
211219

212220
@JS()
213-
@anonymous
214-
class SkGrContext {
221+
@staticInterop
222+
class SkGrContext {}
223+
224+
extension SkGrContextExtension on SkGrContext {
215225
external void setResourceCacheLimitBytes(int limit);
216226
external void releaseResourcesAndAbandonContext();
217227
external void delete();

0 commit comments

Comments
 (0)