⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 267611 in webkit


Ignore:
Timestamp:
Sep 25, 2020, 5:14:42 PM (6 years ago)
Author:
Simon Fraser
Message:

Make renderingUpdateScheduler() internal to Page
https://bugs.webkit.org/show_bug.cgi?id=216993

Reviewed by Said Abou-Hallawa.

renderingUpdateScheduler() should be an implementation detail of Page.

Also add some explanatory comments.

  • dom/Document.cpp:

(WebCore::Document::scheduleTimedRenderingUpdate):

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::scheduleAnimation):

  • page/Page.cpp:

(WebCore::Page::scheduleImmediateRenderingUpdate):

  • page/Page.h:
  • page/PageOverlayController.cpp:

(WebCore::PageOverlayController::didChangeViewExposedRect):
(WebCore::PageOverlayController::notifyFlushRequired):

  • page/mac/ServicesOverlayController.mm:

(WebCore::ServicesOverlayController::Highlight::notifyFlushRequired):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::layerTreeAsText):

Location:
trunk/Source/WebCore
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r267610 r267611  
     12020-09-25  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Make renderingUpdateScheduler() internal to Page
     4        https://bugs.webkit.org/show_bug.cgi?id=216993
     5
     6        Reviewed by Said Abou-Hallawa.
     7
     8        renderingUpdateScheduler() should be an implementation detail of Page.
     9
     10        Also add some explanatory comments.
     11
     12        * dom/Document.cpp:
     13        (WebCore::Document::scheduleTimedRenderingUpdate):
     14        * dom/ScriptedAnimationController.cpp:
     15        (WebCore::ScriptedAnimationController::scheduleAnimation):
     16        * page/Page.cpp:
     17        (WebCore::Page::scheduleImmediateRenderingUpdate):
     18        * page/Page.h:
     19        * page/PageOverlayController.cpp:
     20        (WebCore::PageOverlayController::didChangeViewExposedRect):
     21        (WebCore::PageOverlayController::notifyFlushRequired):
     22        * page/mac/ServicesOverlayController.mm:
     23        (WebCore::ServicesOverlayController::Highlight::notifyFlushRequired):
     24        * rendering/RenderLayerCompositor.cpp:
     25        (WebCore::RenderLayerCompositor::layerTreeAsText):
     26
    1272020-09-25  Chris Dumez  <cdumez@apple.com>
    228
  • trunk/Source/WebCore/dom/Document.cpp

    r267593 r267611  
    75627562#endif
    75637563    if (auto page = this->page())
    7564         page->renderingUpdateScheduler().scheduleTimedRenderingUpdate();
     7564        page->scheduleTimedRenderingUpdate();
    75657565}
    75667566
  • trunk/Source/WebCore/dom/ScriptedAnimationController.cpp

    r266526 r267611  
    182182
    183183    if (auto* page = this->page())
    184         page->renderingUpdateScheduler().scheduleTimedRenderingUpdate();
     184        page->scheduleTimedRenderingUpdate();
    185185}
    186186
  • trunk/Source/WebCore/page/Page.cpp

    r267363 r267611  
    104104#include "RenderView.h"
    105105#include "RenderWidget.h"
     106#include "RenderingUpdateScheduler.h"
    106107#include "ResizeObserver.h"
    107108#include "ResourceUsageOverlay.h"
     
    14221423}
    14231424
     1425void Page::scheduleImmediateRenderingUpdate()
     1426{
     1427    renderingUpdateScheduler().scheduleImmediateRenderingUpdate();
     1428}
     1429
    14241430void Page::startTrackingRenderingUpdates()
    14251431{
  • trunk/Source/WebCore/page/Page.h

    r267254 r267611  
    3636#include "Region.h"
    3737#include "RegistrableDomain.h"
    38 #include "RenderingUpdateScheduler.h"
    3938#include "ScrollTypes.h"
    4039#include "ShouldRelaxThirdPartyCookieBlocking.h"
     
    132131class RenderObject;
    133132class ResourceUsageOverlay;
     133class RenderingUpdateScheduler;
    134134class ScrollLatchingController;
    135135class ScrollingCoordinator;
     
    267267    PerformanceMonitor* performanceMonitor() { return m_performanceMonitor.get(); }
    268268
    269     RenderingUpdateScheduler& renderingUpdateScheduler();
    270 
    271269    ValidationMessageClient* validationMessageClient() const { return m_validationMessageClient.get(); }
    272270    void updateValidationBubbleStateIfNeeded();
     
    493491   
    494492    WEBCORE_EXPORT void finalizeRenderingUpdate(OptionSet<FinalizeRenderingUpdateFlags>);
    495    
     493
     494    // Do immediate or timed update as dictated by the ChromeClient.
    496495    WEBCORE_EXPORT void scheduleRenderingUpdate();
     496    // Schedule an update that coordinates with display refresh; the normal kind of update.
    497497    void scheduleTimedRenderingUpdate();
    498    
     498    // Schedule an update in the current runloop; this is an eager update that may trigger rendering more than once per display refresh.
     499    void scheduleImmediateRenderingUpdate();
     500
    499501    WEBCORE_EXPORT void startTrackingRenderingUpdates();
    500502    WEBCORE_EXPORT unsigned renderingUpdateCount() const;
     
    814816
    815817    void doAfterUpdateRendering();
     818
     819    RenderingUpdateScheduler& renderingUpdateScheduler();
    816820
    817821    WheelEventTestMonitor& ensureWheelEventTestMonitor();
  • trunk/Source/WebCore/page/PageOverlayController.cpp

    r266157 r267611  
    319319void PageOverlayController::didChangeViewExposedRect()
    320320{
    321     m_page.renderingUpdateScheduler().scheduleTimedRenderingUpdate();
     321    m_page.scheduleTimedRenderingUpdate();
    322322}
    323323
     
    413413void PageOverlayController::notifyFlushRequired(const GraphicsLayer*)
    414414{
    415     m_page.renderingUpdateScheduler().scheduleTimedRenderingUpdate();
     415    m_page.scheduleTimedRenderingUpdate();
    416416}
    417417
  • trunk/Source/WebCore/page/mac/ServicesOverlayController.mm

    r266295 r267611  
    122122        return;
    123123
    124     m_controller->page().renderingUpdateScheduler().scheduleTimedRenderingUpdate();
     124    m_controller->page().scheduleTimedRenderingUpdate();
    125125}
    126126
  • trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp

    r267571 r267611  
    22672267
    22682268    flushPendingLayerChanges(true);
    2269     page().renderingUpdateScheduler().scheduleImmediateRenderingUpdate();
     2269    page().scheduleImmediateRenderingUpdate();
    22702270
    22712271    LayerTreeAsTextBehavior layerTreeBehavior = LayerTreeAsTextBehaviorNormal;
Note: See TracChangeset for help on using the changeset viewer.