diff --git a/Sources/Panels/BrowserPanelView.swift b/Sources/Panels/BrowserPanelView.swift index 8192fba8..7108d183 100644 --- a/Sources/Panels/BrowserPanelView.swift +++ b/Sources/Panels/BrowserPanelView.swift @@ -1470,9 +1470,11 @@ struct BrowserPanelView: View { private func presentImportDialogFromHint() { isBrowserImportHintPopoverPresented = false - BrowserDataImportCoordinator.shared.presentImportDialog( - defaultDestinationProfileID: panel.profileID - ) + DispatchQueue.main.async { + BrowserDataImportCoordinator.shared.presentImportDialog( + defaultDestinationProfileID: panel.profileID + ) + } } private func openBrowserImportSettings() { diff --git a/Sources/cmuxApp.swift b/Sources/cmuxApp.swift index 15ceaa47..5c5dd445 100644 --- a/Sources/cmuxApp.swift +++ b/Sources/cmuxApp.swift @@ -2037,7 +2037,9 @@ private struct BrowserImportHintDebugView: View { AppDelegate.presentPreferencesWindow(navigationTarget: .browser) } Button("Open Import Dialog") { - BrowserDataImportCoordinator.shared.presentImportDialog() + DispatchQueue.main.async { + BrowserDataImportCoordinator.shared.presentImportDialog() + } } } @@ -4650,8 +4652,10 @@ struct SettingsView: View { HStack(spacing: 8) { Button(String(localized: "settings.browser.import.choose", defaultValue: "Choose…")) { - BrowserDataImportCoordinator.shared.presentImportDialog() - refreshDetectedImportBrowsers() + DispatchQueue.main.async { + BrowserDataImportCoordinator.shared.presentImportDialog() + refreshDetectedImportBrowsers() + } } .buttonStyle(.bordered) .controlSize(.small)