Skip to content
Merged
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

### Added

- Connection sharing: export/import connections as `.tablepro` files (#466)
- Import preview with duplicate detection, warning badges, and per-item resolution
- "Copy as Import Link" context menu action for sharing via `tablepro://` URLs
- `.tablepro` file type registration (double-click to import, drag-and-drop)

## [0.24.2] - 2026-03-26

### Fixed
Expand Down
16 changes: 16 additions & 0 deletions TablePro/AppDelegate+FileOpen.swift
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@ extension AppDelegate {
}
}

// Connection share files
let connectionShareFiles = urls.filter { $0.pathExtension.lowercased() == "tablepro" }
for url in connectionShareFiles {
handleConnectionShareFile(url)
}

let sqlFiles = urls.filter { $0.pathExtension.lowercased() == "sql" }
if !sqlFiles.isEmpty {
if DatabaseManager.shared.currentSession != nil {
Expand Down Expand Up @@ -200,6 +206,16 @@ extension AppDelegate {
}
}

// MARK: - Connection Share Import

private func handleConnectionShareFile(_ url: URL) {
openWelcomeWindow()
// Delay to ensure WelcomeWindowView's .onReceive is registered after window renders
DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) {
NotificationCenter.default.post(name: .connectionShareFileOpened, object: url)
}
}

// MARK: - Plugin Install

private func handlePluginInstall(_ url: URL) async {
Expand Down
Loading
Loading