OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 // Represents the browser side of the browser <--> renderer communication | 5 // Represents the browser side of the browser <--> renderer communication |
6 // channel. There will be one RenderProcessHost per renderer process. | 6 // channel. There will be one RenderProcessHost per renderer process. |
7 | 7 |
8 #include "chrome/browser/renderer_host/browser_render_process_host.h" | 8 #include "chrome/browser/renderer_host/browser_render_process_host.h" |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 #include "chrome/browser/renderer_host/render_view_host.h" | 58 #include "chrome/browser/renderer_host/render_view_host.h" |
59 #include "chrome/browser/renderer_host/render_view_host_delegate.h" | 59 #include "chrome/browser/renderer_host/render_view_host_delegate.h" |
60 #include "chrome/browser/renderer_host/render_widget_helper.h" | 60 #include "chrome/browser/renderer_host/render_widget_helper.h" |
61 #include "chrome/browser/renderer_host/render_widget_host.h" | 61 #include "chrome/browser/renderer_host/render_widget_host.h" |
62 #include "chrome/browser/renderer_host/resource_message_filter.h" | 62 #include "chrome/browser/renderer_host/resource_message_filter.h" |
63 #include "chrome/browser/renderer_host/socket_stream_dispatcher_host.h" | 63 #include "chrome/browser/renderer_host/socket_stream_dispatcher_host.h" |
64 #include "chrome/browser/renderer_host/web_cache_manager.h" | 64 #include "chrome/browser/renderer_host/web_cache_manager.h" |
65 #include "chrome/browser/safe_browsing/client_side_detection_service.h" | 65 #include "chrome/browser/safe_browsing/client_side_detection_service.h" |
66 #include "chrome/browser/search_engines/search_provider_install_state_message_fi
lter.h" | 66 #include "chrome/browser/search_engines/search_provider_install_state_message_fi
lter.h" |
67 #include "chrome/browser/speech/speech_input_dispatcher_host.h" | 67 #include "chrome/browser/speech/speech_input_dispatcher_host.h" |
| 68 #include "chrome/browser/speech/speech_input_manager.h" |
68 #include "chrome/browser/spellcheck_host.h" | 69 #include "chrome/browser/spellcheck_host.h" |
69 #include "chrome/browser/metrics/user_metrics.h" | 70 #include "chrome/browser/metrics/user_metrics.h" |
70 #include "chrome/browser/visitedlink/visitedlink_master.h" | 71 #include "chrome/browser/visitedlink/visitedlink_master.h" |
71 #include "chrome/browser/worker_host/worker_message_filter.h" | 72 #include "chrome/browser/worker_host/worker_message_filter.h" |
72 #include "chrome/common/chrome_paths.h" | 73 #include "chrome/common/chrome_paths.h" |
73 #include "chrome/common/chrome_switches.h" | 74 #include "chrome/common/chrome_switches.h" |
74 #include "chrome/common/child_process_info.h" | 75 #include "chrome/common/child_process_info.h" |
75 #include "chrome/common/extensions/extension.h" | 76 #include "chrome/common/extensions/extension.h" |
76 #include "chrome/common/extensions/extension_icon_set.h" | 77 #include "chrome/common/extensions/extension_icon_set.h" |
77 #include "chrome/common/gpu_messages.h" | 78 #include "chrome/common/gpu_messages.h" |
(...skipping 703 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
781 | 782 |
782 void BrowserRenderProcessHost::InitExtensions() { | 783 void BrowserRenderProcessHost::InitExtensions() { |
783 // TODO(aa): Should only bother sending these function names if this is an | 784 // TODO(aa): Should only bother sending these function names if this is an |
784 // extension process. | 785 // extension process. |
785 std::vector<std::string> function_names; | 786 std::vector<std::string> function_names; |
786 ExtensionFunctionDispatcher::GetAllFunctionNames(&function_names); | 787 ExtensionFunctionDispatcher::GetAllFunctionNames(&function_names); |
787 Send(new ViewMsg_Extension_SetFunctionNames(function_names)); | 788 Send(new ViewMsg_Extension_SetFunctionNames(function_names)); |
788 } | 789 } |
789 | 790 |
790 void BrowserRenderProcessHost::InitSpeechInput() { | 791 void BrowserRenderProcessHost::InitSpeechInput() { |
791 bool enabled = true; | 792 Send(new ViewMsg_SpeechInput_SetFeatureEnabled( |
792 const CommandLine& command_line = *CommandLine::ForCurrentProcess(); | 793 speech_input::SpeechInputManager::IsFeatureEnabled())); |
793 | |
794 if (command_line.HasSwitch(switches::kDisableSpeechInput)) { | |
795 enabled = false; | |
796 #if defined(GOOGLE_CHROME_BUILD) | |
797 } else if (!command_line.HasSwitch(switches::kEnableSpeechInput)) { | |
798 // We need to evaluate whether IO is OK here. http://crbug.com/63335. | |
799 base::ThreadRestrictions::ScopedAllowIO allow_io; | |
800 // Official Chrome builds have speech input enabled by default only in the | |
801 // dev channel. | |
802 std::string channel = platform_util::GetVersionStringModifier(); | |
803 enabled = (channel == "dev"); | |
804 #endif | |
805 } | |
806 | |
807 Send(new ViewMsg_SpeechInput_SetFeatureEnabled(enabled)); | |
808 } | 794 } |
809 | 795 |
810 void BrowserRenderProcessHost::SendUserScriptsUpdate( | 796 void BrowserRenderProcessHost::SendUserScriptsUpdate( |
811 base::SharedMemory *shared_memory) { | 797 base::SharedMemory *shared_memory) { |
812 // Process is being started asynchronously. We'll end up calling | 798 // Process is being started asynchronously. We'll end up calling |
813 // InitUserScripts when it's created which will call this again. | 799 // InitUserScripts when it's created which will call this again. |
814 if (child_process_.get() && child_process_->IsStarting()) | 800 if (child_process_.get() && child_process_->IsStarting()) |
815 return; | 801 return; |
816 | 802 |
817 base::SharedMemoryHandle handle_for_process; | 803 base::SharedMemoryHandle handle_for_process; |
(...skipping 488 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1306 IPC::PlatformFileForTransit file; | 1292 IPC::PlatformFileForTransit file; |
1307 #if defined(OS_POSIX) | 1293 #if defined(OS_POSIX) |
1308 file = base::FileDescriptor(model_file, false); | 1294 file = base::FileDescriptor(model_file, false); |
1309 #elif defined(OS_WIN) | 1295 #elif defined(OS_WIN) |
1310 ::DuplicateHandle(::GetCurrentProcess(), model_file, GetHandle(), &file, 0, | 1296 ::DuplicateHandle(::GetCurrentProcess(), model_file, GetHandle(), &file, 0, |
1311 false, DUPLICATE_SAME_ACCESS); | 1297 false, DUPLICATE_SAME_ACCESS); |
1312 #endif | 1298 #endif |
1313 Send(new ViewMsg_SetPhishingModel(file)); | 1299 Send(new ViewMsg_SetPhishingModel(file)); |
1314 } | 1300 } |
1315 } | 1301 } |
OLD | NEW |