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

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

Issue 2079943002: Change RenderFrame to use InterfaceRegistry et al. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@a2
Patch Set: . Created 4 years, 6 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 806 matching lines...) Expand 10 before | Expand all | Expand 10 after
817 are_image_decode_tasks_enabled_ = true; 817 are_image_decode_tasks_enabled_ = true;
818 818
819 categorized_worker_pool_->Start(num_raster_threads); 819 categorized_worker_pool_->Start(num_raster_threads);
820 820
821 // TODO(boliu): In single process, browser main loop should set up the 821 // TODO(boliu): In single process, browser main loop should set up the
822 // discardable memory manager, and should skip this if kSingleProcess. 822 // discardable memory manager, and should skip this if kSingleProcess.
823 // See crbug.com/503724. 823 // See crbug.com/503724.
824 base::DiscardableMemoryAllocator::SetInstance( 824 base::DiscardableMemoryAllocator::SetInstance(
825 ChildThreadImpl::discardable_shared_memory_manager()); 825 ChildThreadImpl::discardable_shared_memory_manager());
826 826
827 GetContentClient()->renderer()->RegisterProcessMojoServices( 827 GetContentClient()->renderer()->RegisterProcessMojoInterfaces(
828 service_registry()); 828 interface_registry());
829 829
830 service_registry()->AddService(base::Bind(CreateFrameFactory)); 830 interface_registry()->AddInterface(base::Bind(CreateFrameFactory));
831 service_registry()->AddService(base::Bind(CreateEmbeddedWorkerSetup)); 831 interface_registry()->AddInterface(base::Bind(CreateEmbeddedWorkerSetup));
832 832
833 #if defined(MOJO_SHELL_CLIENT) 833 #if defined(MOJO_SHELL_CLIENT)
834 // We may not have a MojoShellConnection object in tests that directly 834 // We may not have a MojoShellConnection object in tests that directly
835 // instantiate a RenderThreadImpl. 835 // instantiate a RenderThreadImpl.
836 if (MojoShellConnection::GetForProcess() && 836 if (MojoShellConnection::GetForProcess() &&
837 base::CommandLine::ForCurrentProcess()->HasSwitch( 837 base::CommandLine::ForCurrentProcess()->HasSwitch(
838 switches::kUseMusInRenderer)) 838 switches::kUseMusInRenderer))
839 CreateRenderWidgetWindowTreeClientFactory(); 839 CreateRenderWidgetWindowTreeClientFactory();
840 #endif 840 #endif
841 841
842 service_registry()->ConnectToRemoteService( 842 remote_interfaces()->GetInterface(
843 mojo::GetProxy(&storage_partition_service_)); 843 mojo::GetProxy(&storage_partition_service_));
844 844
845 is_renderer_suspended_ = false; 845 is_renderer_suspended_ = false;
846 } 846 }
847 847
848 RenderThreadImpl::~RenderThreadImpl() { 848 RenderThreadImpl::~RenderThreadImpl() {
849 } 849 }
850 850
851 void RenderThreadImpl::Shutdown() { 851 void RenderThreadImpl::Shutdown() {
852 FOR_EACH_OBSERVER( 852 FOR_EACH_OBSERVER(
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after
1149 1149
1150 #ifdef ENABLE_VTUNE_JIT_INTERFACE 1150 #ifdef ENABLE_VTUNE_JIT_INTERFACE
1151 if (command_line.HasSwitch(switches::kEnableVtune)) 1151 if (command_line.HasSwitch(switches::kEnableVtune))
1152 gin::Debug::SetJitCodeEventHandler(vTune::GetVtuneCodeEventHandler()); 1152 gin::Debug::SetJitCodeEventHandler(vTune::GetVtuneCodeEventHandler());
1153 #endif 1153 #endif
1154 1154
1155 SetRuntimeFeaturesDefaultsAndUpdateFromArgs(command_line); 1155 SetRuntimeFeaturesDefaultsAndUpdateFromArgs(command_line);
1156 1156
1157 blink_platform_impl_.reset(new RendererBlinkPlatformImpl( 1157 blink_platform_impl_.reset(new RendererBlinkPlatformImpl(
1158 renderer_scheduler_.get(), 1158 renderer_scheduler_.get(),
1159 static_cast<ServiceRegistryImpl*>(service_registry())->GetWeakPtr())); 1159 remote_interfaces()->GetWeakPtr()));
1160 blink::initialize(blink_platform_impl_.get()); 1160 blink::initialize(blink_platform_impl_.get());
1161 1161
1162 v8::Isolate* isolate = blink::mainThreadIsolate(); 1162 v8::Isolate* isolate = blink::mainThreadIsolate();
1163 isolate->SetCreateHistogramFunction(CreateHistogram); 1163 isolate->SetCreateHistogramFunction(CreateHistogram);
1164 isolate->SetAddHistogramSampleFunction(AddHistogramSample); 1164 isolate->SetAddHistogramSampleFunction(AddHistogramSample);
1165 1165
1166 main_thread_compositor_task_runner_ = 1166 main_thread_compositor_task_runner_ =
1167 renderer_scheduler_->CompositorTaskRunner(); 1167 renderer_scheduler_->CompositorTaskRunner();
1168 1168
1169 main_input_callback_.Reset( 1169 main_input_callback_.Reset(
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after
1537 } 1537 }
1538 1538
1539 #if defined(OS_WIN) 1539 #if defined(OS_WIN)
1540 void RenderThreadImpl::PreCacheFontCharacters(const LOGFONT& log_font, 1540 void RenderThreadImpl::PreCacheFontCharacters(const LOGFONT& log_font,
1541 const base::string16& str) { 1541 const base::string16& str) {
1542 Send(new RenderProcessHostMsg_PreCacheFontCharacters(log_font, str)); 1542 Send(new RenderProcessHostMsg_PreCacheFontCharacters(log_font, str));
1543 } 1543 }
1544 1544
1545 #endif // OS_WIN 1545 #endif // OS_WIN
1546 1546
1547 ServiceRegistry* RenderThreadImpl::GetServiceRegistry() { 1547 shell::InterfaceRegistry* RenderThreadImpl::GetInterfaceRegistry() {
1548 DCHECK(service_registry()); 1548 DCHECK(interface_registry());
1549 return service_registry(); 1549 return interface_registry();
1550 }
1551
1552 shell::InterfaceProvider* RenderThreadImpl::GetRemoteInterfaces() {
1553 DCHECK(remote_interfaces());
1554 return remote_interfaces();
1550 } 1555 }
1551 1556
1552 bool RenderThreadImpl::IsGpuRasterizationForced() { 1557 bool RenderThreadImpl::IsGpuRasterizationForced() {
1553 return is_gpu_rasterization_forced_; 1558 return is_gpu_rasterization_forced_;
1554 } 1559 }
1555 1560
1556 bool RenderThreadImpl::IsGpuRasterizationEnabled() { 1561 bool RenderThreadImpl::IsGpuRasterizationEnabled() {
1557 return is_gpu_rasterization_enabled_; 1562 return is_gpu_rasterization_enabled_;
1558 } 1563 }
1559 1564
(...skipping 653 matching lines...) Expand 10 before | Expand all | Expand 10 after
2213 v8_memory_pressure_level == v8::MemoryPressureLevel::kCritical) 2218 v8_memory_pressure_level == v8::MemoryPressureLevel::kCritical)
2214 v8_memory_pressure_level = v8::MemoryPressureLevel::kModerate; 2219 v8_memory_pressure_level = v8::MemoryPressureLevel::kModerate;
2215 2220
2216 blink::mainThreadIsolate()->MemoryPressureNotification( 2221 blink::mainThreadIsolate()->MemoryPressureNotification(
2217 v8_memory_pressure_level); 2222 v8_memory_pressure_level);
2218 blink::MemoryPressureNotificationToWorkerThreadIsolates( 2223 blink::MemoryPressureNotificationToWorkerThreadIsolates(
2219 v8_memory_pressure_level); 2224 v8_memory_pressure_level);
2220 } 2225 }
2221 2226
2222 } // namespace content 2227 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698