mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-13 03:28:33 -05:00
* Initial 1.19 xcopy * Fix yarn build * Fix numerous build breaks * Next batch of build break fixes * More build break fixes * Runtime breaks * Additional post merge fixes * Fix windows setup file * Fix test failures. * Update license header blocks to refer to source eula
40 lines
1.5 KiB
TypeScript
40 lines
1.5 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
'use strict';
|
|
|
|
import * as nls from 'vs/nls';
|
|
import { registerEditorAction, EditorAction, ServicesAccessor } from 'vs/editor/browser/editorExtensions';
|
|
import { IStandaloneThemeService } from 'vs/editor/standalone/common/standaloneThemeService';
|
|
import { ICodeEditor } from 'vs/editor/browser/editorBrowser';
|
|
|
|
class ToggleHighContrast extends EditorAction {
|
|
|
|
private _originalThemeName: string;
|
|
|
|
constructor() {
|
|
super({
|
|
id: 'editor.action.toggleHighContrast',
|
|
label: nls.localize('toggleHighContrast', "Toggle High Contrast Theme"),
|
|
alias: 'Toggle High Contrast Theme',
|
|
precondition: null
|
|
});
|
|
this._originalThemeName = null;
|
|
}
|
|
|
|
public run(accessor: ServicesAccessor, editor: ICodeEditor): void {
|
|
const standaloneThemeService = accessor.get(IStandaloneThemeService);
|
|
if (this._originalThemeName) {
|
|
// We must toggle back to the integrator's theme
|
|
standaloneThemeService.setTheme(this._originalThemeName);
|
|
this._originalThemeName = null;
|
|
} else {
|
|
this._originalThemeName = standaloneThemeService.getTheme().themeName;
|
|
standaloneThemeService.setTheme('hc-black');
|
|
}
|
|
}
|
|
}
|
|
|
|
registerEditorAction(ToggleHighContrast);
|