diff --git a/bitchat/Services/TransportConfig.swift b/bitchat/Services/TransportConfig.swift index 8de7a70f..0d0ea6c5 100644 --- a/bitchat/Services/TransportConfig.swift +++ b/bitchat/Services/TransportConfig.swift @@ -188,7 +188,7 @@ enum TransportConfig { static let uiWindowStepCount: Int = 200 // Share extension - static let uiShareExtensionDismissDelaySeconds: TimeInterval = 0.3 + static let uiShareExtensionDismissDelaySeconds: TimeInterval = 2.0 static let uiShareAcceptWindowSeconds: TimeInterval = 30.0 static let uiMigrationCutoffSeconds: TimeInterval = 24 * 60 * 60 } diff --git a/bitchatShareExtension/ShareViewController.swift b/bitchatShareExtension/ShareViewController.swift index 58300eec..3dffdadc 100644 --- a/bitchatShareExtension/ShareViewController.swift +++ b/bitchatShareExtension/ShareViewController.swift @@ -35,8 +35,9 @@ final class ShareViewController: UIViewController { statusLabel.leadingAnchor.constraint(greaterThanOrEqualTo: view.layoutMarginsGuide.leadingAnchor), statusLabel.trailingAnchor.constraint(lessThanOrEqualTo: view.layoutMarginsGuide.trailingAnchor) ]) - - processShare() + DispatchQueue.global().async { + self.processShare() + } } // MARK: - Processing @@ -163,7 +164,7 @@ final class ShareViewController: UIViewController { statusLabel.text = msg // Complete shortly after showing status DispatchQueue.main.asyncAfter(deadline: .now() + TransportConfig.uiShareExtensionDismissDelaySeconds) { - self.extensionContext?.completeRequest(returningItems: nil, completionHandler: nil) + self.extensionContext?.completeRequest(returningItems: [], completionHandler: nil) } } }