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

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: spinoff ifdef changes into separate cl 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 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 #include "third_party/WebKit/public/web/WebSurroundingText.h" 129 #include "third_party/WebKit/public/web/WebSurroundingText.h"
130 #include "third_party/WebKit/public/web/WebUserGestureIndicator.h" 130 #include "third_party/WebKit/public/web/WebUserGestureIndicator.h"
131 #include "third_party/WebKit/public/web/WebView.h" 131 #include "third_party/WebKit/public/web/WebView.h"
132 132
133 #if defined(ENABLE_PLUGINS) 133 #if defined(ENABLE_PLUGINS)
134 #include "content/renderer/npapi/webplugin_impl.h" 134 #include "content/renderer/npapi/webplugin_impl.h"
135 #include "content/renderer/pepper/pepper_browser_connection.h" 135 #include "content/renderer/pepper/pepper_browser_connection.h"
136 #include "content/renderer/pepper/pepper_plugin_instance_impl.h" 136 #include "content/renderer/pepper/pepper_plugin_instance_impl.h"
137 #include "content/renderer/pepper/pepper_webplugin_impl.h" 137 #include "content/renderer/pepper/pepper_webplugin_impl.h"
138 #include "content/renderer/pepper/plugin_module.h" 138 #include "content/renderer/pepper/plugin_module.h"
139 #include "content/renderer/pepper/plugin_power_saver_helper.h"
139 #endif 140 #endif
140 141
141 #if defined(ENABLE_WEBRTC) 142 #if defined(ENABLE_WEBRTC)
142 #include "content/renderer/media/rtc_peer_connection_handler.h" 143 #include "content/renderer/media/rtc_peer_connection_handler.h"
143 #endif 144 #endif
144 145
145 #if defined(OS_ANDROID) 146 #if defined(OS_ANDROID)
146 #include <cpu-features.h> 147 #include <cpu-features.h>
147 148
148 #include "content/common/gpu/client/context_provider_command_buffer.h" 149 #include "content/common/gpu/client/context_provider_command_buffer.h"
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after
541 } 542 }
542 543
543 // RenderFrameImpl ---------------------------------------------------------- 544 // RenderFrameImpl ----------------------------------------------------------
544 RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id) 545 RenderFrameImpl::RenderFrameImpl(RenderViewImpl* render_view, int routing_id)
545 : frame_(NULL), 546 : frame_(NULL),
546 render_view_(render_view->AsWeakPtr()), 547 render_view_(render_view->AsWeakPtr()),
547 routing_id_(routing_id), 548 routing_id_(routing_id),
548 is_swapped_out_(false), 549 is_swapped_out_(false),
549 render_frame_proxy_(NULL), 550 render_frame_proxy_(NULL),
550 is_detaching_(false), 551 is_detaching_(false),
552 #if defined(ENABLE_PLUGINS)
553 plugin_power_saver_helper_(NULL),
554 #endif
551 cookie_jar_(this), 555 cookie_jar_(this),
552 selection_text_offset_(0), 556 selection_text_offset_(0),
553 selection_range_(gfx::Range::InvalidRange()), 557 selection_range_(gfx::Range::InvalidRange()),
554 handling_select_range_(false), 558 handling_select_range_(false),
555 notification_permission_dispatcher_(NULL), 559 notification_permission_dispatcher_(NULL),
556 notification_provider_(NULL), 560 notification_provider_(NULL),
557 web_user_media_client_(NULL), 561 web_user_media_client_(NULL),
558 midi_dispatcher_(NULL), 562 midi_dispatcher_(NULL),
559 #if defined(OS_ANDROID) 563 #if defined(OS_ANDROID)
560 media_player_manager_(NULL), 564 media_player_manager_(NULL),
(...skipping 12 matching lines...) Expand all
573 renderer_accessibility_(NULL), 577 renderer_accessibility_(NULL),
574 weak_factory_(this) { 578 weak_factory_(this) {
575 std::pair<RoutingIDFrameMap::iterator, bool> result = 579 std::pair<RoutingIDFrameMap::iterator, bool> result =
576 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this)); 580 g_routing_id_frame_map.Get().insert(std::make_pair(routing_id_, this));
577 CHECK(result.second) << "Inserting a duplicate item."; 581 CHECK(result.second) << "Inserting a duplicate item.";
578 582
579 RenderThread::Get()->AddRoute(routing_id_, this); 583 RenderThread::Get()->AddRoute(routing_id_, this);
580 584
581 render_view_->RegisterRenderFrame(this); 585 render_view_->RegisterRenderFrame(this);
582 586
587 // Everything below are RenderFrameObservers are are automatically deleted
Charlie Reis 2014/10/30 22:13:16 are -> and?
tommycli 2014/10/31 00:01:22 Edited the comment. See if that makes more sense.
588 // when the RenderFrame gets deleted.
583 #if defined(OS_ANDROID) 589 #if defined(OS_ANDROID)
584 new GinJavaBridgeDispatcher(this); 590 new GinJavaBridgeDispatcher(this);
585 #endif 591 #endif
586 592
593 #if defined(ENABLE_PLUGINS)
594 plugin_power_saver_helper_ = new PluginPowerSaverHelper(this);
595 #endif
596
587 #if defined(ENABLE_NOTIFICATIONS) 597 #if defined(ENABLE_NOTIFICATIONS)
588 notification_provider_ = new NotificationProvider(this); 598 notification_provider_ = new NotificationProvider(this);
589 #endif 599 #endif
590 600
591 manifest_manager_ = new ManifestManager(this); 601 manifest_manager_ = new ManifestManager(this);
592 } 602 }
593 603
594 RenderFrameImpl::~RenderFrameImpl() { 604 RenderFrameImpl::~RenderFrameImpl() {
595 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); 605 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone());
596 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); 606 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct());
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
806 } 816 }
807 } else { 817 } else {
808 // Mimics the order of events sent by WebKit. 818 // Mimics the order of events sent by WebKit.
809 // See WebCore::Editor::setComposition() for the corresponding code. 819 // See WebCore::Editor::setComposition() for the corresponding code.
810 render_view_->focused_pepper_plugin()->HandleCompositionEnd(last_text); 820 render_view_->focused_pepper_plugin()->HandleCompositionEnd(last_text);
811 render_view_->focused_pepper_plugin()->HandleTextInput(last_text); 821 render_view_->focused_pepper_plugin()->HandleTextInput(last_text);
812 } 822 }
813 pepper_composition_text_.clear(); 823 pepper_composition_text_.clear();
814 } 824 }
815 825
826 PluginPowerSaverHelper* RenderFrameImpl::plugin_power_saver_helper() {
827 DCHECK(plugin_power_saver_helper_);
828 return plugin_power_saver_helper_;
829 }
816 #endif // defined(ENABLE_PLUGINS) 830 #endif // defined(ENABLE_PLUGINS)
817 831
818 MediaStreamDispatcher* RenderFrameImpl::GetMediaStreamDispatcher() { 832 MediaStreamDispatcher* RenderFrameImpl::GetMediaStreamDispatcher() {
819 if (!web_user_media_client_) 833 if (!web_user_media_client_)
820 InitializeUserMediaClient(); 834 InitializeUserMediaClient();
821 return web_user_media_client_ ? 835 return web_user_media_client_ ?
822 web_user_media_client_->media_stream_dispatcher() : NULL; 836 web_user_media_client_->media_stream_dispatcher() : NULL;
823 } 837 }
824 838
825 bool RenderFrameImpl::Send(IPC::Message* message) { 839 bool RenderFrameImpl::Send(IPC::Message* message) {
(...skipping 3299 matching lines...) Expand 10 before | Expand all | Expand 10 after
4125 4139
4126 #if defined(ENABLE_BROWSER_CDMS) 4140 #if defined(ENABLE_BROWSER_CDMS)
4127 RendererCdmManager* RenderFrameImpl::GetCdmManager() { 4141 RendererCdmManager* RenderFrameImpl::GetCdmManager() {
4128 if (!cdm_manager_) 4142 if (!cdm_manager_)
4129 cdm_manager_ = new RendererCdmManager(this); 4143 cdm_manager_ = new RendererCdmManager(this);
4130 return cdm_manager_; 4144 return cdm_manager_;
4131 } 4145 }
4132 #endif // defined(ENABLE_BROWSER_CDMS) 4146 #endif // defined(ENABLE_BROWSER_CDMS)
4133 4147
4134 } // namespace content 4148 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698