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

Side by Side Diff: content/renderer/render_thread_impl.cc

Issue 2383473002: [scheduler] Teach scheduler about audio state (Closed)
Patch Set: Created 4 years, 2 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/render_thread_impl.h" 5 #include "content/renderer/render_thread_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <map> 9 #include <map>
10 #include <utility> 10 #include <utility>
(...skipping 1719 matching lines...) Expand 10 before | Expand all | Expand 10 after
1730 ChildThreadImpl::OnProcessBackgrounded(backgrounded); 1730 ChildThreadImpl::OnProcessBackgrounded(backgrounded);
1731 1731
1732 if (backgrounded) { 1732 if (backgrounded) {
1733 renderer_scheduler_->OnRendererBackgrounded(); 1733 renderer_scheduler_->OnRendererBackgrounded();
1734 } else { 1734 } else {
1735 renderer_scheduler_->OnRendererForegrounded(); 1735 renderer_scheduler_->OnRendererForegrounded();
1736 is_renderer_suspended_ = false; 1736 is_renderer_suspended_ = false;
1737 } 1737 }
1738 } 1738 }
1739 1739
1740 void RenderThreadImpl::OnAudioStateChanged(bool has_active_audio) {
1741 ChildThreadImpl::OnAudioStateChanged(has_active_audio);
1742
1743 if (has_active_audio) {
1744 renderer_scheduler_->OnAudioStarted();
1745 } else {
1746 renderer_scheduler_->OnAudioStopped();
1747 }
1748 }
1749
1740 void RenderThreadImpl::OnProcessPurgeAndSuspend() { 1750 void RenderThreadImpl::OnProcessPurgeAndSuspend() {
1741 ChildThreadImpl::OnProcessPurgeAndSuspend(); 1751 ChildThreadImpl::OnProcessPurgeAndSuspend();
1742 if (is_renderer_suspended_) 1752 if (is_renderer_suspended_)
1743 return; 1753 return;
1744 // TODO(hajimehoshi): Implement purging e.g. cache (crbug/607077) 1754 // TODO(hajimehoshi): Implement purging e.g. cache (crbug/607077)
1745 is_renderer_suspended_ = true; 1755 is_renderer_suspended_ = true;
1746 renderer_scheduler_->SuspendRenderer(); 1756 renderer_scheduler_->SuspendRenderer();
1747 } 1757 }
1748 1758
1749 void RenderThreadImpl::OnCreateNewFrame(FrameMsg_NewFrame_Params params) { 1759 void RenderThreadImpl::OnCreateNewFrame(FrameMsg_NewFrame_Params params) {
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after
2296 if (blink::mainThreadIsolate()) { 2306 if (blink::mainThreadIsolate()) {
2297 blink::mainThreadIsolate()->MemoryPressureNotification( 2307 blink::mainThreadIsolate()->MemoryPressureNotification(
2298 v8::MemoryPressureLevel::kCritical); 2308 v8::MemoryPressureLevel::kCritical);
2299 blink::MemoryPressureNotificationToWorkerThreadIsolates( 2309 blink::MemoryPressureNotificationToWorkerThreadIsolates(
2300 v8::MemoryPressureLevel::kCritical); 2310 v8::MemoryPressureLevel::kCritical);
2301 } 2311 }
2302 } 2312 }
2303 2313
2304 2314
2305 } // namespace content 2315 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698