diff options
author | tedchoc@chromium.org <tedchoc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-25 16:49:04 +0000 |
---|---|---|
committer | tedchoc@chromium.org <tedchoc@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-25 16:49:04 +0000 |
commit | 10df415e1a16dae45a3bd8c076bc259bd6d77d13 (patch) | |
tree | d75dbfbe440088fa73365726b74edc2505e987e2 /components | |
parent | c414dd759eadd0172f75aef4bc19f4267bacdf4d (diff) | |
download | chromium_src-10df415e1a16dae45a3bd8c076bc259bd6d77d13.zip chromium_src-10df415e1a16dae45a3bd8c076bc259bd6d77d13.tar.gz chromium_src-10df415e1a16dae45a3bd8c076bc259bd6d77d13.tar.bz2 |
[Android] Add renderer responsiveness to the WebContentsDelegateAndroid.
BUG=225510
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/13843030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196419 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components')
3 files changed, 35 insertions, 0 deletions
diff --git a/components/web_contents_delegate_android/android/java/src/org/chromium/components/web_contents_delegate_android/WebContentsDelegateAndroid.java b/components/web_contents_delegate_android/android/java/src/org/chromium/components/web_contents_delegate_android/WebContentsDelegateAndroid.java index baedee2..9769985 100644 --- a/components/web_contents_delegate_android/android/java/src/org/chromium/components/web_contents_delegate_android/WebContentsDelegateAndroid.java +++ b/components/web_contents_delegate_android/android/java/src/org/chromium/components/web_contents_delegate_android/WebContentsDelegateAndroid.java @@ -66,9 +66,26 @@ public class WebContentsDelegateAndroid { onLoadProgressChanged(mMostRecentProgress); } + /** + * @param progress The load progress [0, 100] for the current web contents. + */ public void onLoadProgressChanged(int progress) { } + /** + * Signaled when the renderer has been deemed to be unresponsive. + */ + @CalledByNative + public void rendererUnresponsive() { + } + + /** + * Signaled when the render has been deemed to be responsive. + */ + @CalledByNative + public void rendererResponsive() { + } + @CalledByNative public void onUpdateUrl(String url) { } diff --git a/components/web_contents_delegate_android/web_contents_delegate_android.cc b/components/web_contents_delegate_android/web_contents_delegate_android.cc index 1e09f2f..d2c6e97 100644 --- a/components/web_contents_delegate_android/web_contents_delegate_android.cc +++ b/components/web_contents_delegate_android/web_contents_delegate_android.cc @@ -168,6 +168,22 @@ void WebContentsDelegateAndroid::LoadProgressChanged(WebContents* source, progress); } +void WebContentsDelegateAndroid::RendererUnresponsive(WebContents* source) { + JNIEnv* env = AttachCurrentThread(); + ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env); + if (obj.is_null()) + return; + Java_WebContentsDelegateAndroid_rendererUnresponsive(env, obj.obj()); +} + +void WebContentsDelegateAndroid::RendererResponsive(WebContents* source) { + JNIEnv* env = AttachCurrentThread(); + ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env); + if (obj.is_null()) + return; + Java_WebContentsDelegateAndroid_rendererResponsive(env, obj.obj()); +} + void WebContentsDelegateAndroid::CloseContents(WebContents* source) { JNIEnv* env = AttachCurrentThread(); ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env); diff --git a/components/web_contents_delegate_android/web_contents_delegate_android.h b/components/web_contents_delegate_android/web_contents_delegate_android.h index dd26ba4..ec90ac3 100644 --- a/components/web_contents_delegate_android/web_contents_delegate_android.h +++ b/components/web_contents_delegate_android/web_contents_delegate_android.h @@ -69,6 +69,8 @@ class WebContentsDelegateAndroid : public content::WebContentsDelegate { virtual void LoadingStateChanged(content::WebContents* source) OVERRIDE; virtual void LoadProgressChanged(content::WebContents* source, double load_progress) OVERRIDE; + virtual void RendererUnresponsive(content::WebContents* source) OVERRIDE; + virtual void RendererResponsive(content::WebContents* source) OVERRIDE; virtual void CloseContents(content::WebContents* source) OVERRIDE; virtual void MoveContents(content::WebContents* source, const gfx::Rect& pos) OVERRIDE; |