OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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/render_frame_impl.h" | 5 #include "content/renderer/render_frame_impl.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 #include "content/renderer/push_permission_dispatcher.h" | 87 #include "content/renderer/push_permission_dispatcher.h" |
88 #include "content/renderer/render_frame_proxy.h" | 88 #include "content/renderer/render_frame_proxy.h" |
89 #include "content/renderer/render_process.h" | 89 #include "content/renderer/render_process.h" |
90 #include "content/renderer/render_thread_impl.h" | 90 #include "content/renderer/render_thread_impl.h" |
91 #include "content/renderer/render_view_impl.h" | 91 #include "content/renderer/render_view_impl.h" |
92 #include "content/renderer/render_widget_fullscreen_pepper.h" | 92 #include "content/renderer/render_widget_fullscreen_pepper.h" |
93 #include "content/renderer/renderer_webapplicationcachehost_impl.h" | 93 #include "content/renderer/renderer_webapplicationcachehost_impl.h" |
94 #include "content/renderer/renderer_webcolorchooser_impl.h" | 94 #include "content/renderer/renderer_webcolorchooser_impl.h" |
95 #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h" | 95 #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h" |
96 #include "content/renderer/shared_worker_repository.h" | 96 #include "content/renderer/shared_worker_repository.h" |
| 97 #include "content/renderer/speech_recognition_dispatcher.h" |
97 #include "content/renderer/v8_value_converter_impl.h" | 98 #include "content/renderer/v8_value_converter_impl.h" |
98 #include "content/renderer/websharedworker_proxy.h" | 99 #include "content/renderer/websharedworker_proxy.h" |
99 #include "gin/modules/module_registry.h" | 100 #include "gin/modules/module_registry.h" |
100 #include "media/base/audio_renderer_mixer_input.h" | 101 #include "media/base/audio_renderer_mixer_input.h" |
101 #include "media/base/renderer.h" | 102 #include "media/base/renderer.h" |
102 #include "media/blink/webmediaplayer_impl.h" | 103 #include "media/blink/webmediaplayer_impl.h" |
103 #include "media/blink/webmediaplayer_params.h" | 104 #include "media/blink/webmediaplayer_params.h" |
104 #include "media/filters/gpu_video_accelerator_factories.h" | 105 #include "media/filters/gpu_video_accelerator_factories.h" |
105 #include "mojo/edk/js/core.h" | 106 #include "mojo/edk/js/core.h" |
106 #include "mojo/edk/js/support.h" | 107 #include "mojo/edk/js/support.h" |
(...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
582 #if defined(ENABLE_BROWSER_CDMS) | 583 #if defined(ENABLE_BROWSER_CDMS) |
583 cdm_manager_(NULL), | 584 cdm_manager_(NULL), |
584 #endif | 585 #endif |
585 #if defined(VIDEO_HOLE) | 586 #if defined(VIDEO_HOLE) |
586 contains_media_player_(false), | 587 contains_media_player_(false), |
587 #endif | 588 #endif |
588 geolocation_dispatcher_(NULL), | 589 geolocation_dispatcher_(NULL), |
589 push_messaging_dispatcher_(NULL), | 590 push_messaging_dispatcher_(NULL), |
590 screen_orientation_dispatcher_(NULL), | 591 screen_orientation_dispatcher_(NULL), |
591 manifest_manager_(NULL), | 592 manifest_manager_(NULL), |
| 593 speech_recognition_dispatcher_(NULL), |
592 accessibility_mode_(AccessibilityModeOff), | 594 accessibility_mode_(AccessibilityModeOff), |
593 renderer_accessibility_(NULL), | 595 renderer_accessibility_(NULL), |
594 weak_factory_(this) { | 596 weak_factory_(this) { |
595 std::pair<RoutingIDFrameMap::iterator, bool> result = | 597 std::pair<RoutingIDFrameMap::iterator, bool> result = |
596 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); | 598 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); |
597 CHECK(result.second) << "Inserting a duplicate item."; | 599 CHECK(result.second) << "Inserting a duplicate item."; |
598 | 600 |
599 RenderThread::Get()->AddRoute(routing_id_, this); | 601 RenderThread::Get()->AddRoute(routing_id_, this); |
600 | 602 |
601 render_view_->RegisterRenderFrame(this); | 603 render_view_->RegisterRenderFrame(this); |
(...skipping 2765 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3367 } | 3369 } |
3368 } | 3370 } |
3369 | 3371 |
3370 void RenderFrameImpl::didChangeManifest(blink::WebLocalFrame* frame) | 3372 void RenderFrameImpl::didChangeManifest(blink::WebLocalFrame* frame) |
3371 { | 3373 { |
3372 DCHECK(!frame_ || frame_ == frame); | 3374 DCHECK(!frame_ || frame_ == frame); |
3373 | 3375 |
3374 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, DidChangeManifest()); | 3376 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, DidChangeManifest()); |
3375 } | 3377 } |
3376 | 3378 |
| 3379 blink::WebSpeechRecognizer* RenderFrameImpl::speechRecognizer() { |
| 3380 if (!speech_recognition_dispatcher_) |
| 3381 speech_recognition_dispatcher_ = new SpeechRecognitionDispatcher(this); |
| 3382 return speech_recognition_dispatcher_; |
| 3383 } |
| 3384 |
3377 void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) { | 3385 void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) { |
3378 Send(new FrameHostMsg_MediaPlayingNotification( | 3386 Send(new FrameHostMsg_MediaPlayingNotification( |
3379 routing_id_, reinterpret_cast<int64>(player), player->hasVideo(), | 3387 routing_id_, reinterpret_cast<int64>(player), player->hasVideo(), |
3380 player->hasAudio(), player->isRemote())); | 3388 player->hasAudio(), player->isRemote())); |
3381 } | 3389 } |
3382 | 3390 |
3383 void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) { | 3391 void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) { |
3384 Send(new FrameHostMsg_MediaPausedNotification( | 3392 Send(new FrameHostMsg_MediaPausedNotification( |
3385 routing_id_, reinterpret_cast<int64>(player))); | 3393 routing_id_, reinterpret_cast<int64>(player))); |
3386 } | 3394 } |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3434 InternalDocumentStateData::FromDocumentState(document_state); | 3442 InternalDocumentStateData::FromDocumentState(document_state); |
3435 | 3443 |
3436 FrameHostMsg_DidCommitProvisionalLoad_Params params; | 3444 FrameHostMsg_DidCommitProvisionalLoad_Params params; |
3437 params.http_status_code = response.httpStatusCode(); | 3445 params.http_status_code = response.httpStatusCode(); |
3438 params.url_is_unreachable = ds->hasUnreachableURL(); | 3446 params.url_is_unreachable = ds->hasUnreachableURL(); |
3439 params.is_post = false; | 3447 params.is_post = false; |
3440 params.post_id = -1; | 3448 params.post_id = -1; |
3441 params.page_id = render_view_->page_id_; | 3449 params.page_id = render_view_->page_id_; |
3442 // We need to track the RenderViewHost routing_id because of downstream | 3450 // We need to track the RenderViewHost routing_id because of downstream |
3443 // dependencies (crbug.com/392171 DownloadRequestHandle, SaveFileManager, | 3451 // dependencies (crbug.com/392171 DownloadRequestHandle, SaveFileManager, |
3444 // ResourceDispatcherHostImpl, MediaStreamUIProxy, | 3452 // ResourceDispatcherHostImpl, MediaStreamUIProxy, and possibly others). They |
3445 // SpeechRecognitionDispatcherHost and possibly others). They look up the view | 3453 // look up the view based on the ID stored in the resource requests. Once |
3446 // based on the ID stored in the resource requests. Once those dependencies | 3454 // those dependencies are unwound or moved to RenderFrameHost |
3447 // are unwound or moved to RenderFrameHost (crbug.com/304341) we can move the | 3455 // (crbug.com/304341) we can move the client to be based on the routing_id of |
3448 // client to be based on the routing_id of the RenderFrameHost. | 3456 // the RenderFrameHost. |
3449 params.render_view_routing_id = render_view_->routing_id(); | 3457 params.render_view_routing_id = render_view_->routing_id(); |
3450 params.socket_address.set_host(response.remoteIPAddress().utf8()); | 3458 params.socket_address.set_host(response.remoteIPAddress().utf8()); |
3451 params.socket_address.set_port(response.remotePort()); | 3459 params.socket_address.set_port(response.remotePort()); |
3452 WebURLResponseExtraDataImpl* extra_data = GetExtraDataFromResponse(response); | 3460 WebURLResponseExtraDataImpl* extra_data = GetExtraDataFromResponse(response); |
3453 if (extra_data) | 3461 if (extra_data) |
3454 params.was_fetched_via_proxy = extra_data->was_fetched_via_proxy(); | 3462 params.was_fetched_via_proxy = extra_data->was_fetched_via_proxy(); |
3455 params.was_within_same_page = navigation_state->was_within_same_page(); | 3463 params.was_within_same_page = navigation_state->was_within_same_page(); |
3456 params.security_info = response.securityInfo(); | 3464 params.security_info = response.securityInfo(); |
3457 | 3465 |
3458 // Set the URL to be displayed in the browser UI to the user. | 3466 // Set the URL to be displayed in the browser UI to the user. |
(...skipping 740 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4199 | 4207 |
4200 #if defined(ENABLE_BROWSER_CDMS) | 4208 #if defined(ENABLE_BROWSER_CDMS) |
4201 RendererCdmManager* RenderFrameImpl::GetCdmManager() { | 4209 RendererCdmManager* RenderFrameImpl::GetCdmManager() { |
4202 if (!cdm_manager_) | 4210 if (!cdm_manager_) |
4203 cdm_manager_ = new RendererCdmManager(this); | 4211 cdm_manager_ = new RendererCdmManager(this); |
4204 return cdm_manager_; | 4212 return cdm_manager_; |
4205 } | 4213 } |
4206 #endif // defined(ENABLE_BROWSER_CDMS) | 4214 #endif // defined(ENABLE_BROWSER_CDMS) |
4207 | 4215 |
4208 } // namespace content | 4216 } // namespace content |
OLD | NEW |