From 3927d042875f80d00f69379cdb9f8f6b744e647b Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Fri, 25 Aug 2017 17:19:06 +0200 Subject: [PATCH] Fixes #22423: Add Toggle MiniMap to View Menu --- src/vs/code/electron-main/menus.ts | 2 ++ .../codeEditor/codeEditor.contribution.ts | 1 + .../electron-browser/toggleMinimap.ts | 31 +++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 src/vs/workbench/parts/codeEditor/electron-browser/toggleMinimap.ts diff --git a/src/vs/code/electron-main/menus.ts b/src/vs/code/electron-main/menus.ts index c2e9e9b5623..778608bce1e 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 ce3998d9187..c8a7d860be5 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 00000000000..5d5949860d1 --- /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 }); + } +} -- GitLab