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 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
59 #include "content/renderer/devtools/devtools_agent.h" | 59 #include "content/renderer/devtools/devtools_agent.h" |
60 #include "content/renderer/dom_automation_controller.h" | 60 #include "content/renderer/dom_automation_controller.h" |
61 #include "content/renderer/dom_utils.h" | 61 #include "content/renderer/dom_utils.h" |
62 #include "content/renderer/external_popup_menu.h" | 62 #include "content/renderer/external_popup_menu.h" |
63 #include "content/renderer/geolocation_dispatcher.h" | 63 #include "content/renderer/geolocation_dispatcher.h" |
64 #include "content/renderer/history_controller.h" | 64 #include "content/renderer/history_controller.h" |
65 #include "content/renderer/history_serialization.h" | 65 #include "content/renderer/history_serialization.h" |
66 #include "content/renderer/image_loading_helper.h" | 66 #include "content/renderer/image_loading_helper.h" |
67 #include "content/renderer/ime_event_guard.h" | 67 #include "content/renderer/ime_event_guard.h" |
68 #include "content/renderer/internal_document_state_data.h" | 68 #include "content/renderer/internal_document_state_data.h" |
| 69 #include "content/renderer/manifest/manifest_manager.h" |
69 #include "content/renderer/media/audio_renderer_mixer_manager.h" | 70 #include "content/renderer/media/audio_renderer_mixer_manager.h" |
70 #include "content/renderer/media/crypto/encrypted_media_player_support_impl.h" | 71 #include "content/renderer/media/crypto/encrypted_media_player_support_impl.h" |
71 #include "content/renderer/media/media_stream_dispatcher.h" | 72 #include "content/renderer/media/media_stream_dispatcher.h" |
72 #include "content/renderer/media/media_stream_renderer_factory.h" | 73 #include "content/renderer/media/media_stream_renderer_factory.h" |
73 #include "content/renderer/media/midi_dispatcher.h" | 74 #include "content/renderer/media/midi_dispatcher.h" |
74 #include "content/renderer/media/render_media_log.h" | 75 #include "content/renderer/media/render_media_log.h" |
75 #include "content/renderer/media/user_media_client_impl.h" | 76 #include "content/renderer/media/user_media_client_impl.h" |
76 #include "content/renderer/media/webcontentdecryptionmodule_impl.h" | 77 #include "content/renderer/media/webcontentdecryptionmodule_impl.h" |
77 #include "content/renderer/media/webmediaplayer_ms.h" | 78 #include "content/renderer/media/webmediaplayer_ms.h" |
78 #include "content/renderer/notification_permission_dispatcher.h" | 79 #include "content/renderer/notification_permission_dispatcher.h" |
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
447 #endif | 448 #endif |
448 #if defined(ENABLE_BROWSER_CDMS) | 449 #if defined(ENABLE_BROWSER_CDMS) |
449 cdm_manager_(NULL), | 450 cdm_manager_(NULL), |
450 #endif | 451 #endif |
451 #if defined(VIDEO_HOLE) | 452 #if defined(VIDEO_HOLE) |
452 contains_media_player_(false), | 453 contains_media_player_(false), |
453 #endif | 454 #endif |
454 geolocation_dispatcher_(NULL), | 455 geolocation_dispatcher_(NULL), |
455 push_messaging_dispatcher_(NULL), | 456 push_messaging_dispatcher_(NULL), |
456 screen_orientation_dispatcher_(NULL), | 457 screen_orientation_dispatcher_(NULL), |
| 458 manifest_manager_(NULL), |
457 accessibility_mode_(AccessibilityModeOff), | 459 accessibility_mode_(AccessibilityModeOff), |
458 renderer_accessibility_(NULL), | 460 renderer_accessibility_(NULL), |
459 weak_factory_(this) { | 461 weak_factory_(this) { |
460 std::pair<RoutingIDFrameMap::iterator, bool> result = | 462 std::pair<RoutingIDFrameMap::iterator, bool> result = |
461 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); | 463 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); |
462 CHECK(result.second) << "Inserting a duplicate item."; | 464 CHECK(result.second) << "Inserting a duplicate item."; |
463 | 465 |
464 RenderThread::Get()->AddRoute(routing_id_, this); | 466 RenderThread::Get()->AddRoute(routing_id_, this); |
465 | 467 |
466 render_view_->RegisterRenderFrame(this); | 468 render_view_->RegisterRenderFrame(this); |
467 | 469 |
468 #if defined(OS_ANDROID) | 470 #if defined(OS_ANDROID) |
469 new GinJavaBridgeDispatcher(this); | 471 new GinJavaBridgeDispatcher(this); |
470 #endif | 472 #endif |
471 | 473 |
472 #if defined(ENABLE_NOTIFICATIONS) | 474 #if defined(ENABLE_NOTIFICATIONS) |
473 notification_provider_ = new NotificationProvider(this); | 475 notification_provider_ = new NotificationProvider(this); |
474 #endif | 476 #endif |
| 477 |
| 478 manifest_manager_ = new ManifestManager(this); |
475 } | 479 } |
476 | 480 |
477 RenderFrameImpl::~RenderFrameImpl() { | 481 RenderFrameImpl::~RenderFrameImpl() { |
478 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); | 482 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); |
479 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); | 483 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); |
480 | 484 |
481 #if defined(VIDEO_HOLE) | 485 #if defined(VIDEO_HOLE) |
482 if (contains_media_player_) | 486 if (contains_media_player_) |
483 render_view_->UnregisterVideoHoleFrame(this); | 487 render_view_->UnregisterVideoHoleFrame(this); |
484 #endif | 488 #endif |
(...skipping 2698 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3183 routing_id_, frame_rect, scale_factor)); | 3187 routing_id_, frame_rect, scale_factor)); |
3184 } | 3188 } |
3185 | 3189 |
3186 blink::WebScreenOrientationClient* | 3190 blink::WebScreenOrientationClient* |
3187 RenderFrameImpl::webScreenOrientationClient() { | 3191 RenderFrameImpl::webScreenOrientationClient() { |
3188 if (!screen_orientation_dispatcher_) | 3192 if (!screen_orientation_dispatcher_) |
3189 screen_orientation_dispatcher_ = new ScreenOrientationDispatcher(this); | 3193 screen_orientation_dispatcher_ = new ScreenOrientationDispatcher(this); |
3190 return screen_orientation_dispatcher_; | 3194 return screen_orientation_dispatcher_; |
3191 } | 3195 } |
3192 | 3196 |
| 3197 void RenderFrameImpl::didChangeManifest(blink::WebLocalFrame* frame) |
| 3198 { |
| 3199 DCHECK(!frame_ || frame_ == frame); |
| 3200 |
| 3201 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, DidChangeManifest()); |
| 3202 } |
| 3203 |
3193 void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) { | 3204 void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) { |
3194 Send(new FrameHostMsg_MediaPlayingNotification( | 3205 Send(new FrameHostMsg_MediaPlayingNotification( |
3195 routing_id_, reinterpret_cast<int64>(player), player->hasVideo(), | 3206 routing_id_, reinterpret_cast<int64>(player), player->hasVideo(), |
3196 player->hasAudio())); | 3207 player->hasAudio())); |
3197 } | 3208 } |
3198 | 3209 |
3199 void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) { | 3210 void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) { |
3200 Send(new FrameHostMsg_MediaPausedNotification( | 3211 Send(new FrameHostMsg_MediaPausedNotification( |
3201 routing_id_, reinterpret_cast<int64>(player))); | 3212 routing_id_, reinterpret_cast<int64>(player))); |
3202 } | 3213 } |
(...skipping 680 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3883 | 3894 |
3884 #if defined(ENABLE_BROWSER_CDMS) | 3895 #if defined(ENABLE_BROWSER_CDMS) |
3885 RendererCdmManager* RenderFrameImpl::GetCdmManager() { | 3896 RendererCdmManager* RenderFrameImpl::GetCdmManager() { |
3886 if (!cdm_manager_) | 3897 if (!cdm_manager_) |
3887 cdm_manager_ = new RendererCdmManager(this); | 3898 cdm_manager_ = new RendererCdmManager(this); |
3888 return cdm_manager_; | 3899 return cdm_manager_; |
3889 } | 3900 } |
3890 #endif // defined(ENABLE_BROWSER_CDMS) | 3901 #endif // defined(ENABLE_BROWSER_CDMS) |
3891 | 3902 |
3892 } // namespace content | 3903 } // namespace content |
OLD | NEW |