OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "android_webview/native/aw_contents.h" | 5 #include "android_webview/native/aw_contents.h" |
6 | 6 |
7 #include "android_webview/browser/aw_browser_context.h" | 7 #include "android_webview/browser/aw_browser_context.h" |
8 #include "android_webview/browser/aw_browser_main_parts.h" | 8 #include "android_webview/browser/aw_browser_main_parts.h" |
9 #include "android_webview/browser/gpu_memory_buffer_impl.h" | 9 #include "android_webview/browser/gpu_memory_buffer_impl.h" |
10 #include "android_webview/browser/in_process_view_renderer.h" | 10 #include "android_webview/browser/in_process_view_renderer.h" |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
132 web_contents_.get())) { | 132 web_contents_.get())) { |
133 base::subtle::NoBarrier_AtomicIncrement(&g_instance_count, 1); | 133 base::subtle::NoBarrier_AtomicIncrement(&g_instance_count, 1); |
134 icon_helper_.reset(new IconHelper(web_contents_.get())); | 134 icon_helper_.reset(new IconHelper(web_contents_.get())); |
135 icon_helper_->SetListener(this); | 135 icon_helper_->SetListener(this); |
136 web_contents_->SetUserData(kAwContentsUserDataKey, | 136 web_contents_->SetUserData(kAwContentsUserDataKey, |
137 new AwContentsUserData(this)); | 137 new AwContentsUserData(this)); |
138 render_view_host_ext_.reset( | 138 render_view_host_ext_.reset( |
139 new AwRenderViewHostExt(this, web_contents_.get())); | 139 new AwRenderViewHostExt(this, web_contents_.get())); |
140 | 140 |
141 AwAutofillManagerDelegate* autofill_manager_delegate = | 141 AwAutofillManagerDelegate* autofill_manager_delegate = |
142 AwBrowserContext::FromWebContents(web_contents_.get())-> | 142 AwAutofillManagerDelegate::FromWebContents(web_contents_.get()); |
143 AutofillManagerDelegate(); | |
144 if (autofill_manager_delegate) | 143 if (autofill_manager_delegate) |
145 InitAutofillIfNecessary(autofill_manager_delegate->GetSaveFormData()); | 144 InitAutofillIfNecessary(autofill_manager_delegate->GetSaveFormData()); |
146 } | 145 } |
147 | 146 |
148 void AwContents::SetJavaPeers(JNIEnv* env, | 147 void AwContents::SetJavaPeers(JNIEnv* env, |
149 jobject obj, | 148 jobject obj, |
150 jobject aw_contents, | 149 jobject aw_contents, |
151 jobject web_contents_delegate, | 150 jobject web_contents_delegate, |
152 jobject contents_client_bridge, | 151 jobject contents_client_bridge, |
153 jobject io_thread_client, | 152 jobject io_thread_client, |
(...skipping 23 matching lines...) Expand all Loading... |
177 web_contents_.get(), | 176 web_contents_.get(), |
178 make_scoped_ptr(new InterceptNavigationDelegate( | 177 make_scoped_ptr(new InterceptNavigationDelegate( |
179 env, intercept_navigation_delegate))); | 178 env, intercept_navigation_delegate))); |
180 } | 179 } |
181 | 180 |
182 void AwContents::SetSaveFormData(bool enabled) { | 181 void AwContents::SetSaveFormData(bool enabled) { |
183 InitAutofillIfNecessary(enabled); | 182 InitAutofillIfNecessary(enabled); |
184 // We need to check for the existence, since autofill_manager_delegate | 183 // We need to check for the existence, since autofill_manager_delegate |
185 // may not be created when the setting is false. | 184 // may not be created when the setting is false. |
186 if (AutofillDriverImpl::FromWebContents(web_contents_.get())) { | 185 if (AutofillDriverImpl::FromWebContents(web_contents_.get())) { |
187 AwAutofillManagerDelegate* autofill_manager_delegate = | 186 AwAutofillManagerDelegate::FromWebContents(web_contents_.get())-> |
188 AwBrowserContext::FromWebContents(web_contents_.get())-> | 187 SetSaveFormData(enabled); |
189 AutofillManagerDelegate(); | |
190 autofill_manager_delegate->SetSaveFormData(enabled); | |
191 } | 188 } |
192 } | 189 } |
193 | 190 |
194 void AwContents::InitAutofillIfNecessary(bool enabled) { | 191 void AwContents::InitAutofillIfNecessary(bool enabled) { |
195 // Do not initialize if the feature is not enabled. | 192 // Do not initialize if the feature is not enabled. |
196 if (!enabled) | 193 if (!enabled) |
197 return; | 194 return; |
198 // Check if the autofill manager already exists. | 195 // Check if the autofill manager already exists. |
199 content::WebContents* web_contents = web_contents_.get(); | 196 content::WebContents* web_contents = web_contents_.get(); |
200 if (AutofillDriverImpl::FromWebContents(web_contents)) | 197 if (AutofillDriverImpl::FromWebContents(web_contents)) |
201 return; | 198 return; |
202 | 199 |
| 200 AwBrowserContext::FromWebContents(web_contents)-> |
| 201 CreateUserPrefServiceIfNecessary(); |
| 202 AwAutofillManagerDelegate::CreateForWebContents(web_contents); |
203 AutofillDriverImpl::CreateForWebContentsAndDelegate( | 203 AutofillDriverImpl::CreateForWebContentsAndDelegate( |
204 web_contents, | 204 web_contents, |
205 AwBrowserContext::FromWebContents(web_contents)-> | 205 AwAutofillManagerDelegate::FromWebContents(web_contents), |
206 CreateAutofillManagerDelegate(enabled), | |
207 l10n_util::GetDefaultLocale(), | 206 l10n_util::GetDefaultLocale(), |
208 AutofillManager::DISABLE_AUTOFILL_DOWNLOAD_MANAGER); | 207 AutofillManager::DISABLE_AUTOFILL_DOWNLOAD_MANAGER); |
209 } | 208 } |
210 | 209 |
211 AwContents::~AwContents() { | 210 AwContents::~AwContents() { |
212 DCHECK(AwContents::FromWebContents(web_contents_.get()) == this); | 211 DCHECK(AwContents::FromWebContents(web_contents_.get()) == this); |
213 web_contents_->RemoveUserData(kAwContentsUserDataKey); | 212 web_contents_->RemoveUserData(kAwContentsUserDataKey); |
214 if (find_helper_.get()) | 213 if (find_helper_.get()) |
215 find_helper_->SetListener(NULL); | 214 find_helper_->SetListener(NULL); |
216 if (icon_helper_.get()) | 215 if (icon_helper_.get()) |
(...skipping 497 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
714 return browser_view_renderer_->CapturePicture(); | 713 return browser_view_renderer_->CapturePicture(); |
715 } | 714 } |
716 | 715 |
717 void AwContents::EnableOnNewPicture(JNIEnv* env, | 716 void AwContents::EnableOnNewPicture(JNIEnv* env, |
718 jobject obj, | 717 jobject obj, |
719 jboolean enabled) { | 718 jboolean enabled) { |
720 browser_view_renderer_->EnableOnNewPicture(enabled); | 719 browser_view_renderer_->EnableOnNewPicture(enabled); |
721 } | 720 } |
722 | 721 |
723 } // namespace android_webview | 722 } // namespace android_webview |
OLD | NEW |