Process suppression should throttle scripted animations
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
13 files changed