diff --git a/src/vs/code/electron-main/menus.ts b/src/vs/code/electron-main/menus.ts index c2e9e9b5623981c8ad3a1f9e74f441070ba357b0..778608bce1e1f851581c0961a57121de89604c15 100644 --- a/src/vs/code/electron-main/menus.ts +++ b/src/vs/code/electron-main/menus.ts @@ -697,6 +697,7 @@ export class CodeMenu { const toggleActivtyBar = this.createMenuItem(activityBarLabel, 'workbench.action.toggleActivityBarVisibility'); const toggleWordWrap = this.createMenuItem(nls.localize({ key: 'miToggleWordWrap', comment: ['&& denotes a mnemonic'] }, "Toggle &&Word Wrap"), 'editor.action.toggleWordWrap'); + const toggleMinimap = this.createMenuItem(nls.localize({ key: 'miToggleMinimap', comment: ['&& denotes a mnemonic'] }, "Toggle &&Minimap"), 'editor.action.toggleMinimap'); 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'); @@ -732,6 +733,7 @@ export class CodeMenu { toggleActivtyBar, __separator__(), toggleWordWrap, + toggleMinimap, toggleRenderWhitespace, toggleRenderControlCharacters, __separator__(), diff --git a/src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts b/src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts index ce3998d91879c10d69eafc742372ace2003314f4..c8a7d860be517d1433c7c3556790ec1c1ef39b0d 100644 --- a/src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts +++ b/src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts @@ -8,6 +8,7 @@ import './electron-browser/inspectKeybindings'; import './electron-browser/menuPreventer'; import './electron-browser/selectionClipboard'; import './electron-browser/textMate/inspectTMScopes'; +import './electron-browser/toggleMinimap'; import './electron-browser/toggleMultiCursorModifier'; import './electron-browser/toggleRenderControlCharacter'; import './electron-browser/toggleRenderWhitespace'; diff --git a/src/vs/workbench/parts/codeEditor/electron-browser/toggleMinimap.ts b/src/vs/workbench/parts/codeEditor/electron-browser/toggleMinimap.ts new file mode 100644 index 0000000000000000000000000000000000000000..5d5949860d1d2a609ceca09cf11ee6db7150b5c1 --- /dev/null +++ b/src/vs/workbench/parts/codeEditor/electron-browser/toggleMinimap.ts @@ -0,0 +1,31 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ +'use strict'; + +import * as nls from 'vs/nls'; +import { ICommonCodeEditor } from 'vs/editor/common/editorCommon'; +import { editorAction, ServicesAccessor, EditorAction } from 'vs/editor/common/editorCommonExtensions'; +import { IConfigurationEditingService, ConfigurationTarget } from 'vs/workbench/services/configuration/common/configurationEditing'; + +@editorAction +export class ToggleMinimapAction extends EditorAction { + + constructor() { + super({ + id: 'editor.action.toggleMinimap', + label: nls.localize('toggleMinimap', "Toggle Minimap"), + alias: 'Toggle Minimap', + precondition: null + }); + } + + public run(accessor: ServicesAccessor, editor: ICommonCodeEditor): void { + const configurationEditingService = accessor.get(IConfigurationEditingService); + + const newValue = !editor.getConfiguration().viewInfo.minimap.enabled; + + configurationEditingService.writeConfiguration(ConfigurationTarget.USER, { key: 'editor.minimap.enabled', value: newValue }); + } +}