| Index: content/browser/renderer_host/display_link_mac.cc
|
| diff --git a/content/browser/renderer_host/display_link_mac.cc b/content/browser/renderer_host/display_link_mac.cc
|
| index b4592a9f3b77832aa0801c6e5acd3bd841ee0244..e848829e60abac0797466de2a8eb0c3d73d0a7cd 100644
|
| --- a/content/browser/renderer_host/display_link_mac.cc
|
| +++ b/content/browser/renderer_host/display_link_mac.cc
|
| @@ -94,6 +94,15 @@ bool DisplayLinkMac::GetVSyncParameters(
|
| return true;
|
| }
|
|
|
| +void DisplayLinkMac::AddObserver(Observer* observer) {
|
| + StartOrContinueDisplayLink();
|
| + observer_list_.AddObserver(observer);
|
| +}
|
| +
|
| +void DisplayLinkMac::RemoveObserver(Observer* observer) {
|
| + observer_list_.RemoveObserver(observer);
|
| +}
|
| +
|
| void DisplayLinkMac::Tick(const CVTimeStamp* cv_time) {
|
| TRACE_EVENT0("browser", "DisplayLinkMac::GetVSyncParameters");
|
| base::AutoLock lock(lock_);
|
| @@ -114,6 +123,10 @@ void DisplayLinkMac::Tick(const CVTimeStamp* cv_time) {
|
| interval_ = base::TimeDelta::FromMicroseconds(
|
| 1000000 * static_cast<int64>(numerator) / denominator);
|
| timebase_and_interval_valid_ = true;
|
| +
|
| + FOR_EACH_OBSERVER(Observer,
|
| + observer_list_,
|
| + OnVSync(timebase_, interval_));
|
| }
|
|
|
| void DisplayLinkMac::StartOrContinueDisplayLink() {
|
|
|