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

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

Issue 636863003: Make SpeechRecognition per RenderFrame instead of per RenderView. Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review comments Created 5 years, 11 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
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 #include "content/renderer/push_messaging/push_messaging_dispatcher.h" 85 #include "content/renderer/push_messaging/push_messaging_dispatcher.h"
86 #include "content/renderer/render_frame_proxy.h" 86 #include "content/renderer/render_frame_proxy.h"
87 #include "content/renderer/render_process.h" 87 #include "content/renderer/render_process.h"
88 #include "content/renderer/render_thread_impl.h" 88 #include "content/renderer/render_thread_impl.h"
89 #include "content/renderer/render_view_impl.h" 89 #include "content/renderer/render_view_impl.h"
90 #include "content/renderer/render_widget_fullscreen_pepper.h" 90 #include "content/renderer/render_widget_fullscreen_pepper.h"
91 #include "content/renderer/renderer_webapplicationcachehost_impl.h" 91 #include "content/renderer/renderer_webapplicationcachehost_impl.h"
92 #include "content/renderer/renderer_webcolorchooser_impl.h" 92 #include "content/renderer/renderer_webcolorchooser_impl.h"
93 #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h" 93 #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h"
94 #include "content/renderer/shared_worker_repository.h" 94 #include "content/renderer/shared_worker_repository.h"
95 #include "content/renderer/speech_recognition_dispatcher.h"
95 #include "content/renderer/v8_value_converter_impl.h" 96 #include "content/renderer/v8_value_converter_impl.h"
96 #include "content/renderer/websharedworker_proxy.h" 97 #include "content/renderer/websharedworker_proxy.h"
97 #include "gin/modules/module_registry.h" 98 #include "gin/modules/module_registry.h"
98 #include "media/base/audio_renderer_mixer_input.h" 99 #include "media/base/audio_renderer_mixer_input.h"
99 #include "media/base/media_log.h" 100 #include "media/base/media_log.h"
100 #include "media/blink/webcontentdecryptionmodule_impl.h" 101 #include "media/blink/webcontentdecryptionmodule_impl.h"
101 #include "media/blink/webencryptedmediaclient_impl.h" 102 #include "media/blink/webencryptedmediaclient_impl.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/default_renderer_factory.h" 105 #include "media/filters/default_renderer_factory.h"
(...skipping 539 matching lines...) Expand 10 before | Expand all | Expand 10 after
644 #if defined(ENABLE_BROWSER_CDMS) 645 #if defined(ENABLE_BROWSER_CDMS)
645 cdm_manager_(NULL), 646 cdm_manager_(NULL),
646 #endif 647 #endif
647 #if defined(VIDEO_HOLE) 648 #if defined(VIDEO_HOLE)
648 contains_media_player_(false), 649 contains_media_player_(false),
649 #endif 650 #endif
650 geolocation_dispatcher_(NULL), 651 geolocation_dispatcher_(NULL),
651 push_messaging_dispatcher_(NULL), 652 push_messaging_dispatcher_(NULL),
652 screen_orientation_dispatcher_(NULL), 653 screen_orientation_dispatcher_(NULL),
653 manifest_manager_(NULL), 654 manifest_manager_(NULL),
655 speech_recognition_dispatcher_(NULL),
654 accessibility_mode_(AccessibilityModeOff), 656 accessibility_mode_(AccessibilityModeOff),
655 renderer_accessibility_(NULL), 657 renderer_accessibility_(NULL),
656 weak_factory_(this) { 658 weak_factory_(this) {
657 std::pair<RoutingIDFrameMap::iterator, bool> result = 659 std::pair<RoutingIDFrameMap::iterator, bool> result =
658 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); 660 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this));
659 CHECK(result.second) << "Inserting a duplicate item."; 661 CHECK(result.second) << "Inserting a duplicate item.";
660 662
661 RenderThread::Get()->AddRoute(routing_id_, this); 663 RenderThread::Get()->AddRoute(routing_id_, this);
662 664
663 render_view_->RegisterRenderFrame(this); 665 render_view_->RegisterRenderFrame(this);
(...skipping 2860 matching lines...) Expand 10 before | Expand all | Expand 10 after
3524 } 3526 }
3525 } 3527 }
3526 3528
3527 void RenderFrameImpl::didChangeManifest(blink::WebLocalFrame* frame) 3529 void RenderFrameImpl::didChangeManifest(blink::WebLocalFrame* frame)
3528 { 3530 {
3529 DCHECK(!frame_ || frame_ == frame); 3531 DCHECK(!frame_ || frame_ == frame);
3530 3532
3531 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, DidChangeManifest()); 3533 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, DidChangeManifest());
3532 } 3534 }
3533 3535
3536 blink::WebSpeechRecognizer* RenderFrameImpl::speechRecognizer() {
3537 if (!speech_recognition_dispatcher_)
3538 speech_recognition_dispatcher_ = new SpeechRecognitionDispatcher(this);
3539 return speech_recognition_dispatcher_;
3540 }
3541
3534 void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) { 3542 void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) {
3535 Send(new FrameHostMsg_MediaPlayingNotification( 3543 Send(new FrameHostMsg_MediaPlayingNotification(
3536 routing_id_, reinterpret_cast<int64>(player), player->hasVideo(), 3544 routing_id_, reinterpret_cast<int64>(player), player->hasVideo(),
3537 player->hasAudio(), player->isRemote())); 3545 player->hasAudio(), player->isRemote()));
3538 } 3546 }
3539 3547
3540 void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) { 3548 void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) {
3541 Send(new FrameHostMsg_MediaPausedNotification( 3549 Send(new FrameHostMsg_MediaPausedNotification(
3542 routing_id_, reinterpret_cast<int64>(player))); 3550 routing_id_, reinterpret_cast<int64>(player)));
3543 } 3551 }
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
3591 InternalDocumentStateData::FromDocumentState(document_state); 3599 InternalDocumentStateData::FromDocumentState(document_state);
3592 3600
3593 FrameHostMsg_DidCommitProvisionalLoad_Params params; 3601 FrameHostMsg_DidCommitProvisionalLoad_Params params;
3594 params.http_status_code = response.httpStatusCode(); 3602 params.http_status_code = response.httpStatusCode();
3595 params.url_is_unreachable = ds->hasUnreachableURL(); 3603 params.url_is_unreachable = ds->hasUnreachableURL();
3596 params.is_post = false; 3604 params.is_post = false;
3597 params.post_id = -1; 3605 params.post_id = -1;
3598 params.page_id = render_view_->page_id_; 3606 params.page_id = render_view_->page_id_;
3599 // We need to track the RenderViewHost routing_id because of downstream 3607 // We need to track the RenderViewHost routing_id because of downstream
3600 // dependencies (crbug.com/392171 DownloadRequestHandle, SaveFileManager, 3608 // dependencies (crbug.com/392171 DownloadRequestHandle, SaveFileManager,
3601 // ResourceDispatcherHostImpl, MediaStreamUIProxy, 3609 // ResourceDispatcherHostImpl, MediaStreamUIProxy, and possibly others). They
3602 // SpeechRecognitionDispatcherHost and possibly others). They look up the view 3610 // look up the view based on the ID stored in the resource requests. Once
3603 // based on the ID stored in the resource requests. Once those dependencies 3611 // those dependencies are unwound or moved to RenderFrameHost
3604 // are unwound or moved to RenderFrameHost (crbug.com/304341) we can move the 3612 // (crbug.com/304341) we can move the client to be based on the routing_id of
3605 // client to be based on the routing_id of the RenderFrameHost. 3613 // the RenderFrameHost.
3606 params.render_view_routing_id = render_view_->routing_id(); 3614 params.render_view_routing_id = render_view_->routing_id();
3607 params.socket_address.set_host(response.remoteIPAddress().utf8()); 3615 params.socket_address.set_host(response.remoteIPAddress().utf8());
3608 params.socket_address.set_port(response.remotePort()); 3616 params.socket_address.set_port(response.remotePort());
3609 WebURLResponseExtraDataImpl* extra_data = GetExtraDataFromResponse(response); 3617 WebURLResponseExtraDataImpl* extra_data = GetExtraDataFromResponse(response);
3610 if (extra_data) 3618 if (extra_data)
3611 params.was_fetched_via_proxy = extra_data->was_fetched_via_proxy(); 3619 params.was_fetched_via_proxy = extra_data->was_fetched_via_proxy();
3612 params.was_within_same_page = navigation_state->was_within_same_page(); 3620 params.was_within_same_page = navigation_state->was_within_same_page();
3613 params.security_info = response.securityInfo(); 3621 params.security_info = response.securityInfo();
3614 3622
3615 // Set the URL to be displayed in the browser UI to the user. 3623 // Set the URL to be displayed in the browser UI to the user.
(...skipping 778 matching lines...) Expand 10 before | Expand all | Expand 10 after
4394 4402
4395 #if defined(ENABLE_BROWSER_CDMS) 4403 #if defined(ENABLE_BROWSER_CDMS)
4396 RendererCdmManager* RenderFrameImpl::GetCdmManager() { 4404 RendererCdmManager* RenderFrameImpl::GetCdmManager() {
4397 if (!cdm_manager_) 4405 if (!cdm_manager_)
4398 cdm_manager_ = new RendererCdmManager(this); 4406 cdm_manager_ = new RendererCdmManager(this);
4399 return cdm_manager_; 4407 return cdm_manager_;
4400 } 4408 }
4401 #endif // defined(ENABLE_BROWSER_CDMS) 4409 #endif // defined(ENABLE_BROWSER_CDMS)
4402 4410
4403 } // namespace content 4411 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | content/renderer/render_view_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698