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

Side by Side Diff: content/renderer/gpu/render_widget_compositor.cc

Issue 504373002: Don't destroy RenderWidgetCompositor during DoDeferredClose (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/gpu/render_widget_compositor.h" 5 #include "content/renderer/gpu/render_widget_compositor.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 489 matching lines...) Expand 10 before | Expand all | Expand 10 after
500 const base::Callback<void(scoped_ptr<base::Value>)>& callback) { 500 const base::Callback<void(scoped_ptr<base::Value>)>& callback) {
501 return layer_tree_host_->ScheduleMicroBenchmark(name, value.Pass(), callback); 501 return layer_tree_host_->ScheduleMicroBenchmark(name, value.Pass(), callback);
502 } 502 }
503 503
504 bool RenderWidgetCompositor::SendMessageToMicroBenchmark( 504 bool RenderWidgetCompositor::SendMessageToMicroBenchmark(
505 int id, 505 int id,
506 scoped_ptr<base::Value> value) { 506 scoped_ptr<base::Value> value) {
507 return layer_tree_host_->SendMessageToMicroBenchmark(id, value.Pass()); 507 return layer_tree_host_->SendMessageToMicroBenchmark(id, value.Pass());
508 } 508 }
509 509
510 void RenderWidgetCompositor::Shutdown() {
511 layer_tree_host_->SetLayerTreeHostClientFinished();
512 }
513
510 void RenderWidgetCompositor::Initialize(cc::LayerTreeSettings settings) { 514 void RenderWidgetCompositor::Initialize(cc::LayerTreeSettings settings) {
511 scoped_refptr<base::MessageLoopProxy> compositor_message_loop_proxy; 515 scoped_refptr<base::MessageLoopProxy> compositor_message_loop_proxy;
512 RenderThreadImpl* render_thread = RenderThreadImpl::current(); 516 RenderThreadImpl* render_thread = RenderThreadImpl::current();
513 cc::SharedBitmapManager* shared_bitmap_manager = NULL; 517 cc::SharedBitmapManager* shared_bitmap_manager = NULL;
514 // render_thread may be NULL in tests. 518 // render_thread may be NULL in tests.
515 if (render_thread) { 519 if (render_thread) {
516 compositor_message_loop_proxy = 520 compositor_message_loop_proxy =
517 render_thread->compositor_message_loop_proxy(); 521 render_thread->compositor_message_loop_proxy();
518 shared_bitmap_manager = render_thread->shared_bitmap_manager(); 522 shared_bitmap_manager = render_thread->shared_bitmap_manager();
519 } 523 }
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
804 widget_->OnSwapBuffersAborted(); 808 widget_->OnSwapBuffersAborted();
805 } 809 }
806 810
807 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { 811 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() {
808 cc::ContextProvider* provider = 812 cc::ContextProvider* provider =
809 RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); 813 RenderThreadImpl::current()->SharedMainThreadContextProvider().get();
810 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM(); 814 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM();
811 } 815 }
812 816
813 } // namespace content 817 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698