feat: swap translation languages with Return on empty input
This commit is contained in:
@@ -239,8 +239,11 @@ final class TranslationController: NSViewController {
|
||||
func inputChanged() {
|
||||
cancelRequest()
|
||||
output.string = ""
|
||||
translateButton.title = "Translate"
|
||||
translateButton.toolTip = "Translate the input (Return). Escape dismisses Conjure."
|
||||
let isEmpty = (input?() ?? "").trimmingCharacters(in: .whitespacesAndNewlines).isEmpty
|
||||
translateButton.title = isEmpty ? "Swap languages" : "Translate"
|
||||
translateButton.toolTip = isEmpty
|
||||
? "Swap source and target languages (Return)."
|
||||
: "Translate the input (Return). Escape dismisses Conjure."
|
||||
settingsButton.isHidden = true
|
||||
languageButton.title = "\(languageName(sourceLanguage)) → \(languageName(targetLanguage))"
|
||||
output.setAccessibilityLabel("\(languageName(targetLanguage)) translation")
|
||||
@@ -269,6 +272,10 @@ final class TranslationController: NSViewController {
|
||||
|
||||
@objc func performPrimaryAction() {
|
||||
guard task == nil else { return }
|
||||
if (input?() ?? "").trimmingCharacters(in: .whitespacesAndNewlines).isEmpty {
|
||||
swapLanguages()
|
||||
return
|
||||
}
|
||||
guard !output.string.isEmpty else { translate(); return }
|
||||
pasteboard.clearContents()
|
||||
if pasteboard.setString(output.string, forType: .string) {
|
||||
|
||||
Reference in New Issue
Block a user