| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 "chrome/renderer/render_thread.h" | 5 #include "chrome/renderer/render_thread.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| 11 #include "base/shared_memory.h" | 11 #include "base/shared_memory.h" |
| 12 #include "base/stats_table.h" | 12 #include "base/stats_table.h" |
| 13 #include "chrome/common/chrome_switches.h" | 13 #include "chrome/common/chrome_switches.h" |
| 14 #include "chrome/common/render_messages.h" | 14 #include "chrome/common/render_messages.h" |
| 15 #include "chrome/common/notification_service.h" | 15 #include "chrome/common/notification_service.h" |
| 16 #include "chrome/common/url_constants.h" | 16 #include "chrome/common/url_constants.h" |
| 17 #include "chrome/plugin/npobject_util.h" | 17 #include "chrome/plugin/npobject_util.h" |
| 18 // TODO(port) | 18 // TODO(port) |
| 19 #if defined(OS_WIN) | 19 #if defined(OS_WIN) |
| 20 #include "chrome/plugin/plugin_channel.h" | 20 #include "chrome/plugin/plugin_channel.h" |
| 21 #else | 21 #else |
| 22 #include "base/scoped_handle.h" | 22 #include "base/scoped_handle.h" |
| 23 #include "chrome/plugin/plugin_channel_base.h" | 23 #include "chrome/plugin/plugin_channel_base.h" |
| 24 #include "webkit/glue/weburlrequest.h" | 24 #include "webkit/glue/weburlrequest.h" |
| 25 #endif | 25 #endif |
| 26 #include "chrome/renderer/extensions/extension_process_bindings.h" | 26 #include "chrome/renderer/extensions/extension_process_bindings.h" |
| 27 #include "chrome/renderer/extensions/loadtimes_extension_bindings.h" |
| 27 #include "chrome/renderer/extensions/renderer_extension_bindings.h" | 28 #include "chrome/renderer/extensions/renderer_extension_bindings.h" |
| 28 #include "chrome/renderer/net/render_dns_master.h" | 29 #include "chrome/renderer/net/render_dns_master.h" |
| 29 #include "chrome/renderer/render_process.h" | 30 #include "chrome/renderer/render_process.h" |
| 30 #include "chrome/renderer/render_view.h" | 31 #include "chrome/renderer/render_view.h" |
| 31 #include "chrome/renderer/renderer_webkitclient_impl.h" | 32 #include "chrome/renderer/renderer_webkitclient_impl.h" |
| 32 #include "chrome/renderer/user_script_slave.h" | 33 #include "chrome/renderer/user_script_slave.h" |
| 33 #include "chrome/renderer/visitedlink_slave.h" | 34 #include "chrome/renderer/visitedlink_slave.h" |
| 34 #include "third_party/WebKit/WebKit/chromium/public/WebCache.h" | 35 #include "third_party/WebKit/WebKit/chromium/public/WebCache.h" |
| 35 #include "third_party/WebKit/WebKit/chromium/public/WebKit.h" | 36 #include "third_party/WebKit/WebKit/chromium/public/WebKit.h" |
| 36 #include "third_party/WebKit/WebKit/chromium/public/WebString.h" | 37 #include "third_party/WebKit/WebKit/chromium/public/WebString.h" |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 | 263 |
| 263 // chrome-ui pages should not be accessible by normal content, and should | 264 // chrome-ui pages should not be accessible by normal content, and should |
| 264 // also be unable to script anything but themselves (to help limit the damage | 265 // also be unable to script anything but themselves (to help limit the damage |
| 265 // that a corrupt chrome-ui page could cause). | 266 // that a corrupt chrome-ui page could cause). |
| 266 WebString chrome_ui_scheme(ASCIIToUTF16(chrome::kChromeUIScheme)); | 267 WebString chrome_ui_scheme(ASCIIToUTF16(chrome::kChromeUIScheme)); |
| 267 WebKit::registerURLSchemeAsLocal(chrome_ui_scheme); | 268 WebKit::registerURLSchemeAsLocal(chrome_ui_scheme); |
| 268 WebKit::registerURLSchemeAsNoAccess(chrome_ui_scheme); | 269 WebKit::registerURLSchemeAsNoAccess(chrome_ui_scheme); |
| 269 | 270 |
| 270 WebKit::registerExtension(extensions_v8::GearsExtension::Get()); | 271 WebKit::registerExtension(extensions_v8::GearsExtension::Get()); |
| 271 WebKit::registerExtension(extensions_v8::IntervalExtension::Get()); | 272 WebKit::registerExtension(extensions_v8::IntervalExtension::Get()); |
| 273 WebKit::registerExtension(extensions_v8::LoadTimesExtension::Get()); |
| 272 WebKit::registerExtension( | 274 WebKit::registerExtension( |
| 273 extensions_v8::RendererExtensionBindings::Get(this)); | 275 extensions_v8::RendererExtensionBindings::Get(this)); |
| 274 | 276 |
| 275 WebKit::registerExtension(extensions_v8::ExtensionProcessBindings::Get(), | 277 WebKit::registerExtension(extensions_v8::ExtensionProcessBindings::Get(), |
| 276 WebKit::WebString::fromUTF8(chrome::kExtensionScheme)); | 278 WebKit::WebString::fromUTF8(chrome::kExtensionScheme)); |
| 277 | 279 |
| 278 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 280 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); |
| 279 if (command_line.HasSwitch(switches::kPlaybackMode) || | 281 if (command_line.HasSwitch(switches::kPlaybackMode) || |
| 280 command_line.HasSwitch(switches::kRecordMode)) { | 282 command_line.HasSwitch(switches::kRecordMode)) { |
| 281 WebKit::registerExtension(extensions_v8::PlaybackExtension::Get()); | 283 WebKit::registerExtension(extensions_v8::PlaybackExtension::Get()); |
| 282 } | 284 } |
| 283 | 285 |
| 284 if (command_line.HasSwitch(switches::kEnableWebWorkers)) { | 286 if (command_line.HasSwitch(switches::kEnableWebWorkers)) { |
| 285 WebKit::enableWebWorkers(); | 287 WebKit::enableWebWorkers(); |
| 286 } | 288 } |
| 287 } | 289 } |
| 288 | 290 |
| 289 void RenderThread::OnExtensionHandleConnect(int port_id) { | 291 void RenderThread::OnExtensionHandleConnect(int port_id) { |
| 290 extensions_v8::RendererExtensionBindings::HandleConnect(port_id); | 292 extensions_v8::RendererExtensionBindings::HandleConnect(port_id); |
| 291 } | 293 } |
| 292 | 294 |
| 293 void RenderThread::OnExtensionHandleMessage(const std::string& message, | 295 void RenderThread::OnExtensionHandleMessage(const std::string& message, |
| 294 int port_id) { | 296 int port_id) { |
| 295 extensions_v8::RendererExtensionBindings::HandleMessage(message, port_id); | 297 extensions_v8::RendererExtensionBindings::HandleMessage(message, port_id); |
| 296 } | 298 } |
| OLD | NEW |