diff options
author | mnaganov@chromium.org <mnaganov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-10 12:45:52 +0000 |
---|---|---|
committer | mnaganov@chromium.org <mnaganov@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-10 12:45:52 +0000 |
commit | ff022acf0a6119f1eca898bcb59de95a468f3eba (patch) | |
tree | eecd5ce44515399463aab53a5bda1ceaa7e2f312 /android_webview/native/aw_settings.h | |
parent | 364370127681a4256633eb1bc9dc7bdccf726405 (diff) | |
download | chromium_src-ff022acf0a6119f1eca898bcb59de95a468f3eba.zip chromium_src-ff022acf0a6119f1eca898bcb59de95a468f3eba.tar.gz chromium_src-ff022acf0a6119f1eca898bcb59de95a468f3eba.tar.bz2 |
[Android WebView] Remove direct access to fields in aw_settings
As per Marcus' proposal, replace direct access to Java object
fields with getter methods. This is less error-prone and leverages
facilities of automatic JNI code generation.
BUG=b/8296421
Review URL: https://chromiumcodereview.appspot.com/14698004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199456 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'android_webview/native/aw_settings.h')
-rw-r--r-- | android_webview/native/aw_settings.h | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/android_webview/native/aw_settings.h b/android_webview/native/aw_settings.h index d24df56..42df647 100644 --- a/android_webview/native/aw_settings.h +++ b/android_webview/native/aw_settings.h @@ -21,18 +21,17 @@ class AwSettings : public content::WebContentsObserver { AwSettings(JNIEnv* env, jobject obj); virtual ~AwSettings(); - // Called from Java. + // Called from Java. Methods with "Locked" suffix require that the settings + // access lock is held during their execution. void Destroy(JNIEnv* env, jobject obj); void ResetScrollAndScaleState(JNIEnv* env, jobject obj); - void SetWebContents(JNIEnv* env, jobject obj, jint web_contents); - void UpdateEverything(JNIEnv* env, jobject obj); - void UpdateInitialPageScale(JNIEnv* env, jobject obj); - void UpdateUserAgent(JNIEnv* env, jobject obj); - void UpdateWebkitPreferences(JNIEnv* env, jobject obj); + void SetWebContentsLocked(JNIEnv* env, jobject obj, jint web_contents); + void UpdateEverythingLocked(JNIEnv* env, jobject obj); + void UpdateInitialPageScaleLocked(JNIEnv* env, jobject obj); + void UpdateUserAgentLocked(JNIEnv* env, jobject obj); + void UpdateWebkitPreferencesLocked(JNIEnv* env, jobject obj); private: - struct FieldIds; - AwRenderViewHostExt* GetAwRenderViewHostExt(); void UpdateEverything(); void UpdatePreferredSizeMode(); @@ -41,9 +40,6 @@ class AwSettings : public content::WebContentsObserver { virtual void RenderViewCreated( content::RenderViewHost* render_view_host) OVERRIDE; - // Java field references for accessing the values in the Java object. - scoped_ptr<FieldIds> field_ids_; - JavaObjectWeakGlobalRef aw_settings_; }; |