| Index: chrome/browser/autofill/autofill_manager.h
|
| diff --git a/chrome/browser/autofill/autofill_manager.h b/chrome/browser/autofill/autofill_manager.h
|
| index d488a30acb6d0523fae1b1506e689763cb74908c..6bb416acc6728732861211c4cda1168db848cb74 100644
|
| --- a/chrome/browser/autofill/autofill_manager.h
|
| +++ b/chrome/browser/autofill/autofill_manager.h
|
| @@ -17,6 +17,7 @@
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/memory/scoped_vector.h"
|
| #include "base/string16.h"
|
| +#include "base/time.h"
|
| #include "chrome/browser/autofill/autofill_download.h"
|
| #include "chrome/browser/autofill/field_types.h"
|
| #include "chrome/browser/autofill/form_structure.h"
|
| @@ -113,10 +114,12 @@ class AutofillManager : public TabContentsObserver,
|
| void UnpackGUIDs(int id, GUIDPair* cc_guid, GUIDPair* profile_guid);
|
|
|
| private:
|
| - void OnFormSubmitted(const webkit_glue::FormData& form);
|
| + void OnFormSubmitted(const webkit_glue::FormData& form,
|
| + const base::TimeTicks& timestamp);
|
| void OnFormsSeen(const std::vector<webkit_glue::FormData>& forms);
|
| void OnTextFieldDidChange(const webkit_glue::FormData& form,
|
| - const webkit_glue::FormField& field);
|
| + const webkit_glue::FormField& field,
|
| + const base::TimeTicks& timestamp);
|
| void OnQueryFormFieldAutofill(int query_id,
|
| const webkit_glue::FormData& form,
|
| const webkit_glue::FormField& field);
|
| @@ -126,7 +129,7 @@ class AutofillManager : public TabContentsObserver,
|
| int unique_id);
|
| void OnShowAutofillDialog();
|
| void OnDidPreviewAutofillFormData();
|
| - void OnDidFillAutofillFormData();
|
| + void OnDidFillAutofillFormData(const base::TimeTicks& timestamp);
|
| void OnDidShowAutofillSuggestions(bool is_new_popup);
|
|
|
| // Fills |host| with the RenderViewHost for this tab.
|
| @@ -233,6 +236,9 @@ class AutofillManager : public TabContentsObserver,
|
| bool user_did_autofill_;
|
| // Has the user edited a field that was previously autofilled?
|
| bool user_did_edit_autofilled_field_;
|
| + // When the user first interacted with a potentially fillable form on this
|
| + // page.
|
| + base::TimeTicks initial_interaction_timestamp_;
|
|
|
| // Our copy of the form data.
|
| ScopedVector<FormStructure> form_structures_;
|
| @@ -277,6 +283,7 @@ class AutofillManager : public TabContentsObserver,
|
| FRIEND_TEST_ALL_PREFIXES(AutofillMetricsTest,
|
| UserHappinessFormLoadAndSubmission);
|
| FRIEND_TEST_ALL_PREFIXES(AutofillMetricsTest, UserHappinessFormInteraction);
|
| + FRIEND_TEST_ALL_PREFIXES(AutofillMetricsTest, FormFillDuration);
|
|
|
| DISALLOW_COPY_AND_ASSIGN(AutofillManager);
|
| };
|
|
|