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

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

Issue 680193002: Plugin Power Saver: Implement size-based heuristic for peripheral content. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: change mechanism to look at top level navigation instead of renderframe lifecycle Created 6 years, 1 month 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
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 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
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
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
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
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
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
OLDNEW
« content/renderer/pepper/plugin_power_saver_helper.cc ('K') | « content/renderer/render_frame_impl.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698