Fixed potential memory leak, moved variables

This commit is contained in:
Anthony Restaino 2016-02-24 19:18:05 -05:00
parent 486078a7d1
commit 8132b34bbf
2 changed files with 7 additions and 2 deletions

View File

@ -47,6 +47,9 @@ public class TabsManager {
@Nullable private LightningView mCurrentTab; @Nullable private LightningView mCurrentTab;
@Nullable private TabNumberChangedListener mTabNumberListener; @Nullable private TabNumberChangedListener mTabNumberListener;
private boolean mIsInitialized = false;
private List<Runnable> mPostInitializationWorkList = new ArrayList<>();
@Inject PreferenceManager mPreferenceManager; @Inject PreferenceManager mPreferenceManager;
@Inject Bus mEventBus; @Inject Bus mEventBus;
@Inject Application mApp; @Inject Application mApp;
@ -64,8 +67,9 @@ public class TabsManager {
mTabNumberListener = listener; mTabNumberListener = listener;
} }
private boolean mIsInitialized = false; public void cancelPendingWork() {
private List<Runnable> mPostInitializationWorkList = new ArrayList<>(); mPostInitializationWorkList.clear();
}
public void doAfterInitialization(@NonNull Runnable runnable) { public void doAfterInitialization(@NonNull Runnable runnable) {
if (mIsInitialized) { if (mIsInitialized) {

View File

@ -216,6 +216,7 @@ public class BrowserPresenter {
public void shutdown() { public void shutdown() {
onTabChanged(null); onTabChanged(null);
mTabsModel.setTabNumberChangedListener(null); mTabsModel.setTabNumberChangedListener(null);
mTabsModel.cancelPendingWork();
} }
public void tabChanged(int position) { public void tabChanged(int position) {