diff --git a/packages/web_benchmarks/CHANGELOG.md b/packages/web_benchmarks/CHANGELOG.md index 88f460e800f1..df79379e996d 100644 --- a/packages/web_benchmarks/CHANGELOG.md +++ b/packages/web_benchmarks/CHANGELOG.md @@ -1,3 +1,7 @@ +## NEXT + +* Migrates benchmark recorder away from deprecated `js_util` APIs. + ## 0.1.0+9 * Updates minimum supported SDK version to Flutter 3.10/Dart 3.0. diff --git a/packages/web_benchmarks/lib/src/recorder.dart b/packages/web_benchmarks/lib/src/recorder.dart index 51fa697cecfd..7154386f9894 100644 --- a/packages/web_benchmarks/lib/src/recorder.dart +++ b/packages/web_benchmarks/lib/src/recorder.dart @@ -4,10 +4,9 @@ import 'dart:async'; import 'dart:html' as html; -import 'dart:js'; -import 'dart:js_util' as js_util; import 'dart:math' as math; import 'dart:ui'; +import 'dart:ui_web' as ui_web; import 'package:flutter/foundation.dart'; import 'package:flutter/gestures.dart'; @@ -1211,19 +1210,21 @@ final Map _engineBenchmarkListeners = /// /// If another listener is already registered, overrides it. void registerEngineBenchmarkValueListener( - String name, EngineBenchmarkValueListener listener) { + String name, + EngineBenchmarkValueListener listener, +) { if (_engineBenchmarkListeners.containsKey(name)) { - throw StateError('A listener for "$name" is already registered.\n' - 'Call `stopListeningToEngineBenchmarkValues` to unregister the previous ' - 'listener before registering a new one.'); + throw StateError( + 'A listener for "$name" is already registered.\n' + 'Call `stopListeningToEngineBenchmarkValues` to unregister the previous ' + 'listener before registering a new one.', + ); } if (_engineBenchmarkListeners.isEmpty) { // The first listener is being registered. Register the global listener. - js_util.setProperty(html.window, '_flutter_internal_on_benchmark', - allowInterop(_dispatchEngineBenchmarkValue)); + ui_web.benchmarkValueCallback = _dispatchEngineBenchmarkValue; } - _engineBenchmarkListeners[name] = listener; } @@ -1232,7 +1233,7 @@ void stopListeningToEngineBenchmarkValues(String name) { _engineBenchmarkListeners.remove(name); if (_engineBenchmarkListeners.isEmpty) { // The last listener unregistered. Remove the global listener. - js_util.setProperty(html.window, '_flutter_internal_on_benchmark', null); + ui_web.benchmarkValueCallback = null; } } diff --git a/packages/web_benchmarks/pubspec.yaml b/packages/web_benchmarks/pubspec.yaml index 5c41da447e0b..3d786b338682 100644 --- a/packages/web_benchmarks/pubspec.yaml +++ b/packages/web_benchmarks/pubspec.yaml @@ -5,8 +5,8 @@ issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+ version: 0.1.0+9 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ">=3.2.0 <4.0.0" + flutter: ">=3.16.0" dependencies: flutter: