Add a Page tab that keeps the last shown page reachable

This commit is contained in:
Ian Gulliver
2026-10-21 18:57:46 -07:00
parent 24cd47de8b
commit b7c762757e
5 changed files with 17 additions and 8 deletions
+1 -5
View File
@@ -5,7 +5,6 @@ enum SheetView {
case tab(TaskTab)
case image(NSImage)
case diagram(BoxLayout)
case page(Page)
}
struct Sheet {
@@ -82,7 +81,7 @@ private struct SheetPanel: View {
.lineLimit(1)
.truncationMode(.tail)
Spacer(minLength: 0)
if case .page(let page) = sheet.view, let url = page.url(store) {
if sheet.tab == .page, let page = store.selectedTaskId.flatMap({ store.shownPages[$0] }), let url = page.url(store) {
Button {
NSWorkspace.shared.open(url)
} label: {
@@ -129,7 +128,6 @@ private struct SheetPanel: View {
case .tab(let t): tabLabels[t]!
case .image: "Image"
case .diagram: "Diagram"
case .page(let page): page.title(store)
}
if !overLeft {
return "Lead · \(label)"
@@ -159,8 +157,6 @@ private struct SheetPanel: View {
DiagramViewer(layout: layout)
.id(layout.id)
.padding(12)
case .page(let page):
PageView(page: page)
}
}
}