Chromium Code Reviews| Index: chrome/browser/permissions/permission_context_base.cc |
| diff --git a/chrome/browser/permissions/permission_context_base.cc b/chrome/browser/permissions/permission_context_base.cc |
| index f634e2625b8e3f6b349056925297f43d5d334188..1debbd0561d5273509aba02583e8752559598bd3 100644 |
| --- a/chrome/browser/permissions/permission_context_base.cc |
| +++ b/chrome/browser/permissions/permission_context_base.cc |
| @@ -67,7 +67,8 @@ PermissionContextBase::PermissionContextBase( |
| permission_queue_controller_.reset(new PermissionQueueController( |
| profile_, permission_type_, content_settings_type_)); |
| #endif |
| - PermissionDecisionAutoBlocker::UpdateFromVariations(); |
| + PermissionDecisionAutoBlocker::GetForProfile(profile_) |
| + ->UpdateFromVariations(); |
| } |
| PermissionContextBase::~PermissionContextBase() { |
| @@ -130,20 +131,12 @@ void PermissionContextBase::RequestPermission( |
| return; |
| } |
| - if (!db_manager_) { |
| - safe_browsing::SafeBrowsingService* sb_service = |
| - g_browser_process->safe_browsing_service(); |
| - if (sb_service) |
| - db_manager_ = sb_service->database_manager(); |
| - } |
| - |
| // Asynchronously check whether the origin should be blocked from making this |
| // permission request. It may be on the Safe Browsing API blacklist, or it may |
| // have been dismissed too many times in a row. If the origin is allowed to |
| // request, that request will be made to ContinueRequestPermission(). |
| - PermissionDecisionAutoBlocker::UpdateEmbargoedStatus( |
| - db_manager_, permission_type_, requesting_origin, web_contents, |
| - safe_browsing_timeout_, profile_, base::Time::Now(), |
| + PermissionDecisionAutoBlocker::GetForProfile(profile_)->UpdateEmbargoedStatus( |
| + permission_type_, requesting_origin, web_contents, base::Time::Now(), |
| base::Bind(&PermissionContextBase::ContinueRequestPermission, |
| weak_factory_.GetWeakPtr(), web_contents, id, |
| requesting_origin, embedding_origin, user_gesture, callback)); |
| @@ -165,14 +158,13 @@ void PermissionContextBase::ContinueRequestPermission( |
| base::StringPrintf( |
| "%s permission has been auto-blocked.", |
| PermissionUtil::GetPermissionString(permission_type_).c_str())); |
| - // Permission has been blacklisted, block the request. |
| + // Permission has been automatically blocked. |
| // TODO(meredithl): Consider setting the content setting and persisting |
|
dominickn
2017/01/20 04:03:47
You can remove this TODO :)
meredithl
2017/01/20 04:21:33
Done.
|
| // the decision to block. |
| callback.Run(CONTENT_SETTING_BLOCK); |
| return; |
| } |
| - // Site is not blacklisted by Safe Browsing for the requested permission. |
| PermissionUmaUtil::PermissionRequested(permission_type_, requesting_origin, |
| embedding_origin, profile_); |
| @@ -191,12 +183,13 @@ ContentSetting PermissionContextBase::GetPermissionStatus( |
| !content::IsOriginSecure(requesting_origin)) { |
| return CONTENT_SETTING_BLOCK; |
| } |
| - |
| + PermissionDecisionAutoBlocker* autoblocker = |
|
dominickn
2017/01/20 04:03:47
Nit: newline above this line. Also consider not ha
meredithl
2017/01/20 04:21:33
Done.
|
| + PermissionDecisionAutoBlockerFactory::GetForProfile(profile_); |
| ContentSetting content_setting = |
| GetPermissionStatusInternal(requesting_origin, embedding_origin); |
| if (content_setting == CONTENT_SETTING_ASK && |
| - PermissionDecisionAutoBlocker::IsUnderEmbargo( |
| - permission_type_, profile_, requesting_origin, base::Time::Now())) { |
| + autoblocker->IsUnderEmbargo(permission_type_, requesting_origin, |
| + base::Time::Now())) { |
| return CONTENT_SETTING_BLOCK; |
| } |
| return content_setting; |
| @@ -327,8 +320,9 @@ void PermissionContextBase::PermissionDecided( |
| } |
| if (content_setting == CONTENT_SETTING_DEFAULT && |
| - PermissionDecisionAutoBlocker::RecordDismissAndEmbargo( |
| - requesting_origin, permission_type_, profile_, base::Time::Now())) { |
| + PermissionDecisionAutoBlocker::GetForProfile(profile_) |
| + ->RecordDismissAndEmbargo(requesting_origin, permission_type_, |
| + base::Time::Now())) { |
| // The permission has been embargoed, so it is blocked for this permission |
| // request, but not persisted. |
| content_setting = CONTENT_SETTING_BLOCK; |
| @@ -390,10 +384,3 @@ void PermissionContextBase::UpdateContentSetting( |
| content_settings_type_, std::string(), |
| content_setting); |
| } |
| - |
| -void PermissionContextBase::SetSafeBrowsingDatabaseManagerAndTimeoutForTest( |
| - scoped_refptr<safe_browsing::SafeBrowsingDatabaseManager> db_manager, |
| - int timeout) { |
| - db_manager_ = db_manager; |
| - safe_browsing_timeout_ = timeout; |
| -} |