mirror of
https://github.com/cline/cline.git
synced 2025-06-03 03:59:07 +00:00
Make diff view left side readonly so users don't accidentally edit it
This commit is contained in:
parent
0f341131fa
commit
3926d1c528
@ -2,7 +2,7 @@
|
||||
"name": "claude-dev",
|
||||
"displayName": "Claude Dev",
|
||||
"description": "Autonomous coding agent right in your IDE, capable of creating/editing files, executing commands, and more with your permission every step of the way.",
|
||||
"version": "1.5.6",
|
||||
"version": "1.5.7",
|
||||
"icon": "icon.png",
|
||||
"engines": {
|
||||
"vscode": "^1.84.0"
|
||||
|
@ -815,11 +815,9 @@ export class ClaudeDev {
|
||||
|
||||
vscode.commands.executeCommand(
|
||||
"vscode.diff",
|
||||
fileExists
|
||||
? vscode.Uri.file(absolutePath)
|
||||
: vscode.Uri.parse(`claude-dev-diff:${path.basename(absolutePath)}`).with({
|
||||
query: Buffer.from("").toString("base64"),
|
||||
}),
|
||||
vscode.Uri.parse(`claude-dev-diff:${path.basename(absolutePath)}`).with({
|
||||
query: Buffer.from(originalContent).toString("base64"),
|
||||
}),
|
||||
vscode.Uri.file(tempFilePath),
|
||||
`${path.basename(absolutePath)}: ${fileExists ? "Original ↔ Claude's Changes" : "New File"} (Editable)`
|
||||
)
|
||||
|
@ -94,7 +94,7 @@ export function activate(context: vscode.ExtensionContext) {
|
||||
)
|
||||
|
||||
/*
|
||||
We use the text document content provider API to show an empty text doc for diff view for new files by creating a virtual document for the new content.
|
||||
We use the text document content provider API to show the left side for diff view by creating a virtual document for the original content. This makes it readonly so users know to edit the right side if they want to keep their changes.
|
||||
|
||||
- This API allows you to create readonly documents in VSCode from arbitrary sources, and works by claiming an uri-scheme for which your provider then returns text contents. The scheme must be provided when registering a provider and cannot change afterwards.
|
||||
- Note how the provider doesn't create uris for virtual documents - its role is to provide contents given such an uri. In return, content providers are wired into the open document logic so that providers are always considered.
|
||||
|
Loading…
Reference in New Issue
Block a user