From cbab473f37e65d2fabbc4b07d45baec5bb271e47 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Wed, 15 Nov 2023 14:06:12 -0800 Subject: [PATCH] Disable dragging of links in rendered markdown (#198362) These links don't work properly. Better to disable them for now instead of allowing invalid drags --- src/vs/base/browser/markdownRenderer.ts | 6 ++++-- src/vs/base/test/browser/markdownRenderer.test.ts | 6 +++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/vs/base/browser/markdownRenderer.ts b/src/vs/base/browser/markdownRenderer.ts index 3ae619a9f14..a8ced34246d 100644 --- a/src/vs/base/browser/markdownRenderer.ts +++ b/src/vs/base/browser/markdownRenderer.ts @@ -12,7 +12,7 @@ import { StandardMouseEvent } from 'vs/base/browser/mouseEvent'; import { renderLabelWithIcons } from 'vs/base/browser/ui/iconLabel/iconLabels'; import { onUnexpectedError } from 'vs/base/common/errors'; import { Event } from 'vs/base/common/event'; -import { IMarkdownString, escapeDoubleQuotes, parseHrefAndDimensions, removeMarkdownEscapes, MarkdownStringTrustedOptions } from 'vs/base/common/htmlContent'; +import { escapeDoubleQuotes, IMarkdownString, MarkdownStringTrustedOptions, parseHrefAndDimensions, removeMarkdownEscapes } from 'vs/base/common/htmlContent'; import { markdownEscapeEscapedIcons } from 'vs/base/common/iconLabels'; import { defaultGenerator } from 'vs/base/common/idGenerator'; import { KeyCode } from 'vs/base/common/keyCodes'; @@ -80,7 +80,8 @@ const defaultMarkedRenderers = Object.freeze({ .replace(/>/g, '>') .replace(/"/g, '"') .replace(/'/g, '''); - return `${text}`; + + return `${text}`; }, }); @@ -408,6 +409,7 @@ export const allowedMarkdownAttr = [ 'controls', 'data-code', 'data-href', + 'draggable', 'height', 'href', 'loop', diff --git a/src/vs/base/test/browser/markdownRenderer.test.ts b/src/vs/base/test/browser/markdownRenderer.test.ts index 1da026b5174..a394e18e001 100644 --- a/src/vs/base/test/browser/markdownRenderer.test.ts +++ b/src/vs/base/test/browser/markdownRenderer.test.ts @@ -166,7 +166,7 @@ suite('MarkdownRenderer', () => { mds.appendMarkdown(`[$(zap)-link](#link)`); const result: HTMLElement = store.add(renderMarkdown(mds)).element; - assert.strictEqual(result.innerHTML, `

-link

`); + assert.strictEqual(result.innerHTML, `

-link

`); }); test('render icon in table', () => { @@ -186,7 +186,7 @@ suite('MarkdownRenderer', () => { --link +-link `); @@ -253,7 +253,7 @@ suite('MarkdownRenderer', () => { }); const result: HTMLElement = store.add(renderMarkdown(md)).element; - assert.strictEqual(result.innerHTML, `

command1 command2

`); + assert.strictEqual(result.innerHTML, `

command1 command2

`); }); suite('PlaintextMarkdownRender', () => {