Index: chrome/browser/browsing_data_remover.h |
diff --git a/chrome/browser/browsing_data_remover.h b/chrome/browser/browsing_data_remover.h |
index 8249e6ba5368195ea9ecdd7440272526507a6905..9a8addbc0989ece5a911aaa48a5eb90ea8b3dcc7 100644 |
--- a/chrome/browser/browsing_data_remover.h |
+++ b/chrome/browser/browsing_data_remover.h |
@@ -14,8 +14,8 @@ |
#include "chrome/browser/appcache/chrome_appcache_service.h" |
#include "chrome/browser/cancelable_request.h" |
#include "chrome/common/notification_registrar.h" |
-#include "webkit/database/database_tracker.h" |
+class PluginDataRemover; |
class Profile; |
class URLRequestContextGetter; |
@@ -23,6 +23,10 @@ namespace disk_cache { |
class Backend; |
} |
+namespace webkit_database { |
+class DatabaseTracker; |
+} |
+ |
// BrowsingDataRemover is responsible for removing data related to browsing: |
// visits in url database, downloads, cookies ... |
@@ -46,6 +50,7 @@ class BrowsingDataRemover : public NotificationObserver { |
static const int REMOVE_PASSWORDS = 1 << 3; |
static const int REMOVE_FORM_DATA = 1 << 4; |
static const int REMOVE_CACHE = 1 << 5; |
+ static const int REMOVE_LSO_DATA = 1 << 6; |
// Observer is notified when the removal is done. Done means keywords have |
// been deleted, cache cleared and all other tasks scheduled. |
@@ -137,6 +142,9 @@ class BrowsingDataRemover : public NotificationObserver { |
void OnAppCacheDeleted(int rv); |
ChromeAppCacheService* GetAppCacheService(); |
+ // Callback when plug-in data has been cleared. Invokes NotifyAndDeleteIfDone. |
+ void OnClearedPluginData(); |
+ |
// Calculate the begin time for the deletion range specified by |time_period|. |
base::Time CalculateBeginDeleteTime(TimePeriod time_period); |
@@ -144,7 +152,7 @@ class BrowsingDataRemover : public NotificationObserver { |
bool all_done() { |
return registrar_.IsEmpty() && !waiting_for_clear_cache_ && |
!waiting_for_clear_history_ && !waiting_for_clear_databases_ && |
- !waiting_for_clear_appcache_; |
+ !waiting_for_clear_appcache_ && !waiting_for_clear_lso_data_; |
} |
NotificationRegistrar registrar_; |
@@ -181,11 +189,15 @@ class BrowsingDataRemover : public NotificationObserver { |
scoped_refptr<URLRequestContextGetter> main_context_getter_; |
scoped_refptr<URLRequestContextGetter> media_context_getter_; |
+ // Used to delete plugin data. |
+ scoped_refptr<PluginDataRemover> plugin_data_remover_; |
+ |
// True if we're waiting for various data to be deleted. |
bool waiting_for_clear_databases_; |
bool waiting_for_clear_history_; |
bool waiting_for_clear_cache_; |
bool waiting_for_clear_appcache_; |
+ bool waiting_for_clear_lso_data_; |
ObserverList<Observer> observer_list_; |