| Index: content/renderer/pepper/plugin_power_saver_helper.cc
|
| diff --git a/content/renderer/pepper/plugin_power_saver_helper.cc b/content/renderer/pepper/plugin_power_saver_helper.cc
|
| index e0c1176ca97d9e016bee9492cf245acb84d4c382..7931b41d7d187bc8fa292ba9c09b891feb87f5c1 100644
|
| --- a/content/renderer/pepper/plugin_power_saver_helper.cc
|
| +++ b/content/renderer/pepper/plugin_power_saver_helper.cc
|
| @@ -4,10 +4,14 @@
|
|
|
| #include "content/renderer/pepper/plugin_power_saver_helper.h"
|
|
|
| +#include <string>
|
| +
|
| +#include "base/command_line.h"
|
| #include "base/metrics/histogram.h"
|
| #include "base/strings/string_number_conversions.h"
|
| #include "content/common/frame_messages.h"
|
| #include "content/public/common/content_constants.h"
|
| +#include "content/public/common/content_switches.h"
|
| #include "content/public/renderer/render_frame.h"
|
| #include "ppapi/shared_impl/ppapi_constants.h"
|
| #include "third_party/WebKit/public/web/WebDocument.h"
|
| @@ -60,7 +64,17 @@ PluginPowerSaverHelper::PeripheralPlugin::~PeripheralPlugin() {
|
| }
|
|
|
| PluginPowerSaverHelper::PluginPowerSaverHelper(RenderFrame* render_frame)
|
| - : RenderFrameObserver(render_frame) {
|
| + : RenderFrameObserver(render_frame)
|
| + , override_for_testing_(Normal) {
|
| + base::CommandLine& command_line = *base::CommandLine::ForCurrentProcess();
|
| + std::string override_for_testing = command_line.GetSwitchValueASCII(
|
| + switches::kOverridePluginPowerSaverForTesting);
|
| + if (override_for_testing == "never")
|
| + override_for_testing_ = Never;
|
| + else if (override_for_testing == "ignore-list")
|
| + override_for_testing_ = IgnoreList;
|
| + else if (override_for_testing == "always")
|
| + override_for_testing_ = Always;
|
| }
|
|
|
| PluginPowerSaverHelper::~PluginPowerSaverHelper() {
|
| @@ -123,8 +137,12 @@ bool PluginPowerSaverHelper::ShouldThrottleContent(
|
|
|
| // This feature has only been tested throughly with Flash thus far.
|
| // It is also enabled for the Power Saver test plugin for browser tests.
|
| - if (plugin_module_name != content::kFlashPluginName &&
|
| - plugin_module_name != ppapi::kPowerSaverTestPluginName) {
|
| + if (override_for_testing_ == Always) {
|
| + return true;
|
| + } else if (override_for_testing_ == Never) {
|
| + return false;
|
| + } else if (override_for_testing_ == Normal &&
|
| + plugin_module_name != content::kFlashPluginName) {
|
| return false;
|
| }
|
|
|
|
|