455 self.__closeButton.setEnabled(True) |
455 self.__closeButton.setEnabled(True) |
456 self.__navigationButton.setEnabled(True) |
456 self.__navigationButton.setEnabled(True) |
457 |
457 |
458 if not restoreSession: |
458 if not restoreSession: |
459 if not linkName: |
459 if not linkName: |
460 if Preferences.getWebBrowser("NewTabBehavior") == 1: |
460 if Preferences.getWebBrowser("NewTabBehavior") == 0: |
|
461 linkName = "about:blank" |
|
462 elif Preferences.getWebBrowser("NewTabBehavior") == 1: |
461 linkName = Preferences.getWebBrowser("HomePage") |
463 linkName = Preferences.getWebBrowser("HomePage") |
462 elif Preferences.getWebBrowser("NewTabBehavior") == 2: |
464 elif Preferences.getWebBrowser("NewTabBehavior") == 2: |
463 linkName = "eric:speeddial" |
465 linkName = "eric:speeddial" |
464 else: |
466 |
465 if linkName in ["about:blank", "eric:blank"]: |
467 if linkName == "eric:blank": |
466 linkName = "" |
468 linkName = "about:blank" |
467 |
469 |
468 if linkName: |
470 if linkName: |
469 browser.setSource(QUrl(linkName)) |
471 browser.setSource(QUrl(linkName)) |
470 if not browser.documentTitle(): |
472 if not browser.documentTitle(): |
471 self.setTabText(index, self.__elide(linkName, Qt.ElideMiddle)) |
473 self.setTabText(index, self.__elide(linkName, Qt.ElideMiddle)) |
1212 |
1214 |
1213 # 2. tab data |
1215 # 2. tab data |
1214 sessionData["Tabs"] = [] |
1216 sessionData["Tabs"] = [] |
1215 for index in range(self.count()): |
1217 for index in range(self.count()): |
1216 browser = self.widget(index) |
1218 browser = self.widget(index) |
1217 data = browser.page().getSessionData() |
1219 data = browser.getSessionData() |
1218 sessionData["Tabs"].append(data) |
1220 sessionData["Tabs"].append(data) |
1219 |
1221 |
1220 return sessionData |
1222 return sessionData |
1221 |
1223 |
1222 def loadFromSessionData(self, sessionData): |
1224 def loadFromSessionData(self, sessionData): |
1229 """ |
1231 """ |
1230 tabCount = self.count() |
1232 tabCount = self.count() |
1231 |
1233 |
1232 # 1. load tab data |
1234 # 1. load tab data |
1233 if "Tabs" in sessionData: |
1235 if "Tabs" in sessionData: |
|
1236 loadTabOnActivate = True |
1234 for data in sessionData["Tabs"]: |
1237 for data in sessionData["Tabs"]: |
1235 browser = self.newBrowser(restoreSession=True) |
1238 browser = self.newBrowser(link="about:blank", restoreSession=True) |
1236 browser.page().loadFromSessionData(data) |
1239 if loadTabOnActivate: |
|
1240 browser.storeSessionData(data) |
|
1241 else: |
|
1242 browser.loadFromSessionData(data) |
1237 |
1243 |
1238 # 2. set tab index |
1244 # 2. set tab index |
1239 if "CurrentTabIndex" in sessionData: |
1245 if "CurrentTabIndex" in sessionData: |
1240 index = tabCount + sessionData["CurrentTabIndex"] |
1246 index = tabCount + sessionData["CurrentTabIndex"] |
1241 self.setCurrentIndex(index) |
1247 self.setCurrentIndex(index) |
|
1248 self.browserAt(index).show() |