| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/renderer/chrome_content_renderer_client.h" | 5 #include "chrome/renderer/chrome_content_renderer_client.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/debug/crash_logging.h" | 8 #include "base/debug/crash_logging.h" |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/metrics/field_trial.h" | 10 #include "base/metrics/field_trial.h" |
| (...skipping 832 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 843 #endif // !defined(DISABLE_NACL) && defined(ENABLE_EXTENSIONS) | 843 #endif // !defined(DISABLE_NACL) && defined(ENABLE_EXTENSIONS) |
| 844 | 844 |
| 845 #if defined(ENABLE_PLUGINS) | 845 #if defined(ENABLE_PLUGINS) |
| 846 // Delay loading plugins if prerendering. | 846 // Delay loading plugins if prerendering. |
| 847 // TODO(mmenke): In the case of prerendering, feed into | 847 // TODO(mmenke): In the case of prerendering, feed into |
| 848 // ChromeContentRendererClient::CreatePlugin instead, to | 848 // ChromeContentRendererClient::CreatePlugin instead, to |
| 849 // reduce the chance of future regressions. | 849 // reduce the chance of future regressions. |
| 850 bool is_prerendering = | 850 bool is_prerendering = |
| 851 prerender::PrerenderHelper::IsPrerendering(render_frame); | 851 prerender::PrerenderHelper::IsPrerendering(render_frame); |
| 852 | 852 |
| 853 // TODO(tommycli): Plugin Power Saver is disabled on prerendered pages. | 853 // TODO(tommycli): Background tab plugin deferral is disabled. |
| 854 // This is because the placeholder does not feed back into | 854 // This is because the placeholder does not feed back into |
| 855 // ChromeContentRendererClient::CreatePlugin. Because of this, it does | 855 // ChromeContentRendererClient::CreatePlugin. Because of this, it does |
| 856 // not handle the preroll to UI overlay placeholder flow correctly. | 856 // not handle the preroll to UI overlay placeholder flow correctly. |
| 857 // | |
| 858 // Background tab plugin deferral is disabled for the same reason. | |
| 859 // | |
| 860 // https://crbug.com/471427 | 857 // https://crbug.com/471427 |
| 861 bool power_saver_enabled = | 858 bool power_saver_enabled = |
| 862 !is_prerendering && | |
| 863 status == | 859 status == |
| 864 ChromeViewHostMsg_GetPluginInfo_Status::kPlayImportantContent; | 860 ChromeViewHostMsg_GetPluginInfo_Status::kPlayImportantContent; |
| 865 | 861 |
| 866 if (info.name == ASCIIToUTF16(content::kFlashPluginName)) | 862 if (info.name == ASCIIToUTF16(content::kFlashPluginName)) |
| 867 TrackPosterParamPresence(params, power_saver_enabled); | 863 TrackPosterParamPresence(params, power_saver_enabled); |
| 868 | 864 |
| 869 PlaceholderPosterInfo poster_info; | 865 PlaceholderPosterInfo poster_info; |
| 870 if (power_saver_enabled) { | 866 if (power_saver_enabled) { |
| 871 poster_info.poster_attribute = | 867 poster_info.poster_attribute = |
| 872 GetPluginInstancePosterAttribute(params); | 868 GetPluginInstancePosterAttribute(params); |
| (...skipping 763 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1636 | 1632 |
| 1637 void ChromeContentRendererClient::RecordRappor(const std::string& metric, | 1633 void ChromeContentRendererClient::RecordRappor(const std::string& metric, |
| 1638 const std::string& sample) { | 1634 const std::string& sample) { |
| 1639 RenderThread::Get()->Send(new ChromeViewHostMsg_RecordRappor(metric, sample)); | 1635 RenderThread::Get()->Send(new ChromeViewHostMsg_RecordRappor(metric, sample)); |
| 1640 } | 1636 } |
| 1641 | 1637 |
| 1642 void ChromeContentRendererClient::RecordRapporURL(const std::string& metric, | 1638 void ChromeContentRendererClient::RecordRapporURL(const std::string& metric, |
| 1643 const GURL& url) { | 1639 const GURL& url) { |
| 1644 RenderThread::Get()->Send(new ChromeViewHostMsg_RecordRapporURL(metric, url)); | 1640 RenderThread::Get()->Send(new ChromeViewHostMsg_RecordRapporURL(metric, url)); |
| 1645 } | 1641 } |
| OLD | NEW |