Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1046)

Unified Diff: content/renderer/render_thread_impl.cc

Issue 1133143003: [Android] Suspend shared timers for hidden renderers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@input_remove_suspend
Patch Set: Use ContentRendererClient Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/render_thread_impl.h ('k') | content/test/fake_renderer_scheduler.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_thread_impl.cc
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index 18daea92a8e0d7d9d41494c8bece73b3cf6548df..47371369dcb397885bf54f69dbdb24ae27e2b1cc 100644
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -1156,6 +1156,11 @@ void RenderThreadImpl::EnsureWebKitInitialized() {
if (GetContentClient()->renderer()->RunIdleHandlerWhenWidgetsHidden())
ScheduleIdleHandler(kLongIdleHandlerDelayMs);
+ renderer_scheduler_->SetTimerQueueSuspensionWhenBackgroundedEnabled(
+ GetContentClient()
+ ->renderer()
+ ->AllowTimerSuspensionWhenProcessBackgrounded());
+
cc_blink::SetSharedBitmapAllocationFunction(AllocateSharedBitmapFunction);
SkGraphics::SetResourceCacheSingleAllocationByteLimit(
@@ -1619,6 +1624,15 @@ bool RenderThreadImpl::OnControlMessageReceived(const IPC::Message& msg) {
return handled;
}
+void RenderThreadImpl::OnProcessBackgrounded(bool backgrounded) {
+ ChildThreadImpl::OnProcessBackgrounded(backgrounded);
+
+ if (backgrounded)
+ renderer_scheduler_->OnRendererBackgrounded();
+ else
+ renderer_scheduler_->OnRendererForegrounded();
+}
+
void RenderThreadImpl::OnCreateNewFrame(FrameMsg_NewFrame_Params params) {
CompositorDependencies* compositor_deps = this;
RenderFrameImpl::CreateFrame(
« no previous file with comments | « content/renderer/render_thread_impl.h ('k') | content/test/fake_renderer_scheduler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698