| Index: chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
|
| index c8726db063dc7104a9cb076bd784f1088748c738..8825829d4e5b70339d08a94bf1a245579545db68 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java
|
| @@ -57,9 +57,6 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
|
|
|
| private CloseAllTabsDelegate mCloseAllTabsDelegate;
|
|
|
| - private ChromeTabCreator mRegularTabCreator;
|
| - private ChromeTabCreator mIncognitoTabCreator;
|
| -
|
| /**
|
| * Builds a {@link TabModelSelectorImpl} instance.
|
| * @param activity The {@link ChromeActivity} this model selector lives in.
|
| @@ -108,11 +105,6 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
|
| mTabSaver = new TabPersistentStore(persistencePolicy, this, mActivity, mActivity,
|
| persistentStoreObserver, mergeTabs);
|
| mOrderController = new TabModelOrderController(this);
|
| - mRegularTabCreator = new ChromeTabCreator(
|
| - mActivity, windowAndroid, mOrderController, mTabSaver, false);
|
| - mIncognitoTabCreator = new ChromeTabCreator(
|
| - mActivity, windowAndroid, mOrderController, mTabSaver, true);
|
| - mActivity.setTabCreators(mRegularTabCreator, mIncognitoTabCreator);
|
| }
|
|
|
| @Override
|
| @@ -161,14 +153,16 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
|
| assert !mActiveState : "onNativeLibraryReady called twice!";
|
| mTabContentManager = tabContentProvider;
|
|
|
| - TabModelImpl normalModel = new TabModelImpl(false, mRegularTabCreator, mIncognitoTabCreator,
|
| + ChromeTabCreator regularTabCreator = (ChromeTabCreator) mActivity.getTabCreator(false);
|
| + ChromeTabCreator incognitoTabCreator = (ChromeTabCreator) mActivity.getTabCreator(true);
|
| + TabModelImpl normalModel = new TabModelImpl(false, regularTabCreator, incognitoTabCreator,
|
| mUma, mOrderController, mTabContentManager, mTabSaver, this, mIsUndoSupported);
|
| TabModel incognitoModel = new IncognitoTabModel(new IncognitoTabModelImplCreator(
|
| - mRegularTabCreator, mIncognitoTabCreator, mUma, mOrderController,
|
| + regularTabCreator, incognitoTabCreator, mUma, mOrderController,
|
| mTabContentManager, mTabSaver, this));
|
| initialize(isIncognitoSelected(), normalModel, incognitoModel);
|
| - mRegularTabCreator.setTabModel(normalModel, mTabContentManager);
|
| - mIncognitoTabCreator.setTabModel(incognitoModel, mTabContentManager);
|
| + regularTabCreator.setTabModel(normalModel, mOrderController, mTabContentManager);
|
| + incognitoTabCreator.setTabModel(incognitoModel, mOrderController, mTabContentManager);
|
| mTabSaver.setTabContentManager(mTabContentManager);
|
|
|
| addObserver(new EmptyTabModelSelectorObserver() {
|
| @@ -178,6 +172,8 @@ public class TabModelSelectorImpl extends TabModelSelectorBase implements TabMod
|
| if (TabModelUtils.getTabById(getCurrentModel(), tab.getId()) != null) {
|
| mTabContentManager.invalidateIfChanged(tab.getId(), tab.getUrl());
|
| }
|
| +
|
| + if (tab.hasPendingLoadParams()) mTabSaver.addTabToSaveQueue(tab);
|
| }
|
| });
|
|
|
|
|