Skip to content

Commit aba7bc3

Browse files
authored
Use wasm-compatible conditional import in timeline.dart, avoid emitting timeline events in SchedulerBinding (#144682)
1 parent 7a88767 commit aba7bc3

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

packages/flutter/lib/src/foundation/timeline.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import 'dart:typed_data';
88
import 'package:meta/meta.dart';
99

1010
import '_timeline_io.dart'
11-
if (dart.library.js_util) '_timeline_web.dart' as impl;
11+
if (dart.library.js_interop) '_timeline_web.dart' as impl;
1212
import 'constants.dart';
1313

1414
/// Measures how long blocks of code take to run.

packages/flutter/lib/src/scheduler/binding.dart

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1318,13 +1318,17 @@ mixin SchedulerBinding on BindingBase {
13181318
final List<FrameCallback> localPostFrameCallbacks =
13191319
List<FrameCallback>.of(_postFrameCallbacks);
13201320
_postFrameCallbacks.clear();
1321-
Timeline.startSync('POST_FRAME');
1321+
if (!kReleaseMode) {
1322+
FlutterTimeline.startSync('POST_FRAME');
1323+
}
13221324
try {
13231325
for (final FrameCallback callback in localPostFrameCallbacks) {
13241326
_invokeFrameCallback(callback, _currentFrameTimeStamp!);
13251327
}
13261328
} finally {
1327-
Timeline.finishSync();
1329+
if (!kReleaseMode) {
1330+
FlutterTimeline.finishSync();
1331+
}
13281332
}
13291333
} finally {
13301334
_schedulerPhase = SchedulerPhase.idle;

0 commit comments

Comments
 (0)