Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(232)

Unified Diff: chrome/browser/autofill/autofill_manager.h

Issue 10222017: Make password generation switched by a preference in chrome settings rather than a command line fla… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/autofill/autofill_manager.h
diff --git a/chrome/browser/autofill/autofill_manager.h b/chrome/browser/autofill/autofill_manager.h
index d0045f2fac945675aeff3ef132da7b2c08bf3be7..ddaf9a7cf173f9124972edbf920242fbb2ac5aa2 100644
--- a/chrome/browser/autofill/autofill_manager.h
+++ b/chrome/browser/autofill/autofill_manager.h
@@ -23,7 +23,9 @@
#include "chrome/browser/autofill/autofill_download.h"
#include "chrome/browser/autofill/field_types.h"
#include "chrome/browser/autofill/form_structure.h"
+#include "chrome/browser/prefs/pref_change_registrar.h"
#include "chrome/browser/sync/profile_sync_service_observer.h"
+#include "content/public/browser/notification_observer.h"
#include "content/public/browser/web_contents_observer.h"
class AutofillExternalDelegate;
@@ -60,7 +62,8 @@ struct PasswordFormFillData;
// Manages saving and restoring the user's personal information entered into web
// forms.
-class AutofillManager : public content::WebContentsObserver,
+class AutofillManager : public content::NotificationObserver,
+ public content::WebContentsObserver,
public AutofillDownloadManager::Observer,
public ProfileSyncServiceObserver,
public base::RefCounted<AutofillManager> {
@@ -115,12 +118,19 @@ class AutofillManager : public content::WebContentsObserver,
// Reset cache.
void Reset();
- // Informs the renderer of the current password generation state. This is a
+ // Informs the renderer of the current password sync state. This is a
// separate function to aid with testing.
+ virtual void SendPasswordSyncStateToRenderer(
Garrett Casto 2012/04/26 23:23:59 It looks like you have two versions of some of the
+ content::RenderViewHost* host,
+ bool enabled);
+
+ // Informs the renderers of the current password generation state for use
+ // in password generation. This is a separate function to aid with testing.
virtual void SendPasswordGenerationStateToRenderer(
content::RenderViewHost* host,
bool enabled);
+
// Logs quality metrics for the |submitted_form| and uploads the form data
// to the crowdsourcing server, if appropriate.
virtual void UploadFormDataAsyncCallback(
@@ -173,8 +183,20 @@ class AutofillManager : public content::WebContentsObserver,
// Register as an observer with the sync service.
void RegisterWithSyncService();
- // Determines what the current state of password generation is, and if it has
- // changed from |password_generation_enabled_|. If it has changed or if
+ // Determines what the current state of password sync is, and if it has
+ // changed from |password_sync_enabled_|. If it has changed or if
+ // |new_renderer| is true, it notifies the renderer of this change via
+ // SendPasswordSyncStateToRenderer.
+ void UpdatePasswordSyncState(content::RenderViewHost* host,
+ bool new_renderer);
+
+ // content::NotificationObserver override
+ virtual void Observe(int type,
+ const content::NotificationSource& source,
+ const content::NotificationDetails& details) OVERRIDE;
+
+ // Determines that the current state of password generation is, and if it
+ // has changed from password_generation_enabled_. If it has changed or if
// |new_renderer| is true, it notifies the renderer of this change via
// SendPasswordGenerationStateToRenderer.
void UpdatePasswordGenerationState(content::RenderViewHost* host,
@@ -337,13 +359,19 @@ class AutofillManager : public content::WebContentsObserver,
// When the user first interacted with a potentially fillable form on this
// page.
base::TimeTicks initial_interaction_timestamp_;
- // If password generation is enabled. We cache this value so that we don't
+ // If password sync is enabled. We cache this value so that we don't
// spam the renderer with messages during startup when the sync state
// is changing rapidly.
- bool password_generation_enabled_;
+ bool password_sync_enabled_;
Garrett Casto 2012/04/26 23:23:59 This should be removed.
// The ProfileSyncService associated with this tab. This may be NULL in
// testing.
base::WeakPtr<ProfileSyncService> sync_service_;
+ // If password generation is enabled. We cache this value so that we don't
+ // spam the renderer with messages during startup when the sync state
+ // is changing rapidly.
+ bool password_generation_enabled_;
+ // Handle preference change event.
+ PrefChangeRegistrar registrar_;
// Our copy of the form data.
ScopedVector<FormStructure> form_structures_;

Powered by Google App Engine
This is Rietveld 408576698