Index: chrome/browser/autofill/autofill_manager.cc |
diff --git a/chrome/browser/autofill/autofill_manager.cc b/chrome/browser/autofill/autofill_manager.cc |
index 571e05f3f09cfb1485277aabbed70caa556b2b9d..93f65210a2268d0b5b9b38468a57284b9cc49d81 100644 |
--- a/chrome/browser/autofill/autofill_manager.cc |
+++ b/chrome/browser/autofill/autofill_manager.cc |
@@ -57,6 +57,7 @@ |
#include "webkit/forms/form_data.h" |
#include "webkit/forms/form_data_predictions.h" |
#include "webkit/forms/form_field.h" |
+#include "webkit/forms/password_form_dom_manager.h" |
using base::TimeTicks; |
using content::BrowserThread; |
@@ -295,6 +296,10 @@ void AutofillManager::DidNavigateMainFrame( |
Reset(); |
} |
+bool AutofillManager::HasExternalDelegate() { |
+ return external_delegate_ != NULL; |
+} |
+ |
bool AutofillManager::OnMessageReceived(const IPC::Message& message) { |
bool handled = true; |
IPC_BEGIN_MESSAGE_MAP(AutofillManager, message) |
@@ -318,6 +323,10 @@ bool AutofillManager::OnMessageReceived(const IPC::Message& message) { |
OnDidEndTextFieldEditing) |
IPC_MESSAGE_HANDLER(AutofillHostMsg_HideAutofillPopup, |
OnHideAutofillPopup) |
+ IPC_MESSAGE_HANDLER(AutofillHostMsg_FrameClosing, |
+ OnFrameClosing) |
+ IPC_MESSAGE_HANDLER(AutofillHostMsg_PasswordFormMapping, |
+ OnPasswordFormMapping) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
@@ -691,6 +700,19 @@ void AutofillManager::OnHideAutofillPopup() { |
external_delegate_->HideAutofillPopup(); |
} |
+void AutofillManager::OnFrameClosing() { |
+ if (external_delegate_) |
+ external_delegate_->FrameClosing(); |
+} |
+ |
+void AutofillManager::OnPasswordFormMapping( |
+ const webkit::forms::FormField& form, |
+ const webkit::forms::PasswordFormFillData fill_data) { |
+ if (external_delegate_) |
+ external_delegate_->PasswordFormMapping(form, fill_data); |
+} |
+ |
+ |
void AutofillManager::OnLoadedServerPredictions( |
const std::string& response_xml) { |
// Parse and store the server predictions. |