diff --git a/apps/array/src/renderer/features/settings/components/SettingsView.tsx b/apps/array/src/renderer/features/settings/components/SettingsView.tsx index 7872eb07..abe289e5 100644 --- a/apps/array/src/renderer/features/settings/components/SettingsView.tsx +++ b/apps/array/src/renderer/features/settings/components/SettingsView.tsx @@ -59,11 +59,13 @@ export function SettingsView() { createPR, cursorGlow, desktopNotifications, + autoConvertLongText, sendMessagesWith, setAutoRunTasks, setCreatePR, setCursorGlow, setDesktopNotifications, + setAutoConvertLongText, setSendMessagesWith, } = useSettingsStore(); const terminalLayoutMode = useTerminalLayoutStore( @@ -165,6 +167,18 @@ export function SettingsView() { [terminalLayoutMode, setTerminalLayout], ); + const handleAutoConvertLongTextChange = useCallback( + (checked: boolean) => { + track(ANALYTICS_EVENTS.SETTING_CHANGED, { + setting_name: "auto_convert_long_text", + new_value: checked, + old_value: autoConvertLongText, + }); + setAutoConvertLongText(checked); + }, + [autoConvertLongText, setAutoConvertLongText], + ); + const handleSendMessagesWithChange = useCallback( (value: SendMessagesWith) => { track(ANALYTICS_EVENTS.SETTING_CHANGED, { @@ -376,6 +390,23 @@ export function SettingsView() { /> + + + + Auto-convert long text + + + Automatically convert pasted text over 500 characters into + an attachment + + + + + diff --git a/apps/array/src/renderer/features/settings/stores/settingsStore.ts b/apps/array/src/renderer/features/settings/stores/settingsStore.ts index 59f05807..bbfa2553 100644 --- a/apps/array/src/renderer/features/settings/stores/settingsStore.ts +++ b/apps/array/src/renderer/features/settings/stores/settingsStore.ts @@ -17,6 +17,7 @@ interface SettingsStore { defaultModel: string; desktopNotifications: boolean; cursorGlow: boolean; + autoConvertLongText: boolean; sendMessagesWith: SendMessagesWith; setAutoRunTasks: (autoRun: boolean) => void; @@ -28,6 +29,7 @@ interface SettingsStore { setDefaultModel: (model: string) => void; setDesktopNotifications: (enabled: boolean) => void; setCursorGlow: (enabled: boolean) => void; + setAutoConvertLongText: (enabled: boolean) => void; setSendMessagesWith: (mode: SendMessagesWith) => void; } @@ -43,6 +45,7 @@ export const useSettingsStore = create()( defaultModel: DEFAULT_MODEL, desktopNotifications: true, cursorGlow: false, + autoConvertLongText: true, sendMessagesWith: "enter", setAutoRunTasks: (autoRun) => set({ autoRunTasks: autoRun }), @@ -56,6 +59,8 @@ export const useSettingsStore = create()( setDesktopNotifications: (enabled) => set({ desktopNotifications: enabled }), setCursorGlow: (enabled) => set({ cursorGlow: enabled }), + setAutoConvertLongText: (enabled) => + set({ autoConvertLongText: enabled }), setSendMessagesWith: (mode) => set({ sendMessagesWith: mode }), }), {