// Multiple suspend of ActiveDOMObject makes unintended suspend/resume status of
// the ActiveDOMObject.
if (!impl->suspendedResources && (!impl->isWaitingForJavaScriptPopupReply || !impl->isWaitingForApplicationCachePermission || !impl->isWaitingForExceededQuotaPopupReply)) {
+ impl->pageProxy->suspendAnimations();
impl->pageProxy->suspendJavaScriptAndResource();
- impl->pageProxy->suspendActiveDOMObjectsAndAnimations();
impl->suspendedResources = true;
}
// Multiple suspend of ActiveDOMObject makes unintended suspend/resume status of
// the ActiveDOMObject.
if (impl->suspendedResources && (!impl->isWaitingForJavaScriptPopupReply || !impl->isWaitingForApplicationCachePermission || !impl->isWaitingForExceededQuotaPopupReply)) {
+ impl->pageProxy->resumeAnimations();
impl->pageProxy->resumeJavaScriptAndResource();
- impl->pageProxy->resumeActiveDOMObjectsAndAnimations();
impl->suspendedResources = false;
}
void suspendJavaScriptAndResource();
void resumeJavaScriptAndResource();
+ void suspendAnimations();
+ void resumeAnimations();
+
#if ENABLE(TIZEN_PLUGIN_SUSPEND_RESUME)
void suspendPlugin();
void resumePlugin();
process()->send(Messages::WebPage::ResumeJavaScriptAndResources(), m_pageID);
}
+void WebPageProxy::suspendAnimations()
+{
+ if (!isValid())
+ return;
+
+ process()->send(Messages::WebPage::SuspendAnimations(), m_pageID);
+}
+
+void WebPageProxy::resumeAnimations()
+{
+ if (!isValid())
+ return;
+
+ process()->send(Messages::WebPage::ResumeAnimations(), m_pageID);
+}
+
#if ENABLE(TIZEN_PLUGIN_SUSPEND_RESUME)
void WebPageProxy::suspendPlugin()
{
void suspendJavaScriptAndResources();
void resumeJavaScriptAndResources();
+
+ void suspendAnimations();
+ void resumeAnimations();
+
#if ENABLE(TIZEN_SYNC_REQUEST_ANIMATION_FRAME)
void suspendAnimationController();
void resumeAnimationController();
#endif
SuspendJavaScriptAndResources()
ResumeJavaScriptAndResources()
+
+ SuspendAnimations()
+ ResumeAnimations()
#endif
#if ENABLE(TIZEN_WEB_STORAGE)
mainFrame->loader()->resumeAllLoaders();
}
+void WebPage::suspendAnimations()
+{
+ Frame* mainFrame = m_page->mainFrame();
+ if (!mainFrame)
+ return;
+
+ for (Frame* frame = mainFrame; frame; frame = frame->tree()->traverseNext())
+ frame->animation()->suspendAnimationsForDocument(frame->document());
+}
+
+void WebPage::resumeAnimations()
+{
+ Frame* mainFrame = m_page->mainFrame();
+ if (!mainFrame)
+ return;
+
+ for (Frame* frame = mainFrame; frame; frame = frame->tree()->traverseNext())
+ frame->animation()->resumeAnimationsForDocument(frame->document());
+}
+
#if ENABLE(TIZEN_SYNC_REQUEST_ANIMATION_FRAME)
void WebPage::suspendAnimationController()
{