Index: chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java |
index 22034cb6e799184a9ad511767f22756612be884b..726287a940a76679437870e9a6b0dbc1f85f9524 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java |
@@ -470,6 +470,7 @@ public class Tab implements ViewGroup.OnHierarchyChangeListener, |
@Override |
public void rendererUnresponsive() { |
super.rendererUnresponsive(); |
+ showHungRendererInfobar(); |
if (mFullscreenManager == null) return; |
mFullscreenHungRendererToken = |
mFullscreenManager.showControlsPersistentAndClearOldToken( |
@@ -479,6 +480,7 @@ public class Tab implements ViewGroup.OnHierarchyChangeListener, |
@Override |
public void rendererResponsive() { |
super.rendererResponsive(); |
+ clearHungRendererInfobar(); |
if (mFullscreenManager == null) return; |
mFullscreenManager.hideControlsPersistent(mFullscreenHungRendererToken); |
mFullscreenHungRendererToken = FullscreenManager.INVALID_TOKEN; |
@@ -2785,6 +2787,16 @@ public class Tab implements ViewGroup.OnHierarchyChangeListener, |
return mParentIntent; |
} |
+ private void showHungRendererInfobar() { |
+ if (mNativeTabAndroid == 0) return; |
+ nativeShowHungRendererInfoBar(mNativeTabAndroid); |
+ } |
+ |
+ private void clearHungRendererInfobar() { |
+ if (mNativeTabAndroid == 0) return; |
+ nativeClearHungRendererInfoBar(mNativeTabAndroid); |
+ } |
+ |
/** |
* Creates a new tab to be loaded lazily. This can be used for tabs opened in the background |
* that should be loaded when switched to. initialize() needs to be called afterwards to |
@@ -2850,6 +2862,8 @@ public class Tab implements ViewGroup.OnHierarchyChangeListener, |
private native void nativeDetachOverlayContentViewCore(long nativeTabAndroid, |
ContentViewCore content); |
private native boolean nativeHasPrerenderedUrl(long nativeTabAndroid, String url); |
+ private native void nativeShowHungRendererInfoBar(long nativeTabAndroid); |
+ private native void nativeClearHungRendererInfoBar(long nativeTabAndroid); |
private static native void nativeRecordStartupToCommitUma(); |
} |