| Index: components/scheduler/renderer/renderer_scheduler_impl.cc
|
| diff --git a/components/scheduler/renderer/renderer_scheduler_impl.cc b/components/scheduler/renderer/renderer_scheduler_impl.cc
|
| index f11b76639f57609aa742db494749dd28c6873a1c..03d0c8012dd64b1e4a27ecfde7f5a4858f7a9d59 100644
|
| --- a/components/scheduler/renderer/renderer_scheduler_impl.cc
|
| +++ b/components/scheduler/renderer/renderer_scheduler_impl.cc
|
| @@ -1131,13 +1131,25 @@ void RendererSchedulerImpl::ResetForNavigationLocked() {
|
| UpdatePolicyLocked(UpdateType::MAY_EARLY_OUT_IF_POLICY_UNCHANGED);
|
| }
|
|
|
| -double RendererSchedulerImpl::CurrentTimeSeconds() const {
|
| - return helper_.scheduler_tqm_delegate()->CurrentTimeSeconds();
|
| +double RendererSchedulerImpl::VirtualTimeSeconds() const {
|
| + TaskQueue* current_tq = helper_.CurrentlyExecutingTaskQueue();
|
| + if (current_tq && current_tq->GetTimeDomain()) {
|
| + return (current_tq->GetTimeDomain()->Now() -
|
| + base::TimeTicks::UnixEpoch()).InSecondsF();
|
| + }
|
| + return (helper_.scheduler_tqm_delegate()->NowTicks() -
|
| + base::TimeTicks::UnixEpoch()).InSecondsF();
|
| }
|
|
|
| -double RendererSchedulerImpl::MonotonicallyIncreasingTimeSeconds() const {
|
| +double RendererSchedulerImpl::MonotonicallyIncreasingVirtualTimeSeconds()
|
| + const {
|
| + TaskQueue* current_tq = helper_.CurrentlyExecutingTaskQueue();
|
| + if (current_tq && current_tq->GetTimeDomain()) {
|
| + return current_tq->GetTimeDomain()->Now().ToInternalValue() /
|
| + static_cast<double>(base::Time::kMicrosecondsPerSecond);
|
| + }
|
| return helper_.scheduler_tqm_delegate()->NowTicks().ToInternalValue() /
|
| - static_cast<double>(base::Time::kMicrosecondsPerSecond);
|
| + static_cast<double>(base::Time::kMicrosecondsPerSecond);
|
| }
|
|
|
| void RendererSchedulerImpl::RegisterTimeDomain(TimeDomain* time_domain) {
|
|
|