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

Commit 54e2518

Browse files
committed
[web] Migrate Flutter Web to JS static interop - 2
1 parent 7b2e6e5 commit 54e2518

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

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

Lines changed: 16 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();
@@ -209,14 +217,18 @@ class SkSurface {
209217
external SkImage makeImageSnapshot();
210218
}
211219

220+
212221
@JS()
213-
@anonymous
214-
class SkGrContext {
222+
@staticInterop
223+
class SkGrContext {}
224+
225+
extension SkGrContextExtension on SkGrContext {
215226
external void setResourceCacheLimitBytes(int limit);
216227
external void releaseResourcesAndAbandonContext();
217228
external void delete();
218229
}
219230

231+
220232
@JS()
221233
@anonymous
222234
class SkFontSlantEnum {

0 commit comments

Comments
 (0)