- {toolIcon("edit")}
+ {toolIcon(tool.tool === "appliedDiff" ? "diff" : "edit")}
Cline wants to edit this file:
{
setAlwaysAllowBrowser,
soundEnabled,
setSoundEnabled,
+ diffEnabled,
+ setDiffEnabled,
openRouterModels,
setAllowedCommands,
allowedCommands,
@@ -50,6 +52,7 @@ const SettingsView = ({ onDone }: SettingsViewProps) => {
vscode.postMessage({ type: "alwaysAllowBrowser", bool: alwaysAllowBrowser })
vscode.postMessage({ type: "allowedCommands", commands: allowedCommands ?? [] })
vscode.postMessage({ type: "soundEnabled", bool: soundEnabled })
+ vscode.postMessage({ type: "diffEnabled", bool: diffEnabled })
onDone()
}
}
@@ -288,6 +291,20 @@ const SettingsView = ({ onDone }: SettingsViewProps) => {
)}
+
+
setDiffEnabled(e.target.checked)}>
+ Enable editing through diffs
+
+
+ When enabled, Cline will be able to apply diffs to make changes to files.
+
+
+
setSoundEnabled(e.target.checked)}>
Enable sound effects
diff --git a/webview-ui/src/context/ExtensionStateContext.tsx b/webview-ui/src/context/ExtensionStateContext.tsx
index 0a35d7a..7843963 100644
--- a/webview-ui/src/context/ExtensionStateContext.tsx
+++ b/webview-ui/src/context/ExtensionStateContext.tsx
@@ -26,6 +26,7 @@ export interface ExtensionStateContextType extends ExtensionState {
setShowAnnouncement: (value: boolean) => void
setAllowedCommands: (value: string[]) => void
setSoundEnabled: (value: boolean) => void
+ setDiffEnabled: (value: boolean) => void
}
const ExtensionStateContext = createContext(undefined)
@@ -38,6 +39,7 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
shouldShowAnnouncement: false,
allowedCommands: [],
soundEnabled: false,
+ diffEnabled: false,
})
const [didHydrateState, setDidHydrateState] = useState(false)
const [showWelcome, setShowWelcome] = useState(false)
@@ -127,6 +129,7 @@ export const ExtensionStateContextProvider: React.FC<{ children: React.ReactNode
setShowAnnouncement: (value) => setState((prevState) => ({ ...prevState, shouldShowAnnouncement: value })),
setAllowedCommands: (value) => setState((prevState) => ({ ...prevState, allowedCommands: value })),
setSoundEnabled: (value) => setState((prevState) => ({ ...prevState, soundEnabled: value })),
+ setDiffEnabled: (value) => setState((prevState) => ({ ...prevState, diffEnabled: value })),
}
return {children}