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..1033a329705786046a2ed604c291dc213935d964 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(); |
+ dismissHungRendererInfobar(); |
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 dismissHungRendererInfobar() { |
+ if (mNativeTabAndroid == 0) return; |
+ nativeDismissHungRendererInfoBar(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 nativeDismissHungRendererInfoBar(long nativeTabAndroid); |
private static native void nativeRecordStartupToCommitUma(); |
} |