| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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_settings.h" | 5 #include "android_webview/native/aw_settings.h" |
| 6 | 6 |
| 7 #include "android_webview/browser/renderer_host/aw_render_view_host_ext.h" | 7 #include "android_webview/browser/renderer_host/aw_render_view_host_ext.h" |
| 8 #include "android_webview/common/aw_content_client.h" | 8 #include "android_webview/common/aw_content_client.h" |
| 9 #include "android_webview/native/aw_contents.h" | 9 #include "android_webview/native/aw_contents.h" |
| 10 #include "base/android/jni_android.h" | 10 #include "base/android/jni_android.h" |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 return NULL; | 63 return NULL; |
| 64 AwSettingsUserData* data = static_cast<AwSettingsUserData*>( | 64 AwSettingsUserData* data = static_cast<AwSettingsUserData*>( |
| 65 web_contents->GetUserData(kAwSettingsUserDataKey)); | 65 web_contents->GetUserData(kAwSettingsUserDataKey)); |
| 66 return data ? data->settings_ : NULL; | 66 return data ? data->settings_ : NULL; |
| 67 } | 67 } |
| 68 | 68 |
| 69 private: | 69 private: |
| 70 AwSettings* settings_; | 70 AwSettings* settings_; |
| 71 }; | 71 }; |
| 72 | 72 |
| 73 AwSettings::AwSettings(JNIEnv* env, jobject obj, jlong web_contents) | 73 AwSettings::AwSettings(JNIEnv* env, |
| 74 : WebContentsObserver( | 74 jobject obj, |
| 75 reinterpret_cast<content::WebContents*>(web_contents)), | 75 content::WebContents* web_contents) |
| 76 : WebContentsObserver(web_contents), |
| 76 renderer_prefs_initialized_(false), | 77 renderer_prefs_initialized_(false), |
| 77 aw_settings_(env, obj) { | 78 aw_settings_(env, obj) { |
| 78 reinterpret_cast<content::WebContents*>(web_contents)-> | 79 web_contents->SetUserData(kAwSettingsUserDataKey, |
| 79 SetUserData(kAwSettingsUserDataKey, new AwSettingsUserData(this)); | 80 new AwSettingsUserData(this)); |
| 80 } | 81 } |
| 81 | 82 |
| 82 AwSettings::~AwSettings() { | 83 AwSettings::~AwSettings() { |
| 83 if (web_contents()) { | 84 if (web_contents()) { |
| 84 web_contents()->SetUserData(kAwSettingsUserDataKey, NULL); | 85 web_contents()->SetUserData(kAwSettingsUserDataKey, NULL); |
| 85 } | 86 } |
| 86 | 87 |
| 87 JNIEnv* env = base::android::AttachCurrentThread(); | 88 JNIEnv* env = base::android::AttachCurrentThread(); |
| 88 ScopedJavaLocalRef<jobject> scoped_obj = aw_settings_.get(env); | 89 ScopedJavaLocalRef<jobject> scoped_obj = aw_settings_.get(env); |
| 89 jobject obj = scoped_obj.obj(); | 90 jobject obj = scoped_obj.obj(); |
| (...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 400 Java_AwSettings_getAllowDisplayingInsecureContentLocked(env, obj); | 401 Java_AwSettings_getAllowDisplayingInsecureContentLocked(env, obj); |
| 401 web_prefs->allow_running_insecure_content = | 402 web_prefs->allow_running_insecure_content = |
| 402 Java_AwSettings_getAllowRunningInsecureContentLocked(env, obj); | 403 Java_AwSettings_getAllowRunningInsecureContentLocked(env, obj); |
| 403 | 404 |
| 404 web_prefs->fullscreen_supported = | 405 web_prefs->fullscreen_supported = |
| 405 Java_AwSettings_getFullscreenSupportedLocked(env, obj); | 406 Java_AwSettings_getFullscreenSupportedLocked(env, obj); |
| 406 } | 407 } |
| 407 | 408 |
| 408 static jlong Init(JNIEnv* env, | 409 static jlong Init(JNIEnv* env, |
| 409 jobject obj, | 410 jobject obj, |
| 410 jlong web_contents) { | 411 jobject web_contents) { |
| 411 AwSettings* settings = new AwSettings(env, obj, web_contents); | 412 content::WebContents* contents = content::WebContents::FromJavaWebContents( |
| 413 web_contents); |
| 414 AwSettings* settings = new AwSettings(env, obj, contents); |
| 412 return reinterpret_cast<intptr_t>(settings); | 415 return reinterpret_cast<intptr_t>(settings); |
| 413 } | 416 } |
| 414 | 417 |
| 415 static jstring GetDefaultUserAgent(JNIEnv* env, jclass clazz) { | 418 static jstring GetDefaultUserAgent(JNIEnv* env, jclass clazz) { |
| 416 return base::android::ConvertUTF8ToJavaString(env, GetUserAgent()).Release(); | 419 return base::android::ConvertUTF8ToJavaString(env, GetUserAgent()).Release(); |
| 417 } | 420 } |
| 418 | 421 |
| 419 bool RegisterAwSettings(JNIEnv* env) { | 422 bool RegisterAwSettings(JNIEnv* env) { |
| 420 return RegisterNativesImpl(env); | 423 return RegisterNativesImpl(env); |
| 421 } | 424 } |
| 422 | 425 |
| 423 } // namespace android_webview | 426 } // namespace android_webview |
| OLD | NEW |