OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/browser/permissions/permission_uma_util.h" | 5 #include "chrome/browser/permissions/permission_uma_util.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/metrics/histogram_macros.h" | 9 #include "base/metrics/histogram_macros.h" |
10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
(...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
221 | 221 |
222 // In order to gauge the compatibility risk of implementing an improved | 222 // In order to gauge the compatibility risk of implementing an improved |
223 // iframe permissions security model, we would like to know the ratio of | 223 // iframe permissions security model, we would like to know the ratio of |
224 // same-origin to cross-origin permission requests. Our estimate of this | 224 // same-origin to cross-origin permission requests. Our estimate of this |
225 // ratio could be somewhat biased by repeated requests coming from a | 225 // ratio could be somewhat biased by repeated requests coming from a |
226 // single frame, but we expect this to be insignificant. | 226 // single frame, but we expect this to be insignificant. |
227 if (requesting_origin.GetOrigin() != embedding_origin.GetOrigin()) { | 227 if (requesting_origin.GetOrigin() != embedding_origin.GetOrigin()) { |
228 content::PermissionManager* manager = profile->GetPermissionManager(); | 228 content::PermissionManager* manager = profile->GetPermissionManager(); |
229 if (!manager) | 229 if (!manager) |
230 return; | 230 return; |
231 content::mojom::PermissionStatus embedding_permission_status = | 231 blink::mojom::PermissionStatus embedding_permission_status = |
232 manager->GetPermissionStatus(permission, embedding_origin, | 232 manager->GetPermissionStatus(permission, embedding_origin, |
233 embedding_origin); | 233 embedding_origin); |
234 | 234 |
235 base::HistogramBase* histogram = base::LinearHistogram::FactoryGet( | 235 base::HistogramBase* histogram = base::LinearHistogram::FactoryGet( |
236 "Permissions.Requested.CrossOrigin_" + | 236 "Permissions.Requested.CrossOrigin_" + |
237 PermissionUtil::GetPermissionString(permission), | 237 PermissionUtil::GetPermissionString(permission), |
238 1, static_cast<int>(content::mojom::PermissionStatus::LAST), | 238 1, static_cast<int>(blink::mojom::PermissionStatus::LAST), |
239 static_cast<int>(content::mojom::PermissionStatus::LAST) + 1, | 239 static_cast<int>(blink::mojom::PermissionStatus::LAST) + 1, |
240 base::HistogramBase::kUmaTargetedHistogramFlag); | 240 base::HistogramBase::kUmaTargetedHistogramFlag); |
241 histogram->Add(static_cast<int>(embedding_permission_status)); | 241 histogram->Add(static_cast<int>(embedding_permission_status)); |
242 } else { | 242 } else { |
243 UMA_HISTOGRAM_ENUMERATION( | 243 UMA_HISTOGRAM_ENUMERATION( |
244 "Permissions.Requested.SameOrigin", | 244 "Permissions.Requested.SameOrigin", |
245 static_cast<base::HistogramBase::Sample>(permission), | 245 static_cast<base::HistogramBase::Sample>(permission), |
246 static_cast<base::HistogramBase::Sample>(PermissionType::NUM)); | 246 static_cast<base::HistogramBase::Sample>(PermissionType::NUM)); |
247 } | 247 } |
248 } | 248 } |
249 | 249 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
283 const GURL& revoked_origin) { | 283 const GURL& revoked_origin) { |
284 // TODO(tsergeant): Expand metrics definitions for revocation to include all | 284 // TODO(tsergeant): Expand metrics definitions for revocation to include all |
285 // permissions. | 285 // permissions. |
286 if (permission == PermissionType::NOTIFICATIONS || | 286 if (permission == PermissionType::NOTIFICATIONS || |
287 permission == PermissionType::GEOLOCATION || | 287 permission == PermissionType::GEOLOCATION || |
288 permission == PermissionType::AUDIO_CAPTURE || | 288 permission == PermissionType::AUDIO_CAPTURE || |
289 permission == PermissionType::VIDEO_CAPTURE) { | 289 permission == PermissionType::VIDEO_CAPTURE) { |
290 RecordPermissionAction(permission, REVOKED, revoked_origin); | 290 RecordPermissionAction(permission, REVOKED, revoked_origin); |
291 } | 291 } |
292 } | 292 } |
OLD | NEW |