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 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 #include "third_party/WebKit/public/web/WebSurroundingText.h" | 127 #include "third_party/WebKit/public/web/WebSurroundingText.h" |
128 #include "third_party/WebKit/public/web/WebUserGestureIndicator.h" | 128 #include "third_party/WebKit/public/web/WebUserGestureIndicator.h" |
129 #include "third_party/WebKit/public/web/WebView.h" | 129 #include "third_party/WebKit/public/web/WebView.h" |
130 | 130 |
131 #if defined(ENABLE_PLUGINS) | 131 #if defined(ENABLE_PLUGINS) |
132 #include "content/renderer/npapi/webplugin_impl.h" | 132 #include "content/renderer/npapi/webplugin_impl.h" |
133 #include "content/renderer/pepper/pepper_browser_connection.h" | 133 #include "content/renderer/pepper/pepper_browser_connection.h" |
134 #include "content/renderer/pepper/pepper_plugin_instance_impl.h" | 134 #include "content/renderer/pepper/pepper_plugin_instance_impl.h" |
135 #include "content/renderer/pepper/pepper_webplugin_impl.h" | 135 #include "content/renderer/pepper/pepper_webplugin_impl.h" |
136 #include "content/renderer/pepper/plugin_module.h" | 136 #include "content/renderer/pepper/plugin_module.h" |
| 137 #include "content/renderer/pepper/plugin_power_saver_helper.h" |
137 #endif | 138 #endif |
138 | 139 |
139 #if defined(ENABLE_WEBRTC) | 140 #if defined(ENABLE_WEBRTC) |
140 #include "content/renderer/media/rtc_peer_connection_handler.h" | 141 #include "content/renderer/media/rtc_peer_connection_handler.h" |
141 #endif | 142 #endif |
142 | 143 |
143 #if defined(OS_ANDROID) | 144 #if defined(OS_ANDROID) |
144 #include <cpu-features.h> | 145 #include <cpu-features.h> |
145 | 146 |
146 #include "content/common/gpu/client/context_provider_command_buffer.h" | 147 #include "content/common/gpu/client/context_provider_command_buffer.h" |
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
539 } | 540 } |
540 | 541 |
541 // RenderFrameImpl ---------------------------------------------------------- | 542 // RenderFrameImpl ---------------------------------------------------------- |
542 RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id) | 543 RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id) |
543 : frame_(NULL), | 544 : frame_(NULL), |
544 render_view_(render_view->AsWeakPtr()), | 545 render_view_(render_view->AsWeakPtr()), |
545 routing_id_(routing_id), | 546 routing_id_(routing_id), |
546 is_swapped_out_(false), | 547 is_swapped_out_(false), |
547 render_frame_proxy_(NULL), | 548 render_frame_proxy_(NULL), |
548 is_detaching_(false), | 549 is_detaching_(false), |
| 550 #if defined(ENABLE_PLUGINS) |
| 551 plugin_power_saver_helper_(NULL), |
| 552 #endif |
549 cookie_jar_(this), | 553 cookie_jar_(this), |
550 selection_text_offset_(0), | 554 selection_text_offset_(0), |
551 selection_range_(gfx::Range::InvalidRange()), | 555 selection_range_(gfx::Range::InvalidRange()), |
552 handling_select_range_(false), | 556 handling_select_range_(false), |
553 notification_permission_dispatcher_(NULL), | 557 notification_permission_dispatcher_(NULL), |
554 notification_provider_(NULL), | 558 notification_provider_(NULL), |
555 web_user_media_client_(NULL), | 559 web_user_media_client_(NULL), |
556 midi_dispatcher_(NULL), | 560 midi_dispatcher_(NULL), |
557 #if defined(OS_ANDROID) | 561 #if defined(OS_ANDROID) |
558 media_player_manager_(NULL), | 562 media_player_manager_(NULL), |
(...skipping 16 matching lines...) Expand all Loading... |
575 CHECK(result.second) << "Inserting a duplicate item."; | 579 CHECK(result.second) << "Inserting a duplicate item."; |
576 | 580 |
577 RenderThread::Get()->AddRoute(routing_id_, this); | 581 RenderThread::Get()->AddRoute(routing_id_, this); |
578 | 582 |
579 render_view_->RegisterRenderFrame(this); | 583 render_view_->RegisterRenderFrame(this); |
580 | 584 |
581 #if defined(OS_ANDROID) | 585 #if defined(OS_ANDROID) |
582 new GinJavaBridgeDispatcher(this); | 586 new GinJavaBridgeDispatcher(this); |
583 #endif | 587 #endif |
584 | 588 |
| 589 #if defined(ENABLE_PLUGINS) |
| 590 plugin_power_saver_helper_ = new PluginPowerSaverHelper(this); |
| 591 #endif |
| 592 |
585 #if defined(ENABLE_NOTIFICATIONS) | 593 #if defined(ENABLE_NOTIFICATIONS) |
586 notification_provider_ = new NotificationProvider(this); | 594 notification_provider_ = new NotificationProvider(this); |
587 #endif | 595 #endif |
588 | 596 |
589 manifest_manager_ = new ManifestManager(this); | 597 manifest_manager_ = new ManifestManager(this); |
590 } | 598 } |
591 | 599 |
592 RenderFrameImpl::~RenderFrameImpl() { | 600 RenderFrameImpl::~RenderFrameImpl() { |
593 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); | 601 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); |
594 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); | 602 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); |
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
805 } | 813 } |
806 } else { | 814 } else { |
807 // Mimics the order of events sent by WebKit. | 815 // Mimics the order of events sent by WebKit. |
808 // See WebCore::Editor::setComposition() for the corresponding code. | 816 // See WebCore::Editor::setComposition() for the corresponding code. |
809 render_view_->focused_pepper_plugin()->HandleCompositionEnd(last_text); | 817 render_view_->focused_pepper_plugin()->HandleCompositionEnd(last_text); |
810 render_view_->focused_pepper_plugin()->HandleTextInput(last_text); | 818 render_view_->focused_pepper_plugin()->HandleTextInput(last_text); |
811 } | 819 } |
812 pepper_composition_text_.clear(); | 820 pepper_composition_text_.clear(); |
813 } | 821 } |
814 | 822 |
| 823 PluginPowerSaverHelper* RenderFrameImpl::plugin_power_saver_helper() { |
| 824 DCHECK(plugin_power_saver_helper_); |
| 825 return plugin_power_saver_helper_; |
| 826 } |
| 827 |
815 #endif // ENABLE_PLUGINS | 828 #endif // ENABLE_PLUGINS |
816 | 829 |
817 MediaStreamDispatcher* RenderFrameImpl::GetMediaStreamDispatcher() { | 830 MediaStreamDispatcher* RenderFrameImpl::GetMediaStreamDispatcher() { |
818 if (!web_user_media_client_) | 831 if (!web_user_media_client_) |
819 InitializeUserMediaClient(); | 832 InitializeUserMediaClient(); |
820 return web_user_media_client_ ? | 833 return web_user_media_client_ ? |
821 web_user_media_client_->media_stream_dispatcher() : NULL; | 834 web_user_media_client_->media_stream_dispatcher() : NULL; |
822 } | 835 } |
823 | 836 |
824 bool RenderFrameImpl::Send(IPC::Message* message) { | 837 bool RenderFrameImpl::Send(IPC::Message* message) { |
(...skipping 3277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4102 | 4115 |
4103 #if defined(ENABLE_BROWSER_CDMS) | 4116 #if defined(ENABLE_BROWSER_CDMS) |
4104 RendererCdmManager* RenderFrameImpl::GetCdmManager() { | 4117 RendererCdmManager* RenderFrameImpl::GetCdmManager() { |
4105 if (!cdm_manager_) | 4118 if (!cdm_manager_) |
4106 cdm_manager_ = new RendererCdmManager(this); | 4119 cdm_manager_ = new RendererCdmManager(this); |
4107 return cdm_manager_; | 4120 return cdm_manager_; |
4108 } | 4121 } |
4109 #endif // defined(ENABLE_BROWSER_CDMS) | 4122 #endif // defined(ENABLE_BROWSER_CDMS) |
4110 | 4123 |
4111 } // namespace content | 4124 } // namespace content |
OLD | NEW |