Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(70)

Side by Side Diff: android_webview/native/aw_settings.h

Issue 143803016: [Android WebView] Fix thread unsafety in accessing Java side getters (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed maybeRunOnUiThreadBlocking in a better way Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #ifndef ANDROID_WEBVIEW_NATIVE_AW_SETTINGS_H_ 5 #ifndef ANDROID_WEBVIEW_NATIVE_AW_SETTINGS_H_
6 #define ANDROID_WEBVIEW_NATIVE_AW_SETTINGS_H_ 6 #define ANDROID_WEBVIEW_NATIVE_AW_SETTINGS_H_
7 7
8 #include <jni.h> 8 #include <jni.h>
9 9
10 #include "base/android/jni_helper.h" 10 #include "base/android/jni_helper.h"
(...skipping 10 matching lines...) Expand all
21 class AwSettings : public content::WebContentsObserver { 21 class AwSettings : public content::WebContentsObserver {
22 public: 22 public:
23 static AwSettings* FromWebContents(content::WebContents* web_contents); 23 static AwSettings* FromWebContents(content::WebContents* web_contents);
24 24
25 AwSettings(JNIEnv* env, jobject obj, jlong web_contents); 25 AwSettings(JNIEnv* env, jobject obj, jlong web_contents);
26 virtual ~AwSettings(); 26 virtual ~AwSettings();
27 27
28 // Called from Java. Methods with "Locked" suffix require that the settings 28 // Called from Java. Methods with "Locked" suffix require that the settings
29 // access lock is held during their execution. 29 // access lock is held during their execution.
30 void Destroy(JNIEnv* env, jobject obj); 30 void Destroy(JNIEnv* env, jobject obj);
31 void PopulateWebPreferencesLocked(JNIEnv* env, jobject obj, jlong web_prefs);
31 void ResetScrollAndScaleState(JNIEnv* env, jobject obj); 32 void ResetScrollAndScaleState(JNIEnv* env, jobject obj);
32 void UpdateEverythingLocked(JNIEnv* env, jobject obj); 33 void UpdateEverythingLocked(JNIEnv* env, jobject obj);
33 void UpdateInitialPageScaleLocked(JNIEnv* env, jobject obj); 34 void UpdateInitialPageScaleLocked(JNIEnv* env, jobject obj);
34 void UpdateUserAgentLocked(JNIEnv* env, jobject obj); 35 void UpdateUserAgentLocked(JNIEnv* env, jobject obj);
35 void UpdateWebkitPreferencesLocked(JNIEnv* env, jobject obj); 36 void UpdateWebkitPreferencesLocked(JNIEnv* env, jobject obj);
36 void UpdateFormDataPreferencesLocked(JNIEnv* env, jobject obj); 37 void UpdateFormDataPreferencesLocked(JNIEnv* env, jobject obj);
37 38
38 void PopulateWebPreferences(WebPreferences* web_prefs); 39 void PopulateWebPreferences(WebPreferences* web_prefs);
39 40
40 private: 41 private:
(...skipping 12 matching lines...) Expand all
53 bool accelerated_2d_canvas_disabled_by_switch_; 54 bool accelerated_2d_canvas_disabled_by_switch_;
54 55
55 JavaObjectWeakGlobalRef aw_settings_; 56 JavaObjectWeakGlobalRef aw_settings_;
56 }; 57 };
57 58
58 bool RegisterAwSettings(JNIEnv* env); 59 bool RegisterAwSettings(JNIEnv* env);
59 60
60 } // namespace android_webview 61 } // namespace android_webview
61 62
62 #endif // ANDROID_WEBVIEW_NATIVE_AW_SETTINGS_H_ 63 #endif // ANDROID_WEBVIEW_NATIVE_AW_SETTINGS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698