Fix session restore routing and browser history persistence
This commit is contained in:
parent
1c3f8458ee
commit
06cd25ed52
7 changed files with 878 additions and 17 deletions
|
|
@ -295,11 +295,14 @@ extension Workspace {
|
|||
case .browser:
|
||||
guard let browserPanel = panel as? BrowserPanel else { return nil }
|
||||
terminalSnapshot = nil
|
||||
let historySnapshot = browserPanel.sessionNavigationHistorySnapshot()
|
||||
browserSnapshot = SessionBrowserPanelSnapshot(
|
||||
urlString: browserPanel.currentURL?.absoluteString,
|
||||
urlString: browserPanel.preferredURLStringForOmnibar(),
|
||||
shouldRenderWebView: browserPanel.shouldRenderWebView,
|
||||
pageZoom: Double(browserPanel.webView.pageZoom),
|
||||
developerToolsVisible: browserPanel.isDeveloperToolsVisible()
|
||||
developerToolsVisible: browserPanel.isDeveloperToolsVisible(),
|
||||
backHistoryURLStrings: historySnapshot.backHistoryURLStrings,
|
||||
forwardHistoryURLStrings: historySnapshot.forwardHistoryURLStrings
|
||||
)
|
||||
}
|
||||
|
||||
|
|
@ -512,6 +515,12 @@ extension Workspace {
|
|||
|
||||
if let browserSnapshot = snapshot.browser,
|
||||
let browserPanel = browserPanel(for: panelId) {
|
||||
browserPanel.restoreSessionNavigationHistory(
|
||||
backHistoryURLStrings: browserSnapshot.backHistoryURLStrings ?? [],
|
||||
forwardHistoryURLStrings: browserSnapshot.forwardHistoryURLStrings ?? [],
|
||||
currentURLString: browserSnapshot.urlString
|
||||
)
|
||||
|
||||
let pageZoom = CGFloat(max(0.25, min(5.0, browserSnapshot.pageZoom)))
|
||||
if pageZoom.isFinite {
|
||||
browserPanel.webView.pageZoom = pageZoom
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue