diff --git a/src/vs/workbench/browser/media/style.css b/src/vs/workbench/browser/media/style.css index 2f3c95378c85de1526b326732ff4409c6c5d9d5b..84cd3fb94441e4a2774393bc5b752773163553b3 100644 --- a/src/vs/workbench/browser/media/style.css +++ b/src/vs/workbench/browser/media/style.css @@ -37,6 +37,7 @@ body { overflow: hidden; font-size: 11px; user-select: none; + -webkit-user-select: none; } body.web { diff --git a/src/vs/workbench/browser/style.ts b/src/vs/workbench/browser/style.ts index fb298026ba47c263ccff42af5f4d889120b2d8f0..23b39b5f4f37ec26705f07f42a9f393e05086c93 100644 --- a/src/vs/workbench/browser/style.ts +++ b/src/vs/workbench/browser/style.ts @@ -10,6 +10,7 @@ import { iconForeground, foreground, selectionBackground, focusBorder, scrollbar import { WORKBENCH_BACKGROUND, TITLE_BAR_ACTIVE_BACKGROUND } from 'vs/workbench/common/theme'; import { isWeb } from 'vs/base/common/platform'; import { createMetaElement } from 'vs/base/browser/dom'; +import { isSafari } from 'vs/base/browser/browser'; registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => { @@ -168,4 +169,16 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => { metaElement.content = titleBackground.toString(); } } + + // We disable user select on the root element, however on Safari this seems + // to prevent any text selection in the monaco editor. As a workaround we + // allow to select text in monaco editor instances. + if (isSafari) { + collector.addRule(` + .monaco-workbench .monaco-editor .view-lines { + user-select: text; + -webkit-user-select: text; + } + `); + } });