Fixes#194809
Since the notebook does not exist on disk yet, there's no way to write a relative path in it. Just disable the feature since there's nothing else we can reasonably do here
Move await from `priority` for drop/paste API proposals
For #179430, #30066
Switching to use `yieldTo` instead of `priority` to let an extension de-rank itself in the list of edits. `priority` was an arbitrary number while `yieldTo` gives more control over how the ranking takes place
* making markdown link pasting feature smarter
* Update settings description
Co-authored-by: Joyce Er <joyceerhl@gmail.com>
* made checkPaste more concise
* won't paste md link in fenced code or math
* updated the smart md link pasting
* link validation and naming changes
* resolving comments and tests
* resolving comments & writing tests
---------
Co-authored-by: Joyce Er <joyceerhl@gmail.com>
* making markdown link pasting feature smarter
* Update settings description
Co-authored-by: Joyce Er <joyceerhl@gmail.com>
* made checkPaste more concise
* won't paste md link in fenced code or math
---------
Co-authored-by: Joyce Er <joyceerhl@gmail.com>
* turning highlighted Mardown text to link to pasted URL
* resolved comments
* resolved more comments
* preserved behavior of existing file pasting logic
---------
Co-authored-by: Meghan Kulkarni <t-mekulkarni@microsoft.com>
Allow copying files in the workspace on markdown drop / paste
Fixes#157043
Also:
- Renames the markdown paste settings and makes them no longer experimental
- Makes the copyFiles setting no longer experimental
- Adds a `markdown.copyFiles.overwriteBehavior` which lets you control if/how existing files are overwritten
* Add widget to change how content is pasted
For #30066
This adds a widget that lets you change how content is pasted if there are multiple ways it could be pasted
To do this, I've made the post drop widget generic and reused it for pasting too
* Update types
* More code deduplication
* Allow passing in a `DataTransferItem` to workspace edit
Fixes#175800
Allows you to pass a file `DataTransferItem` to `WorkspaceEdit.createFile`. This lets us avoid transferring the data back and forth to the extension host, and also avoid having to base64 encode and decode it, significantly improving performance for large files
* Take data transfer file instead of data transfer item
For #179430
Adds two new UX components:
- An inline progress icon shown when a drop operation takes over 500ms. This replaces the notification. You can click on it to cancel the drop
- Post drop, a drop feedback icon that lets you drop the file in a different way. This lets you drop the file as plain text for instance instead of as a markdown link
* Revert "Revert "Add experimental setting to define where files should be copied for markdown (#169454)" (#169615)"
This reverts commit b2121c2dbe.
* Fix tests
These paths should always use `/`