diff --git a/Shared/ExtensionPoints/SendToMarsEditCommand.swift b/Shared/ExtensionPoints/SendToMarsEditCommand.swift index 500df72fe..484398a87 100644 --- a/Shared/ExtensionPoints/SendToMarsEditCommand.swift +++ b/Shared/ExtensionPoints/SendToMarsEditCommand.swift @@ -29,11 +29,17 @@ final class SendToMarsEditCommand: SendToCommand { guard let article = (object as? ArticlePasteboardWriter)?.article else { return } - guard let app = appToUse(), app.launchIfNeeded(), app.bringToFront() else { + guard let app = appToUse() else { return } - send(article, to: app) + Task { + guard await app.launchIfNeeded(), app.bringToFront() else { + return + } + + send(article, to: app) + } } } diff --git a/Shared/ExtensionPoints/SendToMicroBlogCommand.swift b/Shared/ExtensionPoints/SendToMicroBlogCommand.swift index bd5d000d2..4d6fe3bd7 100644 --- a/Shared/ExtensionPoints/SendToMicroBlogCommand.swift +++ b/Shared/ExtensionPoints/SendToMicroBlogCommand.swift @@ -37,24 +37,27 @@ final class SendToMicroBlogCommand: SendToCommand { guard let article = (object as? ArticlePasteboardWriter)?.article else { return } - guard microBlogApp.launchIfNeeded(), microBlogApp.bringToFront() else { - return + + Task { + guard await microBlogApp.launchIfNeeded(), microBlogApp.bringToFront() else { + return + } + + // TODO: get text from contentHTML or contentText if no title and no selectedText. + // TODO: consider selectedText. + + let s = article.attributionString + article.linkString + + let urlQueryDictionary = ["text": s] + guard let urlQueryString = urlQueryDictionary.urlQueryString else { + return + } + guard let url = URL(string: "microblog://post?" + urlQueryString) else { + return + } + + NSWorkspace.shared.open(url) } - - // TODO: get text from contentHTML or contentText if no title and no selectedText. - // TODO: consider selectedText. - - let s = article.attributionString + article.linkString - - let urlQueryDictionary = ["text": s] - guard let urlQueryString = urlQueryDictionary.urlQueryString else { - return - } - guard let url = URL(string: "microblog://post?" + urlQueryString) else { - return - } - - NSWorkspace.shared.open(url) } }