mirror of
https://github.com/flutter/flutter.git
synced 2025-06-03 00:51:18 +00:00
Revert engine back to afb9d510c3bb0f1b97980434b41200a2d3491697 (#33982)
Revert "Add currentSystemFrameTimeStamp to SchedulerBinding (#33886)"
This reverts commit 61b83d320e
.
This commit is contained in:
parent
14414f350a
commit
366dcb1588
@ -1 +1 @@
|
||||
3371da1e09511cb047c746e8209ec91550714b05
|
||||
afb9d510c3bb0f1b97980434b41200a2d3491697
|
||||
|
@ -846,22 +846,6 @@ mixin SchedulerBinding on BindingBase, ServicesBinding {
|
||||
}
|
||||
Duration _currentFrameTimeStamp;
|
||||
|
||||
/// The raw time stamp as provided by the engine to [Window.onBeginFrame]
|
||||
/// for the frame currently being processed.
|
||||
///
|
||||
/// Unlike [currentFrameTimeStamp], this time stamp is neither adjusted to
|
||||
/// offset when the epoch started nor scaled to reflect the [timeDilation] in
|
||||
/// the current epoch.
|
||||
///
|
||||
/// On most platforms, this is a more or less arbitrary value, and should
|
||||
/// generally be ignored. On Fuchsia, this corresponds to the system-provided
|
||||
/// presentation time, and can be used to ensure that animations running in
|
||||
/// different processes are synchronized.
|
||||
Duration get currentSystemFrameTimeStamp {
|
||||
assert(_lastRawTimeStamp != null);
|
||||
return _lastRawTimeStamp;
|
||||
}
|
||||
|
||||
int _profileFrameNumber = 0;
|
||||
final Stopwatch _profileFrameStopwatch = Stopwatch();
|
||||
String _debugBanner;
|
||||
|
@ -8,7 +8,6 @@ import 'package:flutter/scheduler.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
import '../flutter_test_alternative.dart';
|
||||
import 'scheduler_tester.dart';
|
||||
|
||||
class TestSchedulerBinding extends BindingBase with ServicesBinding, SchedulerBinding { }
|
||||
|
||||
@ -136,36 +135,4 @@ void main() {
|
||||
expect(scheduler.schedulerPhase, SchedulerPhase.idle);
|
||||
expect(taskExecuted, false);
|
||||
});
|
||||
|
||||
test('currentSystemFrameTimeStamp is the raw timestamp', () {
|
||||
Duration lastTimeStamp;
|
||||
Duration lastSystemTimeStamp;
|
||||
|
||||
void frameCallback(Duration timeStamp) {
|
||||
expect(timeStamp, scheduler.currentFrameTimeStamp);
|
||||
lastTimeStamp = scheduler.currentFrameTimeStamp;
|
||||
lastSystemTimeStamp = scheduler.currentSystemFrameTimeStamp;
|
||||
}
|
||||
|
||||
scheduler.scheduleFrameCallback(frameCallback);
|
||||
tick(const Duration(seconds: 2));
|
||||
expect(lastTimeStamp, Duration.zero);
|
||||
expect(lastSystemTimeStamp, const Duration(seconds: 2));
|
||||
|
||||
scheduler.scheduleFrameCallback(frameCallback);
|
||||
tick(const Duration(seconds: 4));
|
||||
expect(lastTimeStamp, const Duration(seconds: 2));
|
||||
expect(lastSystemTimeStamp, const Duration(seconds: 4));
|
||||
|
||||
timeDilation = 2;
|
||||
scheduler.scheduleFrameCallback(frameCallback);
|
||||
tick(const Duration(seconds: 6));
|
||||
expect(lastTimeStamp, const Duration(seconds: 2)); // timeDilation calls SchedulerBinding.resetEpoch
|
||||
expect(lastSystemTimeStamp, const Duration(seconds: 6));
|
||||
|
||||
scheduler.scheduleFrameCallback(frameCallback);
|
||||
tick(const Duration(seconds: 8));
|
||||
expect(lastTimeStamp, const Duration(seconds: 3)); // 2s + (8 - 6)s / 2
|
||||
expect(lastSystemTimeStamp, const Duration(seconds: 8));
|
||||
});
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user