| 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/browser/browsing_data/browsing_data_remover.h" | 5 #include "chrome/browser/browsing_data/browsing_data_remover.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 861 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 872 prerender::PrerenderManager::CLEAR_PRERENDER_CONTENTS); | 872 prerender::PrerenderManager::CLEAR_PRERENDER_CONTENTS); |
| 873 } | 873 } |
| 874 | 874 |
| 875 // Tell the shader disk cache to clear. | 875 // Tell the shader disk cache to clear. |
| 876 content::RecordAction(UserMetricsAction("ClearBrowsingData_ShaderCache")); | 876 content::RecordAction(UserMetricsAction("ClearBrowsingData_ShaderCache")); |
| 877 storage_partition_remove_mask |= | 877 storage_partition_remove_mask |= |
| 878 content::StoragePartition::REMOVE_DATA_MASK_SHADER_CACHE; | 878 content::StoragePartition::REMOVE_DATA_MASK_SHADER_CACHE; |
| 879 | 879 |
| 880 storage_partition_remove_mask |= | 880 storage_partition_remove_mask |= |
| 881 content::StoragePartition::REMOVE_DATA_MASK_WEBRTC_IDENTITY; | 881 content::StoragePartition::REMOVE_DATA_MASK_WEBRTC_IDENTITY; |
| 882 |
| 883 // When clearing cache, wipe accumulated network related data |
| 884 // (TransportSecurityState and HttpServerPropertiesManager data). |
| 885 waiting_for_clear_networking_history_ = true; |
| 886 profile_->ClearNetworkingHistorySince( |
| 887 delete_begin_, |
| 888 base::Bind(&BrowsingDataRemover::OnClearedNetworkingHistory, |
| 889 weak_ptr_factory_.GetWeakPtr())); |
| 882 } | 890 } |
| 883 | 891 |
| 884 if (remove_mask & REMOVE_WEBRTC_IDENTITY) { | 892 if (remove_mask & REMOVE_WEBRTC_IDENTITY) { |
| 885 storage_partition_remove_mask |= | 893 storage_partition_remove_mask |= |
| 886 content::StoragePartition::REMOVE_DATA_MASK_WEBRTC_IDENTITY; | 894 content::StoragePartition::REMOVE_DATA_MASK_WEBRTC_IDENTITY; |
| 887 } | 895 } |
| 888 | 896 |
| 889 if (storage_partition_remove_mask) { | 897 if (storage_partition_remove_mask) { |
| 890 waiting_for_clear_storage_partition_data_ = true; | 898 waiting_for_clear_storage_partition_data_ = true; |
| 891 | 899 |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 949 waiting_for_clear_platform_keys_ = true; | 957 waiting_for_clear_platform_keys_ = true; |
| 950 } | 958 } |
| 951 #endif | 959 #endif |
| 952 } | 960 } |
| 953 #endif | 961 #endif |
| 954 | 962 |
| 955 // Remove omnibox zero-suggest cache results. | 963 // Remove omnibox zero-suggest cache results. |
| 956 if ((remove_mask & (REMOVE_CACHE | REMOVE_COOKIES))) | 964 if ((remove_mask & (REMOVE_CACHE | REMOVE_COOKIES))) |
| 957 prefs->SetString(omnibox::kZeroSuggestCachedResults, std::string()); | 965 prefs->SetString(omnibox::kZeroSuggestCachedResults, std::string()); |
| 958 | 966 |
| 959 // Always wipe accumulated network related data (TransportSecurityState and | |
| 960 // HttpServerPropertiesManager data). | |
| 961 waiting_for_clear_networking_history_ = true; | |
| 962 profile_->ClearNetworkingHistorySince( | |
| 963 delete_begin_, | |
| 964 base::Bind(&BrowsingDataRemover::OnClearedNetworkingHistory, | |
| 965 weak_ptr_factory_.GetWeakPtr())); | |
| 966 | |
| 967 if (remove_mask & (REMOVE_COOKIES | REMOVE_HISTORY)) { | 967 if (remove_mask & (REMOVE_COOKIES | REMOVE_HISTORY)) { |
| 968 domain_reliability::DomainReliabilityService* service = | 968 domain_reliability::DomainReliabilityService* service = |
| 969 domain_reliability::DomainReliabilityServiceFactory:: | 969 domain_reliability::DomainReliabilityServiceFactory:: |
| 970 GetForBrowserContext(profile_); | 970 GetForBrowserContext(profile_); |
| 971 if (service) { | 971 if (service) { |
| 972 domain_reliability::DomainReliabilityClearMode mode; | 972 domain_reliability::DomainReliabilityClearMode mode; |
| 973 if (remove_mask & REMOVE_COOKIES) | 973 if (remove_mask & REMOVE_COOKIES) |
| 974 mode = domain_reliability::CLEAR_CONTEXTS; | 974 mode = domain_reliability::CLEAR_CONTEXTS; |
| 975 else | 975 else |
| 976 mode = domain_reliability::CLEAR_BEACONS; | 976 mode = domain_reliability::CLEAR_BEACONS; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 1007 // Record the combined deletion of cookies and cache. | 1007 // Record the combined deletion of cookies and cache. |
| 1008 CookieOrCacheDeletionChoice choice = NEITHER_COOKIES_NOR_CACHE; | 1008 CookieOrCacheDeletionChoice choice = NEITHER_COOKIES_NOR_CACHE; |
| 1009 if (remove_mask & REMOVE_COOKIES && | 1009 if (remove_mask & REMOVE_COOKIES && |
| 1010 origin_type_mask_ & BrowsingDataHelper::UNPROTECTED_WEB) { | 1010 origin_type_mask_ & BrowsingDataHelper::UNPROTECTED_WEB) { |
| 1011 choice = remove_mask & REMOVE_CACHE ? BOTH_COOKIES_AND_CACHE | 1011 choice = remove_mask & REMOVE_CACHE ? BOTH_COOKIES_AND_CACHE |
| 1012 : ONLY_COOKIES; | 1012 : ONLY_COOKIES; |
| 1013 } else if (remove_mask & REMOVE_CACHE) { | 1013 } else if (remove_mask & REMOVE_CACHE) { |
| 1014 choice = ONLY_CACHE; | 1014 choice = ONLY_CACHE; |
| 1015 } | 1015 } |
| 1016 | 1016 |
| 1017 // Notify in case all actions taken were synchronous. |
| 1018 NotifyIfDone(); |
| 1019 |
| 1017 UMA_HISTOGRAM_ENUMERATION( | 1020 UMA_HISTOGRAM_ENUMERATION( |
| 1018 "History.ClearBrowsingData.UserDeletedCookieOrCache", | 1021 "History.ClearBrowsingData.UserDeletedCookieOrCache", |
| 1019 choice, MAX_CHOICE_VALUE); | 1022 choice, MAX_CHOICE_VALUE); |
| 1020 } | 1023 } |
| 1021 | 1024 |
| 1022 void BrowsingDataRemover::AddObserver(Observer* observer) { | 1025 void BrowsingDataRemover::AddObserver(Observer* observer) { |
| 1023 observer_list_.AddObserver(observer); | 1026 observer_list_.AddObserver(observer); |
| 1024 } | 1027 } |
| 1025 | 1028 |
| 1026 void BrowsingDataRemover::RemoveObserver(Observer* observer) { | 1029 void BrowsingDataRemover::RemoveObserver(Observer* observer) { |
| (...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1316 waiting_for_clear_domain_reliability_monitor_ = false; | 1319 waiting_for_clear_domain_reliability_monitor_ = false; |
| 1317 NotifyIfDone(); | 1320 NotifyIfDone(); |
| 1318 } | 1321 } |
| 1319 | 1322 |
| 1320 // static | 1323 // static |
| 1321 BrowsingDataRemover::CallbackSubscription | 1324 BrowsingDataRemover::CallbackSubscription |
| 1322 BrowsingDataRemover::RegisterOnBrowsingDataRemovedCallback( | 1325 BrowsingDataRemover::RegisterOnBrowsingDataRemovedCallback( |
| 1323 const BrowsingDataRemover::Callback& callback) { | 1326 const BrowsingDataRemover::Callback& callback) { |
| 1324 return GetOnBrowsingDataRemovedCallbacks()->Add(callback); | 1327 return GetOnBrowsingDataRemovedCallbacks()->Add(callback); |
| 1325 } | 1328 } |
| OLD | NEW |