diff --git a/src/renderer/src/components/TranslateButton.tsx b/src/renderer/src/components/TranslateButton.tsx index fd8d97c0b0..8ebdef2767 100644 --- a/src/renderer/src/components/TranslateButton.tsx +++ b/src/renderer/src/components/TranslateButton.tsx @@ -22,9 +22,12 @@ const TranslateButton: FC = ({ text, onTranslated, disabled, style, isLoa const { t } = useTranslation() const { translateModel } = useDefaultModel() const [isTranslating, setIsTranslating] = useState(false) - const { targetLanguage } = useSettings() + const { targetLanguage, showTranslateConfirm } = useSettings() const translateConfirm = () => { + if (!showTranslateConfirm) { + return Promise.resolve(true) + } return window?.modal?.confirm({ title: t('translate.confirm.title'), content: t('translate.confirm.content'), diff --git a/src/renderer/src/i18n/locales/en-us.json b/src/renderer/src/i18n/locales/en-us.json index 0c8fc0d0c4..5210369ba4 100644 --- a/src/renderer/src/i18n/locales/en-us.json +++ b/src/renderer/src/i18n/locales/en-us.json @@ -1051,6 +1051,7 @@ "general.user_name.placeholder": "Enter your name", "general.view_webdav_settings": "View WebDAV settings", "input.auto_translate_with_space": "Quickly translate with 3 spaces", + "input.show_translate_confirm": "Show translation confirmation dialog", "input.target_language": "Target language", "input.target_language.chinese": "Simplified Chinese", "input.target_language.chinese-traditional": "Traditional Chinese", diff --git a/src/renderer/src/i18n/locales/zh-cn.json b/src/renderer/src/i18n/locales/zh-cn.json index 2a0434b398..d30dbf9f69 100644 --- a/src/renderer/src/i18n/locales/zh-cn.json +++ b/src/renderer/src/i18n/locales/zh-cn.json @@ -1051,6 +1051,7 @@ "general.user_name.placeholder": "请输入用户名", "general.view_webdav_settings": "查看 WebDAV 设置", "input.auto_translate_with_space": "快速敲击3次空格翻译", + "input.show_translate_confirm": "显示翻译确认对话框", "input.target_language": "目标语言", "input.target_language.chinese": "简体中文", "input.target_language.chinese-traditional": "繁体中文", diff --git a/src/renderer/src/i18n/locales/zh-tw.json b/src/renderer/src/i18n/locales/zh-tw.json index badf417485..c95768eff4 100644 --- a/src/renderer/src/i18n/locales/zh-tw.json +++ b/src/renderer/src/i18n/locales/zh-tw.json @@ -1050,6 +1050,7 @@ "general.user_name.placeholder": "輸入您的名稱", "general.view_webdav_settings": "檢視 WebDAV 設定", "input.auto_translate_with_space": "快速敲擊 3 次空格翻譯", + "input.show_translate_confirm": "顯示翻譯確認對話框", "input.target_language": "目標語言", "input.target_language.chinese": "簡體中文", "input.target_language.chinese-traditional": "繁體中文", diff --git a/src/renderer/src/pages/home/Tabs/SettingsTab.tsx b/src/renderer/src/pages/home/Tabs/SettingsTab.tsx index ed0d06592b..da702e7555 100644 --- a/src/renderer/src/pages/home/Tabs/SettingsTab.tsx +++ b/src/renderer/src/pages/home/Tabs/SettingsTab.tsx @@ -40,7 +40,8 @@ import { setRenderInputMessageAsMarkdown, setShowInputEstimatedTokens, setShowMessageDivider, - setThoughtAutoCollapse + setThoughtAutoCollapse, + setShowTranslateConfirm } from '@renderer/store/settings' import { Assistant, @@ -100,7 +101,8 @@ const SettingsTab: FC = (props) => { thoughtAutoCollapse, messageNavigation, enableQuickPanelTriggers, - enableBackspaceDeleteModel + enableBackspaceDeleteModel, + showTranslateConfirm } = useSettings() const onUpdateAssistantSettings = (settings: Partial) => { @@ -609,6 +611,15 @@ const SettingsTab: FC = (props) => { )} + + {t('settings.input.show_translate_confirm')} + dispatch(setShowTranslateConfirm(checked))} + /> + + {t('settings.messages.input.enable_quick_triggers')} ) => { state.autoTranslateWithSpace = action.payload }, + setShowTranslateConfirm: (state, action: PayloadAction) => { + state.showTranslateConfirm = action.payload + }, setEnableTopicNaming: (state, action: PayloadAction) => { state.enableTopicNaming = action.payload }, @@ -554,6 +559,7 @@ export const { setCodeStyle, setTranslateModelPrompt, setAutoTranslateWithSpace, + setShowTranslateConfirm, setEnableTopicNaming, setPasteLongTextThreshold, setCustomCss,