| Index: chrome/android/shell/java/src/org/chromium/chrome/shell/TabManager.java
|
| diff --git a/chrome/android/shell/java/src/org/chromium/chrome/shell/TabManager.java b/chrome/android/shell/java/src/org/chromium/chrome/shell/TabManager.java
|
| index 0032af4c04b743d2e88efc6c8d99d1168d262839..b48a5bd657f56e3aba6ad9d76ed7c1f3d7bddb5d 100644
|
| --- a/chrome/android/shell/java/src/org/chromium/chrome/shell/TabManager.java
|
| +++ b/chrome/android/shell/java/src/org/chromium/chrome/shell/TabManager.java
|
| @@ -11,7 +11,10 @@ import android.view.ViewGroup;
|
| import android.widget.FrameLayout;
|
| import android.widget.LinearLayout;
|
|
|
| +import org.chromium.chrome.browser.EmptyTabObserver;
|
| +import org.chromium.chrome.browser.Tab;
|
| import org.chromium.content.browser.ContentVideoViewClient;
|
| +import org.chromium.content.browser.ContentView;
|
| import org.chromium.content.browser.ContentViewClient;
|
| import org.chromium.content.browser.ContentViewRenderView;
|
| import org.chromium.ui.base.WindowAndroid;
|
| @@ -33,6 +36,7 @@ public class TabManager extends LinearLayout {
|
| private ChromeShellTab mCurrentTab;
|
|
|
| private String mStartupUrl = DEFAULT_URL;
|
| + private ContentView mCurrentContentView;
|
|
|
| /**
|
| * @param context The Context the view is running in.
|
| @@ -122,11 +126,24 @@ public class TabManager extends LinearLayout {
|
| }
|
|
|
| mCurrentTab = tab;
|
| + mCurrentContentView = tab.getContentView();
|
| +
|
| + mCurrentTab.addObserver(new EmptyTabObserver() {
|
| + @Override
|
| + public void onContentChanged(Tab tab) {
|
| + mContentViewHolder.removeView(mCurrentContentView);
|
| + setupContent(tab);
|
| + }
|
| + });
|
|
|
| mToolbar.showTab(mCurrentTab);
|
| - mContentViewHolder.addView(mCurrentTab.getContentView());
|
| - mContentViewRenderView.setCurrentContentViewCore(mCurrentTab.getContentViewCore());
|
| - mCurrentTab.getContentView().requestFocus();
|
| - mCurrentTab.getContentViewCore().onShow();
|
| + setupContent(mCurrentTab);
|
| + }
|
| +
|
| + private void setupContent(Tab tab) {
|
| + mContentViewHolder.addView(tab.getContentView());
|
| + mContentViewRenderView.setCurrentContentViewCore(tab.getContentViewCore());
|
| + tab.getContentView().requestFocus();
|
| + tab.getContentViewCore().onShow();
|
| }
|
| }
|
|
|