Skip to content
  • barraclough@apple.com's avatar
    Process suppression should throttle scripted animations · bbd85caa
    barraclough@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=115812
    
    Reviewed by Simon Fraser.
    
    <rdar://problem/13799726>
    
    Source/WebCore: 
    
    * WebCore.exp.in:
        - Expose Page::setThrottled
    * dom/Document.cpp:
    (WebCore::Document::scriptedAnimationControllerSetThrottled):
    (WebCore):
    * dom/Document.h:
    (Document):
        - Forwards to ScriptedAnimationController::setThrottled
    * dom/ScriptedAnimationController.cpp:
    (WebCore::ScriptedAnimationController::setThrottled):
    (WebCore):
    * dom/ScriptedAnimationController.h:
        - Force use of a timer.
    (ScriptedAnimationController):
    * page/Page.cpp:
    (WebCore::Page::setThrottled):
    (WebCore):
    * page/Page.h:
    (Page):
        - When under throttling force the ScriptedAnimationController to use a timer.
    
    Source/WebKit2: 
    
    * WebProcess/WebPage/WebPage.cpp:
    (WebKit::WebPage::setThrottled):
    (WebKit):
    * WebProcess/WebPage/WebPage.h:
    (WebPage):
        - Added setThrottled, forwards to WebCore::Page.
    * WebProcess/WebProcess.cpp:
    (WebKit):
    (WebKit::WebProcess::setProcessSuppressionEnabled):
    * WebProcess/WebProcess.h:
    (WebProcess):
        - Intercept calls to setProcessSuppressionEnabled, also mark all pages as being throttled.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    bbd85caa