Clean up support for paste edits (#234240)

- Allow setting an array of preferences for paste as keybindings
- Clarifies kinds used for core and extensions
- Exports text kind as API
This commit is contained in:
Matt Bierner
2024-11-19 22:14:10 -08:00
committed by GitHub
parent 8a4b2bb49b
commit c83b443da0
16 changed files with 261 additions and 105 deletions

View File

@@ -9,9 +9,9 @@ import { Mime } from '../util/mimes';
class UpdatePastedLinksEditProvider implements vscode.DocumentPasteEditProvider {
public static readonly kind = vscode.DocumentDropOrPasteEditKind.Empty.append('markdown', 'updateLinks');
public static readonly kind = vscode.DocumentDropOrPasteEditKind.Text.append('updateLinks', 'markdown');
public static readonly metadataMime = 'vnd.vscode.markdown.updateLinksMetadata';
public static readonly metadataMime = 'application/vnd.vscode.markdown.updatelinks.metadata';
constructor(
private readonly _client: MdLanguageClient,
@@ -67,7 +67,7 @@ class UpdatePastedLinksEditProvider implements vscode.DocumentPasteEditProvider
pasteEdit.additionalEdit = workspaceEdit;
if (!context.only || !UpdatePastedLinksEditProvider.kind.contains(context.only)) {
pasteEdit.yieldTo = [vscode.DocumentDropOrPasteEditKind.Empty.append('text')];
pasteEdit.yieldTo = [vscode.DocumentDropOrPasteEditKind.Text];
}
return [pasteEdit];