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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java

Issue 2810813004: Hide fullscreen rotation jank (Closed)
Patch Set: Pull out everything except what's needed to solve fullscreen rotation jank Created 3 years, 5 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 side-by-side diff with in-line comments
Download patch
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 44be9d6c3ef729a7307daa1a8f127e7cb85e28d7..3e72c5bcee09059093f22c7d4e9c67105339d7eb 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
@@ -2509,6 +2509,11 @@ public class Tab
mFullscreenManager.setPersistentFullscreenMode(enableFullscreen);
}
+ // When going into fullscreen, we want to remove any cached thumbnail of the Tab.
+ if (enableFullscreen) {
+ clearThumbnailPlaceholder();
+ }
+
RewindableIterator<TabObserver> observers = getTabObservers();
while (observers.hasNext()) {
observers.next().onToggleFullscreenMode(this, enableFullscreen);
@@ -2542,6 +2547,13 @@ public class Tab
TabModelImpl.setActualTabSwitchLatencyMetricRequired();
}
+ /**
+ * Clears the cached thumbnail for this Tab.
+ */
+ public void clearThumbnailPlaceholder() {
Khushal 2017/07/12 17:15:39 You don't need this public function. Use the nativ
steimel 2017/07/12 18:24:21 Done.
+ if (mNativeTabAndroid != 0) nativeClearThumbnailPlaceholder(mNativeTabAndroid);
+ }
+
/**
* Push state about whether or not the browser controls can show or hide to the renderer.
*/
@@ -3133,6 +3145,7 @@ public class Tab
InterceptNavigationDelegate delegate);
private native void nativeAttachToTabContentManager(long nativeTabAndroid,
TabContentManager tabContentManager);
+ private native void nativeClearThumbnailPlaceholder(long nativeTabAndroid);
private native boolean nativeHasPrerenderedUrl(long nativeTabAndroid, String url);
private native void nativeSetWebappManifestScope(long nativeTabAndroid, String scope);
private native void nativeEnableEmbeddedMediaExperience(long nativeTabAndroid, boolean enabled);

Powered by Google App Engine
This is Rietveld 408576698