From c94c824db64a88bd4909da2e84e44316dbf8e8fb Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Wed, 28 Sep 2016 00:32:07 +0300 Subject: [PATCH] Fixes #12451: Bring back toggle render whitespace command --- src/vs/code/electron-main/menus.ts | 2 ++ .../contrib/indentation/common/indentation.ts | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/src/vs/code/electron-main/menus.ts b/src/vs/code/electron-main/menus.ts index 8c1832647d1..feb955dbf6f 100644 --- a/src/vs/code/electron-main/menus.ts +++ b/src/vs/code/electron-main/menus.ts @@ -493,6 +493,7 @@ export class VSCodeMenu { const toggleStatusbar = this.createMenuItem(nls.localize({ key: 'miToggleStatusbar', comment: ['&& denotes a mnemonic'] }, "&&Toggle Status Bar"), 'workbench.action.toggleStatusbarVisibility'); const toggleWordWrap = this.createMenuItem(nls.localize({ key: 'miToggleWordWrap', comment: ['&& denotes a mnemonic'] }, "Toggle &&Word Wrap"), 'editor.action.toggleWordWrap'); + const toggleRenderWhitespace = this.createMenuItem(nls.localize({ key: 'miToggleRenderWhitespace', comment: ['&& denotes a mnemonic'] }, "Toggle &&Render Whitespace"), 'editor.action.toggleRenderWhitespace'); const toggleRenderControlCharacters = this.createMenuItem(nls.localize({ key: 'miToggleRenderControlCharacters', comment: ['&& denotes a mnemonic'] }, "Toggle &&Control Characters"), 'editor.action.toggleRenderControlCharacter'); @@ -524,6 +525,7 @@ export class VSCodeMenu { toggleStatusbar, __separator__(), toggleWordWrap, + toggleRenderWhitespace, toggleRenderControlCharacters, __separator__(), zoomIn, diff --git a/src/vs/editor/contrib/indentation/common/indentation.ts b/src/vs/editor/contrib/indentation/common/indentation.ts index 7ef82c78fc6..e62eb4b9071 100644 --- a/src/vs/editor/contrib/indentation/common/indentation.ts +++ b/src/vs/editor/contrib/indentation/common/indentation.ts @@ -161,6 +161,32 @@ export class DetectIndentation extends EditorAction { } } +@editorAction +export class ToggleRenderWhitespaceAction extends EditorAction { + + constructor() { + super({ + id: 'editor.action.toggleRenderWhitespace', + label: nls.localize('toggleRenderWhitespace', "Toggle Render Whitespace"), + alias: 'Toggle Render Whitespace', + precondition: null + }); + } + + public run(accessor:ServicesAccessor, editor:ICommonCodeEditor): void { + let renderWhitespace = editor.getConfiguration().viewInfo.renderWhitespace; + if (renderWhitespace === 'none') { + editor.updateOptions({ + renderWhitespace: 'all' + }); + } else { + editor.updateOptions({ + renderWhitespace: 'none' + }); + } + } +} + @editorAction export class ToggleRenderControlCharacterAction extends EditorAction {