eric6/WebBrowser/Session/SessionManager.py

changeset 7771
787a6b3f8c9f
parent 7759
51aa6c6b66f7
child 7775
4a1db75550bd
equal deleted inserted replaced
7770:49f3377aebf1 7771:787a6b3f8c9f
19 QActionGroup, QApplication, QInputDialog, QLineEdit, QDialog, 19 QActionGroup, QApplication, QInputDialog, QLineEdit, QDialog,
20 QDialogButtonBox, QLabel, QComboBox, QVBoxLayout 20 QDialogButtonBox, QLabel, QComboBox, QVBoxLayout
21 ) 21 )
22 22
23 from E5Gui import E5MessageBox 23 from E5Gui import E5MessageBox
24 from E5Gui.E5OverrideCursor import E5OverrideCursor
24 25
25 import Utilities 26 import Utilities
26 import Preferences 27 import Preferences
27 28
28 29
437 """ 438 """
438 from WebBrowser.WebBrowserWindow import WebBrowserWindow 439 from WebBrowser.WebBrowserWindow import WebBrowserWindow
439 if window is None: 440 if window is None:
440 window = WebBrowserWindow.mainWindow() 441 window = WebBrowserWindow.mainWindow()
441 442
442 QApplication.setOverrideCursor(Qt.WaitCursor) 443 with E5OverrideCursor():
443 # restore session for first window 444 # restore session for first window
444 data = sessionData["Windows"].pop(0) 445 data = sessionData["Windows"].pop(0)
445 window.tabWidget().loadFromSessionData(data)
446 if "WindowGeometry" in data:
447 geometry = QByteArray.fromBase64(
448 data["WindowGeometry"].encode("ascii"))
449 window.restoreGeometry(geometry)
450 QApplication.processEvents()
451
452 # restore additional windows
453 for data in sessionData["Windows"]:
454 window = (
455 WebBrowserWindow.mainWindow().newWindow(restoreSession=True)
456 )
457 window.tabWidget().loadFromSessionData(data) 446 window.tabWidget().loadFromSessionData(data)
458 if "WindowGeometry" in data: 447 if "WindowGeometry" in data:
459 geometry = QByteArray.fromBase64( 448 geometry = QByteArray.fromBase64(
460 data["WindowGeometry"].encode("ascii")) 449 data["WindowGeometry"].encode("ascii"))
461 window.restoreGeometry(geometry) 450 window.restoreGeometry(geometry)
462 QApplication.processEvents() 451 QApplication.processEvents()
463 QApplication.restoreOverrideCursor() 452
453 # restore additional windows
454 for data in sessionData["Windows"]:
455 window = (
456 WebBrowserWindow.mainWindow().newWindow(restoreSession=True)
457 )
458 window.tabWidget().loadFromSessionData(data)
459 if "WindowGeometry" in data:
460 geometry = QByteArray.fromBase64(
461 data["WindowGeometry"].encode("ascii"))
462 window.restoreGeometry(geometry)
463 QApplication.processEvents()
464 464
465 if "CurrentWindowIndex" in sessionData: 465 if "CurrentWindowIndex" in sessionData:
466 currentWindowIndex = sessionData["CurrentWindowIndex"] 466 currentWindowIndex = sessionData["CurrentWindowIndex"]
467 try: 467 try:
468 currentWindow = ( 468 currentWindow = (

eric ide

mercurial