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

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

Issue 26753005: Adding compositor callbacks to RenderWidgetHostViewAndroid (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Plumb compositor provider through instead of compositor Created 7 years, 1 month 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/TabBase.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabBase.java b/chrome/android/java/src/org/chromium/chrome/browser/TabBase.java
index fa6a4742fac2c83a8e8da1be4b28faa9007c63bc..f89aa8248c4eb25d8f998367a93fb31c15e343b9 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/TabBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/TabBase.java
@@ -15,6 +15,7 @@ import org.chromium.chrome.browser.infobar.AutoLoginProcessor;
import org.chromium.chrome.browser.infobar.InfoBarContainer;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.ui.toolbar.ToolbarModelSecurityLevel;
+import org.chromium.content.browser.CompositorProvider;
import org.chromium.content.browser.ContentView;
import org.chromium.content.browser.ContentViewClient;
import org.chromium.content.browser.ContentViewCore;
@@ -84,6 +85,11 @@ public abstract class TabBase implements NavigationClient {
private ContentViewCore mContentViewCore;
/**
+ * TabBase does not own CompositorProvider.
+ */
+ private CompositorProvider mCompositorProvider;
+
+ /**
* A list of TabBase observers. These are used to broadcast TabBase events to listeners.
*/
private final ObserverList<TabObserver> mObservers = new ObserverList<TabObserver>();
@@ -165,8 +171,9 @@ public abstract class TabBase implements NavigationClient {
* @param context An instance of a {@link Context}.
* @param window An instance of a {@link WindowAndroid}.
*/
- public TabBase(boolean incognito, Context context, WindowAndroid window) {
- this(INVALID_TAB_ID, incognito, context, window);
+ public TabBase(boolean incognito, Context context, WindowAndroid window,
+ CompositorProvider compositorProvider) {
+ this(INVALID_TAB_ID, incognito, context, window, compositorProvider);
}
/**
@@ -176,7 +183,8 @@ public abstract class TabBase implements NavigationClient {
* @param context An instance of a {@link Context}.
* @param window An instance of a {@link WindowAndroid}.
*/
- public TabBase(int id, boolean incognito, Context context, WindowAndroid window) {
+ public TabBase(int id, boolean incognito, Context context, WindowAndroid window,
+ CompositorProvider compositorProvider) {
// We need a valid Activity Context to build the ContentView with.
assert context == null || context instanceof Activity;
@@ -186,6 +194,7 @@ public abstract class TabBase implements NavigationClient {
mContext = context;
mApplicationContext = context != null ? context.getApplicationContext() : null;
mWindowAndroid = window;
+ mCompositorProvider = compositorProvider;
}
/**
@@ -543,7 +552,8 @@ public abstract class TabBase implements NavigationClient {
protected void initContentView(int nativeWebContents) {
destroyNativePageInternal();
- mContentView = ContentView.newInstance(mContext, nativeWebContents, getWindowAndroid());
+ mContentView = ContentView.newInstance(mContext, nativeWebContents, getWindowAndroid(),
+ mCompositorProvider);
mContentViewCore = mContentView.getContentViewCore();
mWebContentsDelegate = createWebContentsDelegate();

Powered by Google App Engine
This is Rietveld 408576698