WebBrowser/WebBrowserTabWidget.py

changeset 5784
362bbcc49ac1
parent 5783
44a9f08de394
child 5785
7c7c5f9e4fad
equal deleted inserted replaced
5783:44a9f08de394 5784:362bbcc49ac1
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()

eric ide

mercurial