ReadKeep/readeck/UI/readeckApp.swift
Ilyas Hallak 2d3be2430f wip
2025-06-25 21:44:55 +02:00

50 lines
1.4 KiB
Swift

//
// readeckApp.swift
// readeck
//
// Created by Ilyas Hallak on 10.06.25.
//
import SwiftUI
@main
struct readeckApp: App {
let persistenceController = CoreDataManager.shared
var body: some Scene {
WindowGroup {
MainTabView()
.environment(\.managedObjectContext, persistenceController.persistentContainer.viewContext)
.onOpenURL { url in
handleIncomingURL(url)
}
}
}
private func handleIncomingURL(_ url: URL) {
guard url.scheme == "readeck",
url.host == "add-bookmark" else {
return
}
let components = URLComponents(url: url, resolvingAgainstBaseURL: true)
let queryItems = components?.queryItems
let urlToAdd = queryItems?.first(where: { $0.name == "url" })?.value
let title = queryItems?.first(where: { $0.name == "title" })?.value
let notes = queryItems?.first(where: { $0.name == "notes" })?.value
// Öffne AddBookmarkView mit den Daten
// Hier kannst du eine Notification posten oder einen State ändern
NotificationCenter.default.post(
name: NSNotification.Name("AddBookmarkFromShare"),
object: nil,
userInfo: [
"url": urlToAdd ?? "",
"title": title ?? "",
"notes": notes ?? ""
]
)
}
}