| OLD | NEW | 
|   1 // Copyright 2016 The Chromium Authors. All rights reserved. |   1 // Copyright 2016 The Chromium Authors. All rights reserved. | 
|   2 // Use of this source code is governed by a BSD-style license that can be |   2 // Use of this source code is governed by a BSD-style license that can be | 
|   3 // found in the LICENSE file. |   3 // found in the LICENSE file. | 
|   4  |   4  | 
|   5 #include "core/dom/IntersectionObserverController.h" |   5 #include "core/dom/IntersectionObserverController.h" | 
|   6  |   6  | 
|   7 #include "core/dom/Document.h" |   7 #include "core/dom/Document.h" | 
|   8  |   8  | 
|   9 namespace blink { |   9 namespace blink { | 
|  10  |  10  | 
| (...skipping 30 matching lines...) Expand all  Loading... | 
|  41     // If the timer fired while DOM objects were suspended, notifications might 
    be late, so deliver |  41     // If the timer fired while DOM objects were suspended, notifications might 
    be late, so deliver | 
|  42     // them right away (rather than waiting for m_timer to fire again). |  42     // them right away (rather than waiting for m_timer to fire again). | 
|  43     if (m_timerFiredWhileSuspended) { |  43     if (m_timerFiredWhileSuspended) { | 
|  44         m_timerFiredWhileSuspended = false; |  44         m_timerFiredWhileSuspended = false; | 
|  45         deliverIntersectionObservations(nullptr); |  45         deliverIntersectionObservations(nullptr); | 
|  46     } |  46     } | 
|  47 } |  47 } | 
|  48  |  48  | 
|  49 void IntersectionObserverController::deliverIntersectionObservations(Timer<Inter
    sectionObserverController>*) |  49 void IntersectionObserverController::deliverIntersectionObservations(Timer<Inter
    sectionObserverController>*) | 
|  50 { |  50 { | 
|  51     if (executionContext()->activeDOMObjectsAreSuspended()) { |  51     if (getExecutionContext()->activeDOMObjectsAreSuspended()) { | 
|  52         m_timerFiredWhileSuspended = true; |  52         m_timerFiredWhileSuspended = true; | 
|  53         return; |  53         return; | 
|  54     } |  54     } | 
|  55     IntersectionObserverVector observers; |  55     IntersectionObserverVector observers; | 
|  56     copyToVector(m_pendingIntersectionObservers, observers); |  56     copyToVector(m_pendingIntersectionObservers, observers); | 
|  57     m_pendingIntersectionObservers.clear(); |  57     m_pendingIntersectionObservers.clear(); | 
|  58     for (auto& observer : observers) |  58     for (auto& observer : observers) | 
|  59         observer->deliver(); |  59         observer->deliver(); | 
|  60 } |  60 } | 
|  61  |  61  | 
| (...skipping 22 matching lines...) Expand all  Loading... | 
|  84 } |  84 } | 
|  85  |  85  | 
|  86 DEFINE_TRACE(IntersectionObserverController) |  86 DEFINE_TRACE(IntersectionObserverController) | 
|  87 { |  87 { | 
|  88     visitor->trace(m_trackedIntersectionObservers); |  88     visitor->trace(m_trackedIntersectionObservers); | 
|  89     visitor->trace(m_pendingIntersectionObservers); |  89     visitor->trace(m_pendingIntersectionObservers); | 
|  90     ActiveDOMObject::trace(visitor); |  90     ActiveDOMObject::trace(visitor); | 
|  91 } |  91 } | 
|  92  |  92  | 
|  93 } // namespace blink |  93 } // namespace blink | 
| OLD | NEW |