Chromium Code Reviews| Index: chrome/renderer/chrome_content_renderer_client.cc |
| diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc |
| index ca5b06b68576d4b1a475ac824db48af0f95cf6d6..bd0ee5dd63fac4315ba69d15b7b62eb56b894efa 100644 |
| --- a/chrome/renderer/chrome_content_renderer_client.cc |
| +++ b/chrome/renderer/chrome_content_renderer_client.cc |
| @@ -185,6 +185,16 @@ using extensions::Extension; |
| namespace { |
| +enum YouTubeRewriteStatus { |
| + SUCCESS = 0, |
| + SUCCESS_PARAMS_REWRITE = 1, |
| + SUCCESS_ENABLEJSAPI = 2, |
| + FAILURE_ENABLEJSAPI = 3, |
| + NUM_PLUGIN_ERROR // should be kept last |
| +}; |
| + |
| +const char kFlashYouTubeRewriteUMA[] = "Plugin.Flash.YouTubeRewrite"; |
| + |
| // Whitelist PPAPI for Android Runtime for Chromium. (See crbug.com/383937) |
| #if defined(ENABLE_PLUGINS) |
| const char* const kPredefinedAllowedCameraDeviceOrigins[] = { |
| @@ -1391,6 +1401,11 @@ bool ChromeContentRendererClient::ShouldEnforceWebRTCRoutingPreferences() { |
| #endif |
| } |
| +void ChromeContentRendererClient::UpdateUMAMetrics(const int& status, |
|
mlamouri (slow - plz ping)
2016/08/05 12:51:09
Maybe name this "RecordYouTubeRewriteUMA"?
And mo
kdsilva
2016/08/05 14:33:54
Done.
|
| + const int& max) { |
|
mlamouri (slow - plz ping)
2016/08/05 12:51:09
s/const int&/int/
kdsilva
2016/08/05 14:33:54
Done.
|
| + UMA_HISTOGRAM_ENUMERATION(kFlashYouTubeRewriteUMA, status, max); |
| +} |
| + |
| GURL ChromeContentRendererClient::OverrideFlashEmbedWithHTML(const GURL& url) { |
| if (!base::FeatureList::IsEnabled(features::kOverrideYouTubeFlashEmbed)) |
| return GURL(); |
| @@ -1433,8 +1448,10 @@ GURL ChromeContentRendererClient::OverrideFlashEmbedWithHTML(const GURL& url) { |
| // We don't modify any URLs that contain the enablejsapi=1 parameter |
| // since the page may be interacting with the YouTube Flash player in |
| // Javascript and we don't want to break working content. |
| - if (corrected_url.query().find("enablejsapi=1") != std::string::npos) |
| + if (corrected_url.query().find("enablejsapi=1") != std::string::npos) { |
| + UpdateUMAMetrics(FAILURE_ENABLEJSAPI, NUM_PLUGIN_ERROR); |
| return GURL(); |
| + } |
| // Change the path to use the YouTube HTML5 API |
| std::string path = corrected_url.path(); |
| @@ -1443,5 +1460,7 @@ GURL ChromeContentRendererClient::OverrideFlashEmbedWithHTML(const GURL& url) { |
| url::Replacements<char> r; |
| r.SetPath(path.c_str(), url::Component(0, path.length())); |
| + UpdateUMAMetrics(invalid_url ? SUCCESS_PARAMS_REWRITE : SUCCESS, |
| + NUM_PLUGIN_ERROR); |
| return corrected_url.ReplaceComponents(r); |
| } |