Index: components/browsing_data/core/counters/passwords_counter.h |
diff --git a/components/browsing_data/core/counters/passwords_counter.h b/components/browsing_data/core/counters/passwords_counter.h |
index dd69536393f351a1f0f054a60282c6b1e65b7da5..7c3739add08d4f1208bdc5b53ec2872ed46caade 100644 |
--- a/components/browsing_data/core/counters/passwords_counter.h |
+++ b/components/browsing_data/core/counters/passwords_counter.h |
@@ -11,15 +11,31 @@ |
#include "components/browsing_data/core/counters/browsing_data_counter.h" |
#include "components/password_manager/core/browser/password_store.h" |
#include "components/password_manager/core/browser/password_store_consumer.h" |
+#include "components/sync/driver/sync_service_observer.h" |
namespace browsing_data { |
class PasswordsCounter : public browsing_data::BrowsingDataCounter, |
public password_manager::PasswordStoreConsumer, |
- public password_manager::PasswordStore::Observer { |
+ public password_manager::PasswordStore::Observer, |
+ public syncer::SyncServiceObserver { |
public: |
+ class PasswordResult : public FinishedResult { |
+ public: |
+ PasswordResult(const PasswordsCounter* source, |
+ ResultInt value, |
+ bool password_sync_enabled); |
+ ~PasswordResult() override; |
+ |
+ bool password_sync_enabled() const { return password_sync_enabled_; } |
+ |
+ private: |
+ bool password_sync_enabled_; |
+ }; |
+ |
explicit PasswordsCounter( |
- scoped_refptr<password_manager::PasswordStore> store); |
+ scoped_refptr<password_manager::PasswordStore> store, |
+ syncer::SyncService* sync_service); |
~PasswordsCounter() override; |
const char* GetPrefName() const override; |
@@ -37,10 +53,15 @@ class PasswordsCounter : public browsing_data::BrowsingDataCounter, |
void OnLoginsChanged( |
const password_manager::PasswordStoreChangeList& changes) override; |
+ // SyncServiceObserver implementation. |
+ void OnStateChanged(syncer::SyncService* sync) override; |
+ |
void Count() override; |
base::CancelableTaskTracker cancelable_task_tracker_; |
scoped_refptr<password_manager::PasswordStore> store_; |
+ syncer::SyncService* sync_service_; |
+ bool password_sync_enabled_; |
}; |
} // namespace browsing_data |