| OLD | NEW |
| 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/renderer_blink_platform_impl.h" | 5 #include "content/renderer/renderer_blink_platform_impl.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 244 : BlinkPlatformImpl(renderer_scheduler->DefaultTaskRunner()), | 244 : BlinkPlatformImpl(renderer_scheduler->DefaultTaskRunner()), |
| 245 main_thread_(renderer_scheduler->CreateMainThread()), | 245 main_thread_(renderer_scheduler->CreateMainThread()), |
| 246 clipboard_delegate_(new RendererClipboardDelegate), | 246 clipboard_delegate_(new RendererClipboardDelegate), |
| 247 clipboard_(new WebClipboardImpl(clipboard_delegate_.get())), | 247 clipboard_(new WebClipboardImpl(clipboard_delegate_.get())), |
| 248 sudden_termination_disables_(0), | 248 sudden_termination_disables_(0), |
| 249 plugin_refresh_allowed_(true), | 249 plugin_refresh_allowed_(true), |
| 250 default_task_runner_(renderer_scheduler->DefaultTaskRunner()), | 250 default_task_runner_(renderer_scheduler->DefaultTaskRunner()), |
| 251 loading_task_runner_(renderer_scheduler->LoadingTaskRunner()), | 251 loading_task_runner_(renderer_scheduler->LoadingTaskRunner()), |
| 252 web_scrollbar_behavior_(new WebScrollbarBehaviorImpl), | 252 web_scrollbar_behavior_(new WebScrollbarBehaviorImpl), |
| 253 renderer_scheduler_(renderer_scheduler), | 253 renderer_scheduler_(renderer_scheduler), |
| 254 blink_connector_(new BlinkConnectorImpl(nullptr)), | |
| 255 blink_interface_provider_(new BlinkInterfaceProviderImpl(connector)) { | 254 blink_interface_provider_(new BlinkInterfaceProviderImpl(connector)) { |
| 256 #if !defined(OS_ANDROID) && !defined(OS_WIN) | 255 #if !defined(OS_ANDROID) && !defined(OS_WIN) |
| 257 if (g_sandbox_enabled && sandboxEnabled()) { | 256 if (g_sandbox_enabled && sandboxEnabled()) { |
| 258 sandbox_support_.reset(new RendererBlinkPlatformImpl::SandboxSupport); | 257 sandbox_support_.reset(new RendererBlinkPlatformImpl::SandboxSupport); |
| 259 } else { | 258 } else { |
| 260 DVLOG(1) << "Disabling sandbox support for testing."; | 259 DVLOG(1) << "Disabling sandbox support for testing."; |
| 261 } | 260 } |
| 262 #endif | 261 #endif |
| 263 | 262 |
| 264 // RenderThread may not exist in some tests. | 263 // RenderThread may not exist in some tests. |
| 265 if (RenderThreadImpl::current()) { | 264 if (RenderThreadImpl::current()) { |
| 266 blink_connector_->SetConnector(RenderThreadImpl::current() | 265 connector_ = RenderThreadImpl::current() |
| 267 ->GetServiceManagerConnection() | 266 ->GetServiceManagerConnection() |
| 268 ->GetConnector() | 267 ->GetConnector() |
| 269 ->Clone()); | 268 ->Clone(); |
| 270 sync_message_filter_ = RenderThreadImpl::current()->sync_message_filter(); | 269 sync_message_filter_ = RenderThreadImpl::current()->sync_message_filter(); |
| 271 thread_safe_sender_ = RenderThreadImpl::current()->thread_safe_sender(); | 270 thread_safe_sender_ = RenderThreadImpl::current()->thread_safe_sender(); |
| 272 quota_message_filter_ = RenderThreadImpl::current()->quota_message_filter(); | 271 quota_message_filter_ = RenderThreadImpl::current()->quota_message_filter(); |
| 273 shared_bitmap_manager_ = | 272 shared_bitmap_manager_ = |
| 274 RenderThreadImpl::current()->shared_bitmap_manager(); | 273 RenderThreadImpl::current()->shared_bitmap_manager(); |
| 275 blob_registry_.reset(new WebBlobRegistryImpl( | 274 blob_registry_.reset(new WebBlobRegistryImpl( |
| 276 RenderThreadImpl::current()->GetIOTaskRunner().get(), | 275 RenderThreadImpl::current()->GetIOTaskRunner().get(), |
| 277 base::ThreadTaskRunnerHandle::Get(), thread_safe_sender_.get())); | 276 base::ThreadTaskRunnerHandle::Get(), thread_safe_sender_.get())); |
| 278 web_idb_factory_.reset(new WebIDBFactoryImpl( | 277 web_idb_factory_.reset(new WebIDBFactoryImpl( |
| 279 sync_message_filter_, | 278 sync_message_filter_, |
| 280 RenderThreadImpl::current()->GetIOTaskRunner().get())); | 279 RenderThreadImpl::current()->GetIOTaskRunner().get())); |
| 281 web_database_observer_impl_.reset( | 280 web_database_observer_impl_.reset( |
| 282 new WebDatabaseObserverImpl(sync_message_filter_.get())); | 281 new WebDatabaseObserverImpl(sync_message_filter_.get())); |
| 282 } else { |
| 283 service_manager::mojom::ConnectorRequest request; |
| 284 connector_ = service_manager::Connector::Create(&request); |
| 283 } | 285 } |
| 284 | 286 |
| 285 top_level_blame_context_.Initialize(); | 287 top_level_blame_context_.Initialize(); |
| 286 renderer_scheduler_->SetTopLevelBlameContext(&top_level_blame_context_); | 288 renderer_scheduler_->SetTopLevelBlameContext(&top_level_blame_context_); |
| 287 } | 289 } |
| 288 | 290 |
| 289 RendererBlinkPlatformImpl::~RendererBlinkPlatformImpl() { | 291 RendererBlinkPlatformImpl::~RendererBlinkPlatformImpl() { |
| 290 WebFileSystemImpl::DeleteThreadSpecificInstance(); | 292 WebFileSystemImpl::DeleteThreadSpecificInstance(); |
| 291 renderer_scheduler_->SetTopLevelBlameContext(nullptr); | 293 renderer_scheduler_->SetTopLevelBlameContext(nullptr); |
| 292 shared_bitmap_manager_ = nullptr; | 294 shared_bitmap_manager_ = nullptr; |
| (...skipping 861 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1154 } | 1156 } |
| 1155 | 1157 |
| 1156 void RendererBlinkPlatformImpl::SetPlatformEventObserverForTesting( | 1158 void RendererBlinkPlatformImpl::SetPlatformEventObserverForTesting( |
| 1157 blink::WebPlatformEventType type, | 1159 blink::WebPlatformEventType type, |
| 1158 std::unique_ptr<PlatformEventObserverBase> observer) { | 1160 std::unique_ptr<PlatformEventObserverBase> observer) { |
| 1159 if (platform_event_observers_.Lookup(type)) | 1161 if (platform_event_observers_.Lookup(type)) |
| 1160 platform_event_observers_.Remove(type); | 1162 platform_event_observers_.Remove(type); |
| 1161 platform_event_observers_.AddWithID(std::move(observer), type); | 1163 platform_event_observers_.AddWithID(std::move(observer), type); |
| 1162 } | 1164 } |
| 1163 | 1165 |
| 1164 BlinkConnectorImpl* RendererBlinkPlatformImpl::connector() { | 1166 service_manager::Connector* RendererBlinkPlatformImpl::connector() { |
| 1165 return blink_connector_.get(); | 1167 return connector_.get(); |
| 1166 } | 1168 } |
| 1167 | 1169 |
| 1168 blink::InterfaceProvider* RendererBlinkPlatformImpl::interfaceProvider() { | 1170 blink::InterfaceProvider* RendererBlinkPlatformImpl::interfaceProvider() { |
| 1169 return blink_interface_provider_.get(); | 1171 return blink_interface_provider_.get(); |
| 1170 } | 1172 } |
| 1171 | 1173 |
| 1172 void RendererBlinkPlatformImpl::startListening( | 1174 void RendererBlinkPlatformImpl::startListening( |
| 1173 blink::WebPlatformEventType type, | 1175 blink::WebPlatformEventType type, |
| 1174 blink::WebPlatformEventListener* listener) { | 1176 blink::WebPlatformEventListener* listener) { |
| 1175 PlatformEventObserverBase* observer = platform_event_observers_.Lookup(type); | 1177 PlatformEventObserverBase* observer = platform_event_observers_.Lookup(type); |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1272 //------------------------------------------------------------------------------ | 1274 //------------------------------------------------------------------------------ |
| 1273 void RendererBlinkPlatformImpl::requestPurgeMemory() { | 1275 void RendererBlinkPlatformImpl::requestPurgeMemory() { |
| 1274 // TODO(tasak|bashi): We should use ChildMemoryCoordinator here, but | 1276 // TODO(tasak|bashi): We should use ChildMemoryCoordinator here, but |
| 1275 // ChildMemoryCoordinator isn't always available as it's only initialized | 1277 // ChildMemoryCoordinator isn't always available as it's only initialized |
| 1276 // when kMemoryCoordinatorV0 is enabled. | 1278 // when kMemoryCoordinatorV0 is enabled. |
| 1277 // Use ChildMemoryCoordinator when memory coordinator is always enabled. | 1279 // Use ChildMemoryCoordinator when memory coordinator is always enabled. |
| 1278 base::MemoryCoordinatorClientRegistry::GetInstance()->PurgeMemory(); | 1280 base::MemoryCoordinatorClientRegistry::GetInstance()->PurgeMemory(); |
| 1279 } | 1281 } |
| 1280 | 1282 |
| 1281 } // namespace content | 1283 } // namespace content |
| OLD | NEW |