Chromium Code Reviews| 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/banners/app_banner_settings_helper.h" | 5 #include "chrome/browser/banners/app_banner_settings_helper.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 72 app_dict = new base::DictionaryValue(); | 72 app_dict = new base::DictionaryValue(); |
| 73 origin_dict->SetWithoutPathExpansion(key_name, make_scoped_ptr(app_dict)); | 73 origin_dict->SetWithoutPathExpansion(key_name, make_scoped_ptr(app_dict)); |
| 74 } | 74 } |
| 75 } | 75 } |
| 76 | 76 |
| 77 return app_dict; | 77 return app_dict; |
| 78 } | 78 } |
| 79 | 79 |
| 80 } // namespace | 80 } // namespace |
| 81 | 81 |
| 82 void AppBannerSettingsHelper::ClearHistoryForURLs( | |
| 83 Profile* profile, | |
| 84 const std::set<GURL>& origin_urls) { | |
| 85 HostContentSettingsMap* settings = profile->GetHostContentSettingsMap(); | |
| 86 for (const auto& origin_url : origin_urls) { | |
|
Bernhard Bauer
2015/02/13 10:05:06
Using GURL instead of auto here is clearer, and no
benwells
2015/02/15 22:56:05
Done.
| |
| 87 ContentSettingsPattern pattern(ContentSettingsPattern::FromURL(origin_url)); | |
| 88 if (!pattern.IsValid()) | |
| 89 continue; | |
| 90 | |
| 91 settings->SetWebsiteSetting(pattern, ContentSettingsPattern::Wildcard(), | |
| 92 CONTENT_SETTINGS_TYPE_APP_BANNER, std::string(), | |
| 93 nullptr); | |
| 94 } | |
| 95 } | |
| 96 | |
| 82 void AppBannerSettingsHelper::RecordBannerEvent( | 97 void AppBannerSettingsHelper::RecordBannerEvent( |
| 83 content::WebContents* web_contents, | 98 content::WebContents* web_contents, |
| 84 const GURL& origin_url, | 99 const GURL& origin_url, |
| 85 const std::string& package_name_or_start_url, | 100 const std::string& package_name_or_start_url, |
| 86 AppBannerEvent event, | 101 AppBannerEvent event, |
| 87 base::Time time) { | 102 base::Time time) { |
| 88 Profile* profile = | 103 Profile* profile = |
| 89 Profile::FromBrowserContext(web_contents->GetBrowserContext()); | 104 Profile::FromBrowserContext(web_contents->GetBrowserContext()); |
| 90 if (profile->IsOffTheRecord() || web_contents->GetURL() != origin_url || | 105 if (profile->IsOffTheRecord() || web_contents->GetURL() != origin_url || |
| 91 package_name_or_start_url.empty()) { | 106 package_name_or_start_url.empty()) { |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 321 GetAppDict(origin_dict.get(), package_name_or_start_url); | 336 GetAppDict(origin_dict.get(), package_name_or_start_url); |
| 322 if (!app_dict) | 337 if (!app_dict) |
| 323 return; | 338 return; |
| 324 | 339 |
| 325 // Update the setting and save it back. | 340 // Update the setting and save it back. |
| 326 app_dict->SetBoolean(kHasBlockedKey, true); | 341 app_dict->SetBoolean(kHasBlockedKey, true); |
| 327 settings->SetWebsiteSetting(pattern, ContentSettingsPattern::Wildcard(), | 342 settings->SetWebsiteSetting(pattern, ContentSettingsPattern::Wildcard(), |
| 328 CONTENT_SETTINGS_TYPE_APP_BANNER, std::string(), | 343 CONTENT_SETTINGS_TYPE_APP_BANNER, std::string(), |
| 329 origin_dict.release()); | 344 origin_dict.release()); |
| 330 } | 345 } |
| OLD | NEW |