summaryrefslogtreecommitdiff
path: root/src/com/android/browser/Controller.java
diff options
context:
space:
mode:
authorMichael Kolb <kolby@google.com>2010-11-19 12:55:12 -0800
committerMichael Kolb <kolby@google.com>2010-11-19 13:58:17 -0800
commit1bf231334fd4bda8dbde5b9a0345c756a213b3a2 (patch)
tree412e2abc22e50b45a1d74ada226f84955ed2419e /src/com/android/browser/Controller.java
parent63c0266b5d1fca4df859fe4fa3a9555d0783a2b6 (diff)
restore all tabs on demand
Bug: 3214151 introduced new flag to determine if all tabs should be restored controlled by the Ui implementation Change-Id: I3e296f87a93fae54693bca186bb06ecd6db11d02
Diffstat (limited to 'src/com/android/browser/Controller.java')
-rw-r--r--src/com/android/browser/Controller.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 63f104a1..79fff3dc 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -83,6 +83,7 @@ import java.io.File;
import java.net.URLEncoder;
import java.util.Calendar;
import java.util.HashMap;
+import java.util.List;
/**
* Controller for browser
@@ -239,11 +240,12 @@ public class Controller
Calendar yesterday = Calendar.getInstance();
yesterday.add(Calendar.DATE, -1);
- boolean dontRestoreIncognitoTabs = lastActiveDate == null
+ boolean restoreIncognitoTabs = !(lastActiveDate == null
|| lastActiveDate.before(yesterday)
- || lastActiveDate.after(today);
+ || lastActiveDate.after(today));
- if (!mTabControl.restoreState(icicle, dontRestoreIncognitoTabs)) {
+ if (!mTabControl.restoreState(icicle, restoreIncognitoTabs,
+ mUi.needsRestoreAllTabs())) {
// there is no quit on Android. But if we can't restore the state,
// we can treat it as a new Browser, remove the old session cookies.
CookieManager.getInstance().removeSessionCookie();
@@ -280,7 +282,8 @@ public class Controller
loadUrlDataIn(t, urlData);
}
} else {
- if (dontRestoreIncognitoTabs) {
+ mUi.updateTabs(mTabControl.getTabs());
+ if (!restoreIncognitoTabs) {
WebView.cleanupPrivateBrowsingFiles(mActivity);
}
// TabControl.restoreState() will create a new tab even if
@@ -338,6 +341,11 @@ public class Controller
return mTabControl;
}
+ @Override
+ public List<Tab> getTabs() {
+ return mTabControl.getTabs();
+ }
+
// Open the icon database and retain all the icons for visited sites.
private void retainIconsOnStartup() {
final WebIconDatabase db = WebIconDatabase.getInstance();