| Index: ui/compositor/compositor.cc
|
| diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc
|
| index 2993d8a6fd21dffc40465c2ed46af07f0fba6a30..45d40c78f3b8f9c5bb1e9258735d4b73cdc143c5 100644
|
| --- a/ui/compositor/compositor.cc
|
| +++ b/ui/compositor/compositor.cc
|
| @@ -446,10 +446,20 @@ bool Compositor::HasObserver(CompositorObserver* observer) {
|
| }
|
|
|
| void Compositor::OnUpdateVSyncParameters(base::TimeTicks timebase,
|
| - base::TimeDelta interval) {
|
| - FOR_EACH_OBSERVER(CompositorObserver,
|
| - observer_list_,
|
| - OnUpdateVSyncParameters(this, timebase, interval));
|
| + base::TimeDelta interval,
|
| + bool interval_is_authoritative) {
|
| + if (interval_is_authoritative) {
|
| + authoritative_vsync_interval_ = interval;
|
| + } else {
|
| + if (authoritative_vsync_interval_ != base::TimeDelta())
|
| + interval = authoritative_vsync_interval_;
|
| + }
|
| +
|
| + if (!timebase.is_null()) {
|
| + FOR_EACH_OBSERVER(CompositorObserver,
|
| + observer_list_,
|
| + OnUpdateVSyncParameters(this, timebase, interval));
|
| + }
|
| }
|
|
|
| void Compositor::Layout() {
|
|
|