Index: android_webview/native/aw_contents.cc |
diff --git a/android_webview/native/aw_contents.cc b/android_webview/native/aw_contents.cc |
index 9fd0edd64a5a6089fb4c615604049e92e52fdd01..a7dfa54e23c98ced7b1d749bc35ba0f9f848108e 100644 |
--- a/android_webview/native/aw_contents.cc |
+++ b/android_webview/native/aw_contents.cc |
@@ -154,37 +154,34 @@ void AwContents::SetWebContents(content::WebContents* web_contents) { |
new AwRenderViewHostExt(this, web_contents_.get())); |
AwAutofillManagerDelegate* autofill_manager_delegate = |
- AwBrowserContext::FromWebContents(web_contents_.get())-> |
- AutofillManagerDelegate(); |
+ AwAutofillManagerDelegate::FromWebContents(web_contents_.get()); |
if (autofill_manager_delegate) |
InitAutofillIfNecessary(autofill_manager_delegate->GetSaveFormData()); |
} |
void AwContents::SetSaveFormData(bool enabled) { |
InitAutofillIfNecessary(enabled); |
- // We need to check for the existence, since autofill_manager_delegate |
- // may not be created when the setting is false. |
- if (AutofillManager::FromWebContents(web_contents_.get())) { |
- AwAutofillManagerDelegate* autofill_manager_delegate = |
- AwBrowserContext::FromWebContents(web_contents_.get())-> |
- AutofillManagerDelegate(); |
- autofill_manager_delegate->SetSaveFormData(enabled); |
- } |
+ AwAutofillManagerDelegate::FromWebContents(web_contents_.get())-> |
+ SetSaveFormData(enabled); |
} |
void AwContents::InitAutofillIfNecessary(bool enabled) { |
// Do not initialize if the feature is not enabled. |
if (!enabled) |
return; |
- // Check if the autofill manager already exists. |
+ |
content::WebContents* web_contents = web_contents_.get(); |
if (AutofillManager::FromWebContents(web_contents)) |
return; |
+ AwBrowserContext::FromWebContents(web_contents)-> |
+ CreateUserPrefServiceIfNecessary(); |
+ |
+ AwAutofillManagerDelegate::CreateForWebContents(web_contents); |
+ |
AutofillManager::CreateForWebContentsAndDelegate( |
web_contents, |
- AwBrowserContext::FromWebContents(web_contents)-> |
- CreateAutofillManagerDelegate(enabled), |
+ AwAutofillManagerDelegate::FromWebContents(web_contents), |
l10n_util::GetDefaultLocale(), |
AutofillManager::DISABLE_AUTOFILL_DOWNLOAD_MANAGER); |
AutofillManager* autofill_manager = |