提交 fc251d65 编写于 作者: B Benjamin Pasero

tpromise => promise (for #53526)

上级 9d89efe8
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import 'vs/css!./dropdown';
import { TPromise } from 'vs/base/common/winjs.base';
import { Gesture, EventType as GestureEventType } from 'vs/base/browser/touch';
import { ActionRunner, IAction, IActionRunner } from 'vs/base/common/actions';
import { BaseActionItem, IActionItemProvider } from 'vs/base/browser/ui/actionbar/actionbar';
......@@ -244,7 +243,7 @@ export class DropdownMenu extends BaseDropdown {
this._contextMenuProvider.showContextMenu({
getAnchor: () => this.element,
getActions: () => TPromise.as(this.actions),
getActions: () => Promise.resolve(this.actions),
getActionsContext: () => this.menuOptions ? this.menuOptions.context : null,
getActionItem: action => this.menuOptions && this.menuOptions.actionItemProvider ? this.menuOptions.actionItemProvider(action) : null,
getKeyBinding: action => this.menuOptions && this.menuOptions.getKeyBinding ? this.menuOptions.getKeyBinding(action) : null,
......
......@@ -5,7 +5,6 @@
import 'vs/css!./toolbar';
import * as nls from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import { Action, IActionRunner, IAction } from 'vs/base/common/actions';
import { ActionBar, ActionsOrientation, IActionItemProvider } from 'vs/base/browser/ui/actionbar/actionbar';
import { IContextMenuProvider, DropdownMenuActionItem } from 'vs/base/browser/ui/dropdown/dropdown';
......@@ -176,10 +175,10 @@ class ToggleMenuAction extends Action {
this.toggleDropdownMenu = toggleDropdownMenu;
}
run(): TPromise<any> {
run(): Promise<any> {
this.toggleDropdownMenu();
return TPromise.as(true);
return Promise.resolve(true);
}
get menuActions() {
......
......@@ -5,7 +5,6 @@
import * as stream from 'vs/base/node/stream';
import * as iconv from 'iconv-lite';
import { TPromise } from 'vs/base/common/winjs.base';
import { isLinux, isMacintosh } from 'vs/base/common/platform';
import { exec } from 'child_process';
import { Readable, Writable, WritableOptions } from 'stream';
......@@ -21,8 +20,7 @@ export interface IDecodeStreamOptions {
overwriteEncoding?(detectedEncoding: string): string;
}
export function toDecodeStream(readable: Readable, options: IDecodeStreamOptions): TPromise<{ detected: IDetectedEncodingResult, stream: NodeJS.ReadableStream }> {
export function toDecodeStream(readable: Readable, options: IDecodeStreamOptions): Promise<{ detected: IDetectedEncodingResult, stream: NodeJS.ReadableStream }> {
if (!options.minBytesRequiredForDetection) {
options.minBytesRequiredForDetection = options.guessEncoding ? AUTO_GUESS_BUFFER_MAX_LEN : NO_GUESS_BUFFER_MAX_LEN;
}
......@@ -31,7 +29,7 @@ export function toDecodeStream(readable: Readable, options: IDecodeStreamOptions
options.overwriteEncoding = detected => detected || UTF8;
}
return new TPromise<{ detected: IDetectedEncodingResult, stream: NodeJS.ReadableStream }>((resolve, reject) => {
return new Promise<{ detected: IDetectedEncodingResult, stream: NodeJS.ReadableStream }>((resolve, reject) => {
readable.pipe(new class extends Writable {
private _decodeStream: NodeJS.ReadWriteStream;
......@@ -74,7 +72,7 @@ export function toDecodeStream(readable: Readable, options: IDecodeStreamOptions
_startDecodeStream(callback: Function): void {
this._decodeStreamConstruction = TPromise.as(detectEncodingFromBuffer({
this._decodeStreamConstruction = Promise.resolve(detectEncodingFromBuffer({
buffer: Buffer.concat(this._buffer), bytesRead: this._bytesBuffered
}, options.guessEncoding)).then(detected => {
detected.encoding = options.overwriteEncoding(detected.encoding);
......@@ -180,7 +178,7 @@ export function detectEncodingByBOMFromBuffer(buffer: Buffer, bytesRead: number)
* Detects the Byte Order Mark in a given file.
* If no BOM is detected, null will be passed to callback.
*/
export function detectEncodingByBOM(file: string): TPromise<string> {
export function detectEncodingByBOM(file: string): Promise<string> {
return stream.readExactlyByFile(file, 3).then(({ buffer, bytesRead }) => detectEncodingByBOMFromBuffer(buffer, bytesRead));
}
......@@ -190,8 +188,8 @@ const IGNORE_ENCODINGS = ['ascii', 'utf-8', 'utf-16', 'utf-32'];
/**
* Guesses the encoding from buffer.
*/
export function guessEncodingByBuffer(buffer: Buffer): TPromise<string> {
return TPromise.wrap(import('jschardet')).then(jschardet => {
export function guessEncodingByBuffer(buffer: Buffer): Promise<string> {
return import('jschardet').then(jschardet => {
jschardet.Constants.MINIMUM_THRESHOLD = MINIMUM_THRESHOLD;
const guessed = jschardet.detect(buffer);
......@@ -270,8 +268,8 @@ export interface IDetectedEncodingResult {
}
export function detectEncodingFromBuffer(readResult: stream.ReadResult, autoGuessEncoding?: false): IDetectedEncodingResult;
export function detectEncodingFromBuffer(readResult: stream.ReadResult, autoGuessEncoding?: boolean): TPromise<IDetectedEncodingResult>;
export function detectEncodingFromBuffer({ buffer, bytesRead }: stream.ReadResult, autoGuessEncoding?: boolean): TPromise<IDetectedEncodingResult> | IDetectedEncodingResult {
export function detectEncodingFromBuffer(readResult: stream.ReadResult, autoGuessEncoding?: boolean): Promise<IDetectedEncodingResult>;
export function detectEncodingFromBuffer({ buffer, bytesRead }: stream.ReadResult, autoGuessEncoding?: boolean): Promise<IDetectedEncodingResult> | IDetectedEncodingResult {
// Always first check for BOM to find out about encoding
let encoding = detectEncodingByBOMFromBuffer(buffer, bytesRead);
......@@ -356,8 +354,8 @@ const windowsTerminalEncodings = {
'1252': 'cp1252' // West European Latin
};
export function resolveTerminalEncoding(verbose?: boolean): TPromise<string> {
let rawEncodingPromise: TPromise<string>;
export function resolveTerminalEncoding(verbose?: boolean): Promise<string> {
let rawEncodingPromise: Promise<string>;
// Support a global environment variable to win over other mechanics
const cliEncodingEnv = process.env['VSCODE_CLI_ENCODING'];
......@@ -366,23 +364,23 @@ export function resolveTerminalEncoding(verbose?: boolean): TPromise<string> {
console.log(`Found VSCODE_CLI_ENCODING variable: ${cliEncodingEnv}`);
}
rawEncodingPromise = TPromise.as(cliEncodingEnv);
rawEncodingPromise = Promise.resolve(cliEncodingEnv);
}
// Linux/Mac: use "locale charmap" command
else if (isLinux || isMacintosh) {
rawEncodingPromise = new TPromise<string>(c => {
rawEncodingPromise = new Promise<string>(resolve => {
if (verbose) {
console.log('Running "locale charmap" to detect terminal encoding...');
}
exec('locale charmap', (err, stdout, stderr) => c(stdout));
exec('locale charmap', (err, stdout, stderr) => resolve(stdout));
});
}
// Windows: educated guess
else {
rawEncodingPromise = new TPromise<string>(c => {
rawEncodingPromise = new Promise<string>(resolve => {
if (verbose) {
console.log('Running "chcp" to detect terminal encoding...');
}
......@@ -393,12 +391,12 @@ export function resolveTerminalEncoding(verbose?: boolean): TPromise<string> {
for (let i = 0; i < windowsTerminalEncodingKeys.length; i++) {
const key = windowsTerminalEncodingKeys[i];
if (stdout.indexOf(key) >= 0) {
return c(windowsTerminalEncodings[key]);
return resolve(windowsTerminalEncodings[key]);
}
}
}
return c(void 0);
return resolve(void 0);
});
});
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as errors from 'vs/base/common/errors';
import * as uuid from 'vs/base/common/uuid';
import { networkInterfaces } from 'os';
......@@ -76,15 +75,15 @@ export const virtualMachineHint: { value(): number } = new class {
}
};
let machineId: TPromise<string>;
export function getMachineId(): TPromise<string> {
let machineId: Promise<string>;
export function getMachineId(): Promise<string> {
return machineId || (machineId = getMacMachineId()
.then(id => id || uuid.generateUuid())); // fallback, generate a UUID
}
function getMacMachineId(): TPromise<string> {
return new TPromise<string>(resolve => {
TPromise.join([import('crypto'), import('getmac')]).then(([crypto, getmac]) => {
function getMacMachineId(): Promise<string> {
return new Promise<string>(resolve => {
Promise.all([import('crypto'), import('getmac')]).then(([crypto, getmac]) => {
try {
getmac.getMac((error, macAddress) => {
if (!error) {
......
......@@ -5,8 +5,6 @@
import * as fs from 'fs';
import { TPromise } from 'vs/base/common/winjs.base';
export interface ReadResult {
buffer: Buffer;
bytesRead: number;
......@@ -15,24 +13,24 @@ export interface ReadResult {
/**
* Reads totalBytes from the provided file.
*/
export function readExactlyByFile(file: string, totalBytes: number): TPromise<ReadResult> {
return new TPromise<ReadResult>((complete, error) => {
export function readExactlyByFile(file: string, totalBytes: number): Promise<ReadResult> {
return new Promise<ReadResult>((resolve, reject) => {
fs.open(file, 'r', null, (err, fd) => {
if (err) {
return error(err);
return reject(err);
}
function end(err: Error, resultBuffer: Buffer, bytesRead: number): void {
fs.close(fd, closeError => {
if (closeError) {
return error(closeError);
return reject(closeError);
}
if (err && (<any>err).code === 'EISDIR') {
return error(err); // we want to bubble this error up (file is actually a folder)
return reject(err); // we want to bubble this error up (file is actually a folder)
}
return complete({ buffer: resultBuffer, bytesRead });
return resolve({ buffer: resultBuffer, bytesRead });
});
}
......@@ -73,24 +71,24 @@ export function readExactlyByFile(file: string, totalBytes: number): TPromise<Re
* @param maximumBytesToRead The maximum number of bytes to read before giving up.
* @param callback The finished callback.
*/
export function readToMatchingString(file: string, matchingString: string, chunkBytes: number, maximumBytesToRead: number): TPromise<string> {
return new TPromise<string>((complete, error) =>
export function readToMatchingString(file: string, matchingString: string, chunkBytes: number, maximumBytesToRead: number): Promise<string> {
return new Promise<string>((resolve, reject) =>
fs.open(file, 'r', null, (err, fd) => {
if (err) {
return error(err);
return reject(err);
}
function end(err: Error, result: string): void {
fs.close(fd, closeError => {
if (closeError) {
return error(closeError);
return reject(closeError);
}
if (err && (<any>err).code === 'EISDIR') {
return error(err); // we want to bubble this error up (file is actually a folder)
return reject(err); // we want to bubble this error up (file is actually a folder)
}
return complete(result);
return resolve(result);
});
}
......
......@@ -10,7 +10,6 @@ import * as path from 'path';
import { localize } from 'vs/nls';
import { ILaunchChannel } from 'vs/platform/launch/electron-main/launchService';
import { TPromise } from 'vs/base/common/winjs.base';
import product from 'vs/platform/node/product';
import { IRequestService } from 'vs/platform/request/node/request';
import { IRequestContext } from 'vs/base/node/request';
......@@ -92,7 +91,7 @@ async function postLogs(
throw e;
}
return new TPromise<PostResult>((res, reject) => {
return new Promise<PostResult>((resolve, reject) => {
const parts: Buffer[] = [];
result.stream.on('data', data => {
parts.push(data);
......@@ -103,7 +102,7 @@ async function postLogs(
try {
const response = Buffer.concat(parts).toString('utf-8');
if (result.res.statusCode === 200) {
res(JSON.parse(response));
resolve(JSON.parse(response));
} else {
const errorMessage = localize('responseError', 'Error posting logs. Got {0} — {1}', result.res.statusCode, response);
console.log(errorMessage);
......@@ -119,10 +118,10 @@ async function postLogs(
function zipLogs(
logsPath: string
): TPromise<string> {
): Promise<string> {
const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'vscode-log-upload'));
const outZip = path.join(tempDir, 'logs.zip');
return new TPromise<string>((resolve, reject) => {
return new Promise<string>((resolve, reject) => {
doZip(logsPath, outZip, tempDir, (err, stdout, stderr) => {
if (err) {
console.error(localize('zipError', 'Error zipping logs: {0}', err.message));
......
......@@ -6,11 +6,10 @@
import * as cp from 'child_process';
import { assign } from 'vs/base/common/objects';
import { generateUuid } from 'vs/base/common/uuid';
import { TPromise } from 'vs/base/common/winjs.base';
import { isWindows } from 'vs/base/common/platform';
function getUnixShellEnvironment(): TPromise<typeof process.env> {
const promise = new TPromise((c, e) => {
function getUnixShellEnvironment(): Promise<typeof process.env> {
const promise = new Promise((resolve, reject) => {
const runAsNode = process.env['ELECTRON_RUN_AS_NODE'];
const noAttach = process.env['ELECTRON_NO_ATTACH_CONSOLE'];
const mark = generateUuid().replace(/-/g, '').substr(0, 12);
......@@ -29,12 +28,12 @@ function getUnixShellEnvironment(): TPromise<typeof process.env> {
});
const buffers: Buffer[] = [];
child.on('error', () => c({}));
child.on('error', () => resolve({}));
child.stdout.on('data', b => buffers.push(b as Buffer));
child.on('close', (code: number, signal: any) => {
if (code !== 0) {
return e(new Error('Failed to get environment'));
return reject(new Error('Failed to get environment'));
}
const raw = Buffer.concat(buffers).toString('utf8');
......@@ -59,9 +58,9 @@ function getUnixShellEnvironment(): TPromise<typeof process.env> {
// https://github.com/Microsoft/vscode/issues/22593#issuecomment-336050758
delete env['XDG_RUNTIME_DIR'];
c(env);
resolve(env);
} catch (err) {
e(err);
reject(err);
}
});
});
......@@ -71,19 +70,19 @@ function getUnixShellEnvironment(): TPromise<typeof process.env> {
}
let _shellEnv: TPromise<typeof process.env>;
let _shellEnv: Promise<typeof process.env>;
/**
* We need to get the environment from a user's shell.
* This should only be done when Code itself is not launched
* from within a shell.
*/
export function getShellEnvironment(): TPromise<typeof process.env> {
export function getShellEnvironment(): Promise<typeof process.env> {
if (_shellEnv === undefined) {
if (isWindows) {
_shellEnv = TPromise.as({});
_shellEnv = Promise.resolve({});
} else if (process.env['VSCODE_CLI'] === '1') {
_shellEnv = TPromise.as({});
_shellEnv = Promise.resolve({});
} else {
_shellEnv = getUnixShellEnvironment();
}
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncDescriptor0, createSyncDescriptor } from 'vs/platform/instantiation/common/descriptors';
import { IConstructorSignature2, createDecorator } from 'vs/platform/instantiation/common/instantiation';
import { IKeybindings } from 'vs/platform/keybinding/common/keybindingsRegistry';
......@@ -215,7 +214,7 @@ export class ExecuteCommandAction extends Action {
super(id, label);
}
run(...args: any[]): TPromise<any> {
run(...args: any[]): Promise<any> {
return this._commandService.executeCommand(this.id, ...args);
}
}
......@@ -253,7 +252,7 @@ export class MenuItemAction extends ExecuteCommandAction {
this.alt = alt ? new MenuItemAction(alt, undefined, this._options, contextKeyService, commandService) : undefined;
}
run(...args: any[]): TPromise<any> {
run(...args: any[]): Promise<any> {
let runArgs: any[] = [];
if (this._options.arg) {
......
......@@ -6,7 +6,6 @@
import * as nls from 'vs/nls';
import * as fs from 'fs';
import * as crypto from 'crypto';
import { TPromise } from 'vs/base/common/winjs.base';
import { IIntegrityService, IntegrityTestResult, ChecksumPair } from 'vs/platform/integrity/common/integrity';
import product from 'vs/platform/node/product';
import { URI } from 'vs/base/common/uri';
......@@ -109,11 +108,11 @@ export class IntegrityServiceImpl implements IIntegrityService {
const expectedChecksums = product.checksums || {};
return this.lifecycleService.when(LifecyclePhase.Eventually).then(() => {
let asyncResults: TPromise<ChecksumPair>[] = Object.keys(expectedChecksums).map((filename) => {
let asyncResults: Promise<ChecksumPair>[] = Object.keys(expectedChecksums).map((filename) => {
return this._resolve(filename, expectedChecksums[filename]);
});
return TPromise.join(asyncResults).then<IntegrityTestResult>((allResults) => {
return Promise.all(asyncResults).then<IntegrityTestResult>((allResults) => {
let isPure = true;
for (let i = 0, len = allResults.length; isPure && i < len; i++) {
if (!allResults[i].isPure) {
......@@ -130,14 +129,14 @@ export class IntegrityServiceImpl implements IIntegrityService {
});
}
private _resolve(filename: string, expected: string): TPromise<ChecksumPair> {
private _resolve(filename: string, expected: string): Promise<ChecksumPair> {
let fileUri = URI.parse(require.toUrl(filename));
return new TPromise<ChecksumPair>((c, e) => {
return new Promise<ChecksumPair>((resolve, reject) => {
fs.readFile(fileUri.fsPath, (err, buff) => {
if (err) {
return e(err);
return reject(err);
}
c(IntegrityServiceImpl._createChecksumPair(fileUri, this._computeChecksum(buff), expected));
resolve(IntegrityServiceImpl._createChecksumPair(fileUri, this._computeChecksum(buff), expected));
});
});
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -30,7 +29,7 @@ export class ToggleActivityBarVisibilityAction extends Action {
this.enabled = !!this.partService;
}
run(): TPromise<any> {
run(): Promise<any> {
const visibility = this.partService.isVisible(Parts.ACTIVITYBAR_PART);
const newVisibilityValue = !visibility;
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Action } from 'vs/base/common/actions';
import { Registry } from 'vs/platform/registry/common/platform';
......@@ -25,7 +24,7 @@ class ToggleCenteredLayout extends Action {
this.enabled = !!this.partService;
}
run(): TPromise<any> {
run(): Promise<any> {
this.partService.centerEditorLayout(!this.partService.isEditorLayoutCentered());
return Promise.resolve(null);
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import 'vs/css!./media/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -47,7 +46,7 @@ export class ToggleEditorLayoutAction extends Action {
this.enabled = this.editorGroupService.count > 1;
}
run(): TPromise<any> {
run(): Promise<any> {
const newOrientation = (this.editorGroupService.orientation === GroupOrientation.VERTICAL) ? GroupOrientation.HORIZONTAL : GroupOrientation.VERTICAL;
this.editorGroupService.setGroupOrientation(newOrientation);
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -30,7 +29,7 @@ export class ToggleSidebarPositionAction extends Action {
this.enabled = !!this.partService && !!this.configurationService;
}
run(): TPromise<any> {
run(): Promise<any> {
const position = this.partService.getSideBarPosition();
const newPositionValue = (position === Position.LEFT) ? 'right' : 'left';
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -27,8 +26,9 @@ export class ToggleSidebarVisibilityAction extends Action {
this.enabled = !!this.partService;
}
run(): TPromise<any> {
run(): Thenable<any> {
const hideSidebar = this.partService.isVisible(Parts.SIDEBAR_PART);
return this.partService.setSideBarHidden(hideSidebar);
}
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -30,7 +29,7 @@ export class ToggleStatusbarVisibilityAction extends Action {
this.enabled = !!this.partService;
}
run(): TPromise<any> {
run(): Promise<any> {
const visibility = this.partService.isVisible(Parts.STATUSBAR_PART);
const newVisibilityValue = !visibility;
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action } from 'vs/base/common/actions';
......@@ -27,7 +26,7 @@ export class ToggleTabsVisibilityAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Promise<any> {
const visibility = this.configurationService.getValue<string>(ToggleTabsVisibilityAction.tabsVisibleKey);
const newVisibilityValue = !visibility;
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Action } from 'vs/base/common/actions';
import { KeyCode, KeyMod, KeyChord } from 'vs/base/common/keyCodes';
......@@ -26,8 +25,9 @@ class ToggleZenMode extends Action {
this.enabled = !!this.partService;
}
run(): TPromise<any> {
run(): Promise<any> {
this.partService.toggleZenMode();
return Promise.resolve(null);
}
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import { Action } from 'vs/base/common/actions';
import * as nls from 'vs/nls';
import { IWindowService } from 'vs/platform/windows/common/windows';
......@@ -32,7 +31,7 @@ export class OpenFileAction extends Action {
super(id, label);
}
run(event?: any, data?: ITelemetryData): TPromise<any> {
run(event?: any, data?: ITelemetryData): Thenable<any> {
return this.dialogService.pickFileAndOpen({ forceNewWindow: false, telemetryExtraData: data });
}
}
......@@ -50,7 +49,7 @@ export class OpenFolderAction extends Action {
super(id, label);
}
run(event?: any, data?: ITelemetryData): TPromise<any> {
run(event?: any, data?: ITelemetryData): Thenable<any> {
return this.dialogService.pickFolderAndOpen({ forceNewWindow: false, telemetryExtraData: data });
}
}
......@@ -68,7 +67,7 @@ export class OpenFileFolderAction extends Action {
super(id, label);
}
run(event?: any, data?: ITelemetryData): TPromise<any> {
run(event?: any, data?: ITelemetryData): Thenable<any> {
return this.dialogService.pickFileFolderAndOpen({ forceNewWindow: false, telemetryExtraData: data });
}
}
......@@ -86,7 +85,7 @@ export class AddRootFolderAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
return this.commandService.executeCommand(ADD_ROOT_FOLDER_COMMAND_ID);
}
}
......@@ -106,7 +105,7 @@ export class GlobalRemoveRootFolderAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const state = this.contextService.getWorkbenchState();
// Workspace / Folder
......@@ -140,7 +139,7 @@ export class SaveWorkspaceAsAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
return this.getNewWorkspaceConfigPath().then(configPathUri => {
if (configPathUri) {
const configPath = configPathUri.fsPath;
......@@ -159,7 +158,7 @@ export class SaveWorkspaceAsAction extends Action {
});
}
private getNewWorkspaceConfigPath(): TPromise<URI> {
private getNewWorkspaceConfigPath(): Thenable<URI> {
return this.dialogService.showSaveDialog({
saveLabel: mnemonicButtonLabel(nls.localize({ key: 'save', comment: ['&& denotes a mnemonic'] }, "&&Save")),
title: nls.localize('saveWorkspace', "Save Workspace"),
......@@ -182,7 +181,7 @@ export class OpenWorkspaceAction extends Action {
super(id, label);
}
run(event?: any, data?: ITelemetryData): TPromise<any> {
run(event?: any, data?: ITelemetryData): Thenable<any> {
return this.dialogService.pickWorkspaceAndOpen({ telemetryExtraData: data });
}
}
......@@ -203,7 +202,7 @@ export class OpenWorkspaceConfigFileAction extends Action {
this.enabled = !!this.workspaceContextService.getWorkspace().configuration;
}
run(): TPromise<any> {
run(): Thenable<any> {
return this.editorService.openEditor({ resource: this.workspaceContextService.getWorkspace().configuration });
}
}
......@@ -224,7 +223,7 @@ export class DuplicateWorkspaceInNewWindowAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const folders = this.workspaceContextService.getWorkspace().folders;
return this.workspacesService.createWorkspace(folders).then(newWorkspace => {
......
......@@ -10,7 +10,6 @@ import { IWindowsService, IWindowService } from 'vs/platform/windows/common/wind
import { URI } from 'vs/base/common/uri';
import { ITextFileService } from 'vs/workbench/services/textfile/common/textfiles';
import { IBackupFileService } from 'vs/workbench/services/backup/common/backup';
import { TPromise } from 'vs/base/common/winjs.base';
import { Schemas } from 'vs/base/common/network';
import { IUntitledEditorService } from 'vs/workbench/services/untitled/common/untitledEditorService';
import { DefaultEndOfLine } from 'vs/editor/common/model';
......@@ -207,7 +206,7 @@ export class ResourcesDropHandler {
});
}
private doHandleDrop(untitledOrFileResources: (IDraggedResource | IDraggedEditor)[]): TPromise<boolean> {
private doHandleDrop(untitledOrFileResources: (IDraggedResource | IDraggedEditor)[]): Thenable<boolean> {
// Check for dirty editors being dropped
const resourcesWithBackups: IDraggedEditor[] = untitledOrFileResources.filter(resource => !resource.isExternal && !!(resource as IDraggedEditor).backupResource);
......@@ -226,7 +225,7 @@ export class ResourcesDropHandler {
return Promise.resolve(false);
}
private handleDirtyEditorDrop(droppedDirtyEditor: IDraggedEditor): TPromise<boolean> {
private handleDirtyEditorDrop(droppedDirtyEditor: IDraggedEditor): Thenable<boolean> {
// Untitled: always ensure that we open a new untitled for each file we drop
if (droppedDirtyEditor.resource.scheme === Schemas.untitled) {
......@@ -255,7 +254,7 @@ export class ResourcesDropHandler {
return DefaultEndOfLine.LF;
}
private handleWorkspaceFileDrop(fileOnDiskResources: URI[]): TPromise<boolean> {
private handleWorkspaceFileDrop(fileOnDiskResources: URI[]): Thenable<boolean> {
const workspaceResources: { workspaces: URI[], folders: URI[] } = {
workspaces: [],
folders: []
......@@ -287,7 +286,7 @@ export class ResourcesDropHandler {
// Pass focus to window
this.windowService.focusWindow();
let workspacesToOpen: TPromise<URI[]>;
let workspacesToOpen: Thenable<URI[]>;
// Open in separate windows if we drop workspaces or just one folder
if (workspaces.length > 0 || folders.length === 1) {
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import { QuickOpenController } from 'vs/workbench/browser/parts/quickopen/quickOpenController';
import { QuickInputService } from 'vs/workbench/browser/parts/quickinput/quickInput';
import { Sash, ISashEvent, IVerticalSashLayoutProvider, IHorizontalSashLayoutProvider, Orientation } from 'vs/base/browser/ui/sash/sash';
......@@ -261,7 +260,7 @@ export class WorkbenchLayout extends Disposable implements IVerticalSashLayoutPr
let sidebarPosition = this.partService.getSideBarPosition();
let isSidebarVisible = this.partService.isVisible(Parts.SIDEBAR_PART);
let newSashWidth = (sidebarPosition === Position.LEFT) ? startSidebarWidth + e.currentX - startX : startSidebarWidth - e.currentX + startX;
let promise = TPromise.wrap<void>(null);
let promise: Thenable<void> = Promise.resolve<void>(null);
// Sidebar visible
if (isSidebarVisible) {
......@@ -300,7 +299,7 @@ export class WorkbenchLayout extends Disposable implements IVerticalSashLayoutPr
let doLayout = false;
let isPanelVisible = this.partService.isVisible(Parts.PANEL_PART);
let newSashHeight = startPanelHeight - (e.currentY - startY);
let promise = TPromise.wrap<void>(null);
let promise: Thenable<void> = Promise.resolve<void>(null);
// Panel visible
if (isPanelVisible) {
......@@ -338,7 +337,7 @@ export class WorkbenchLayout extends Disposable implements IVerticalSashLayoutPr
let doLayout = false;
let isPanelVisible = this.partService.isVisible(Parts.PANEL_PART);
let newSashWidth = startPanelWidth - (e.currentX - startXTwo);
let promise = TPromise.wrap<void>(null);
let promise: Thenable<void> = Promise.resolve<void>(null);
// Panel visible
if (isPanelVisible) {
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import { Registry } from 'vs/platform/registry/common/platform';
import { TPromise } from 'vs/base/common/winjs.base';
import { IPanel } from 'vs/workbench/common/panel';
import { Composite, CompositeDescriptor, CompositeRegistry } from 'vs/workbench/browser/composite';
import { Action } from 'vs/base/common/actions';
......@@ -76,7 +75,7 @@ export abstract class TogglePanelAction extends Action {
this.panelId = panelId;
}
run(): TPromise<any> {
run(): Thenable<any> {
if (this.isPanelFocused()) {
return this.partService.setPanelHidden(true);
}
......
......@@ -6,7 +6,6 @@
import 'vs/css!./media/activityaction';
import * as DOM from 'vs/base/browser/dom';
import { EventType as TouchEventType, GestureEvent } from 'vs/base/browser/touch';
import { TPromise } from 'vs/base/common/winjs.base';
import { Action } from 'vs/base/common/actions';
import { IContextMenuService } from 'vs/platform/contextview/browser/contextView';
import { ViewletDescriptor } from 'vs/workbench/browser/viewlet';
......@@ -39,7 +38,7 @@ export class ViewletActivityAction extends ActivityAction {
super(activity);
}
run(event: any): TPromise<any> {
run(event: any): Thenable<any> {
if (event instanceof MouseEvent && event.button === 2) {
return Promise.resolve(false); // do not run on right click
}
......@@ -85,7 +84,7 @@ export class ToggleViewletAction extends Action {
super(_viewlet.id, _viewlet.name);
}
run(): TPromise<any> {
run(): Thenable<any> {
const sideBarVisible = this.partService.isVisible(Parts.SIDEBAR_PART);
const activeViewlet = this.viewletService.getActiveViewlet();
......
......@@ -5,7 +5,6 @@
import * as nls from 'vs/nls';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import * as dom from 'vs/base/browser/dom';
import { BaseActionItem, IBaseActionItemOptions, Separator } from 'vs/base/browser/ui/actionbar/actionbar';
import { ICommandService } from 'vs/platform/commands/common/commands';
......@@ -338,7 +337,7 @@ export class CompositeOverflowActivityAction extends ActivityAction {
});
}
run(event: any): TPromise<any> {
run(event: any): Promise<any> {
this.showMenu();
return Promise.resolve(true);
......@@ -413,7 +412,7 @@ class ManageExtensionAction extends Action {
super('activitybar.manage.extension', nls.localize('manageExtension', "Manage Extension"));
}
run(id: string): TPromise<any> {
run(id: string): Promise<any> {
return this.commandService.executeCommand('_extensions.manage', id);
}
}
......@@ -653,7 +652,7 @@ export class ToggleCompositePinnedAction extends Action {
this.checked = this.activity && this.compositeBar.isPinned(this.activity.id);
}
run(context: string): TPromise<any> {
run(context: string): Promise<any> {
const id = this.activity ? this.activity.id : context;
if (this.compositeBar.isPinned(id)) {
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { Action } from 'vs/base/common/actions';
import { mixin } from 'vs/base/common/objects';
......@@ -36,7 +35,7 @@ export class ExecuteCommandAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
return this.commandService.executeCommand(this.commandId, this.commandArgs);
}
}
......@@ -70,10 +69,10 @@ export class BaseSplitEditorAction extends Action {
}));
}
run(context?: IEditorIdentifier): TPromise<any> {
run(context?: IEditorIdentifier): Promise<any> {
splitEditor(this.editorGroupService, this.direction, context);
return TPromise.as(true);
return Promise.resolve(true);
}
dispose(): void {
......@@ -188,7 +187,7 @@ export class JoinTwoGroupsAction extends Action {
super(id, label);
}
run(context?: IEditorIdentifier): TPromise<any> {
run(context?: IEditorIdentifier): Promise<any> {
let sourceGroup: IEditorGroup;
if (context && typeof context.groupId === 'number') {
sourceGroup = this.editorGroupService.getGroup(context.groupId);
......@@ -202,11 +201,11 @@ export class JoinTwoGroupsAction extends Action {
if (targetGroup && sourceGroup !== targetGroup) {
this.editorGroupService.mergeGroup(sourceGroup, targetGroup);
return TPromise.as(true);
return Promise.resolve(true);
}
}
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -223,10 +222,10 @@ export class JoinAllGroupsAction extends Action {
super(id, label);
}
run(context?: IEditorIdentifier): TPromise<any> {
run(context?: IEditorIdentifier): Promise<any> {
mergeAllGroups(this.editorGroupService);
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -243,11 +242,11 @@ export class NavigateBetweenGroupsAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const nextGroup = this.editorGroupService.findGroup({ location: GroupLocation.NEXT }, this.editorGroupService.activeGroup, true);
nextGroup.focus();
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -264,10 +263,10 @@ export class FocusActiveGroupAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.editorGroupService.activeGroup.focus();
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -282,13 +281,13 @@ export abstract class BaseFocusGroupAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const group = this.editorGroupService.findGroup(this.scope, this.editorGroupService.activeGroup, true);
if (group) {
group.focus();
}
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -424,7 +423,7 @@ export class OpenToSideFromQuickOpenAction extends Action {
this.class = (preferredDirection === GroupDirection.RIGHT) ? 'quick-open-sidebyside-vertical' : 'quick-open-sidebyside-horizontal';
}
run(context: any): TPromise<any> {
run(context: any): Thenable<any> {
const entry = toEditorQuickOpenEntry(context);
if (entry) {
const input = entry.getInput();
......@@ -438,7 +437,7 @@ export class OpenToSideFromQuickOpenAction extends Action {
return this.editorService.openEditor(resourceInput, SIDE_GROUP);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -473,7 +472,7 @@ export class CloseEditorAction extends Action {
super(id, label, 'close-editor-action');
}
run(context?: IEditorCommandsContext): TPromise<any> {
run(context?: IEditorCommandsContext): Promise<any> {
return this.commandService.executeCommand(CLOSE_EDITOR_COMMAND_ID, void 0, context);
}
}
......@@ -491,7 +490,7 @@ export class CloseOneEditorAction extends Action {
super(id, label, 'close-editor-action');
}
run(context?: IEditorCommandsContext): TPromise<any> {
run(context?: IEditorCommandsContext): Thenable<any> {
let group: IEditorGroup;
let editorIndex: number;
if (context) {
......@@ -519,7 +518,7 @@ export class CloseOneEditorAction extends Action {
return group.closeEditor(group.activeEditor);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -536,7 +535,7 @@ export class RevertAndCloseEditorAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const activeControl = this.editorService.activeControl;
if (activeControl) {
const editor = activeControl.input;
......@@ -552,7 +551,7 @@ export class RevertAndCloseEditorAction extends Action {
});
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -570,13 +569,13 @@ export class CloseLeftEditorsInGroupAction extends Action {
super(id, label);
}
run(context?: IEditorIdentifier): TPromise<any> {
run(context?: IEditorIdentifier): Thenable<any> {
const { group, editor } = getTarget(this.editorService, this.editorGroupService, context);
if (group && editor) {
return group.closeEditors({ direction: CloseDirection.LEFT, except: editor });
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -615,7 +614,7 @@ export abstract class BaseCloseAllAction extends Action {
return groupsToClose;
}
run(): TPromise<any> {
run(): Thenable<any> {
// Just close all if there are no or one dirty editor
if (this.textFileService.getDirty().length < 2) {
......@@ -628,7 +627,7 @@ export abstract class BaseCloseAllAction extends Action {
return void 0;
}
let saveOrRevertPromise: TPromise<boolean>;
let saveOrRevertPromise: Thenable<boolean>;
if (confirm === ConfirmResult.DONT_SAVE) {
saveOrRevertPromise = this.textFileService.revertAll(null, { soft: true }).then(() => true);
} else {
......@@ -645,7 +644,7 @@ export abstract class BaseCloseAllAction extends Action {
});
}
protected abstract doCloseAll(): TPromise<any>;
protected abstract doCloseAll(): Thenable<any>;
}
export class CloseAllEditorsAction extends BaseCloseAllAction {
......@@ -662,7 +661,7 @@ export class CloseAllEditorsAction extends BaseCloseAllAction {
super(id, label, 'action-close-all-files', textFileService, editorGroupService);
}
protected doCloseAll(): TPromise<any> {
protected doCloseAll(): Promise<any> {
return Promise.all(this.groupsToClose.map(g => g.closeAllEditors()));
}
}
......@@ -681,7 +680,7 @@ export class CloseAllEditorGroupsAction extends BaseCloseAllAction {
super(id, label, void 0, textFileService, editorGroupService);
}
protected doCloseAll(): TPromise<any> {
protected doCloseAll(): Promise<any> {
return Promise.all(this.groupsToClose.map(g => g.closeAllEditors())).then(() => {
this.groupsToClose.forEach(group => this.editorGroupService.removeGroup(group));
});
......@@ -701,11 +700,11 @@ export class CloseEditorsInOtherGroupsAction extends Action {
super(id, label);
}
run(context?: IEditorIdentifier): TPromise<any> {
run(context?: IEditorIdentifier): Thenable<any> {
const groupToSkip = context ? this.editorGroupService.getGroup(context.groupId) : this.editorGroupService.activeGroup;
return Promise.all(this.editorGroupService.getGroups(GroupsOrder.MOST_RECENTLY_ACTIVE).map(g => {
if (g.id === groupToSkip.id) {
return TPromise.as(null);
return Promise.resolve(null);
}
return g.closeAllEditors();
......@@ -727,13 +726,13 @@ export class CloseEditorInAllGroupsAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const activeEditor = this.editorService.activeEditor;
if (activeEditor) {
return Promise.all(this.editorGroupService.getGroups(GroupsOrder.MOST_RECENTLY_ACTIVE).map(g => g.closeEditor(activeEditor)));
}
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -748,7 +747,7 @@ export class BaseMoveGroupAction extends Action {
super(id, label);
}
run(context?: IEditorIdentifier): TPromise<any> {
run(context?: IEditorIdentifier): Promise<any> {
let sourceGroup: IEditorGroup;
if (context && typeof context.groupId === 'number') {
sourceGroup = this.editorGroupService.getGroup(context.groupId);
......@@ -761,7 +760,7 @@ export class BaseMoveGroupAction extends Action {
this.editorGroupService.moveGroup(sourceGroup, targetGroup, this.direction);
}
return TPromise.as(true);
return Promise.resolve(true);
}
private findTargetGroup(sourceGroup: IEditorGroup): IEditorGroup {
......@@ -857,10 +856,10 @@ export class MinimizeOtherGroupsAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.editorGroupService.arrangeGroups(GroupsArrangement.MINIMIZE_OTHERS);
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -873,10 +872,10 @@ export class ResetGroupSizesAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.editorGroupService.arrangeGroups(GroupsArrangement.EVEN);
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -895,14 +894,14 @@ export class MaximizeGroupAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
if (this.editorService.activeEditor) {
this.editorGroupService.arrangeGroups(GroupsArrangement.MINIMIZE_OTHERS);
return this.partService.setSideBarHidden(true);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -917,15 +916,15 @@ export abstract class BaseNavigateEditorAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const result = this.navigate();
if (!result) {
return TPromise.as(false);
return Promise.resolve(false);
}
const { groupId, editor } = result;
if (!editor) {
return TPromise.as(false);
return Promise.resolve(false);
}
const group = this.editorGroupService.getGroup(groupId);
......@@ -1104,10 +1103,10 @@ export class NavigateForwardAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.forward();
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -1120,10 +1119,10 @@ export class NavigateBackwardsAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.back();
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -1136,10 +1135,10 @@ export class NavigateToLastEditLocationAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.openLastEditLocation();
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -1152,10 +1151,10 @@ export class NavigateLastAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.last();
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -1172,10 +1171,10 @@ export class ReopenClosedEditorAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.reopenLastClosedEditor();
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -1193,7 +1192,7 @@ export class ClearRecentFilesAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
// Clear global recently opened
this.windowsService.clearRecentlyOpened();
......@@ -1201,7 +1200,7 @@ export class ClearRecentFilesAction extends Action {
// Clear workspace specific recently opened
this.historyService.clearRecentlyOpened();
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -1240,14 +1239,14 @@ export class BaseQuickOpenEditorInGroupAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const keys = this.keybindingService.lookupKeybindings(this.id);
this.quickOpenService.show(NAVIGATE_IN_ACTIVE_GROUP_PREFIX, { quickNavigateConfiguration: { keybindings: keys } });
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -1295,12 +1294,12 @@ export class OpenPreviousEditorFromHistoryAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const keys = this.keybindingService.lookupKeybindings(this.id);
this.quickOpenService.show(null, { quickNavigateConfiguration: { keybindings: keys } });
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -1313,10 +1312,10 @@ export class OpenNextRecentlyUsedEditorAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.forward(true);
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -1329,10 +1328,10 @@ export class OpenPreviousRecentlyUsedEditorAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.historyService.back(true);
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -1349,12 +1348,12 @@ export class ClearEditorHistoryAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
// Editor history
this.historyService.clear();
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -1621,10 +1620,10 @@ export class BaseCreateEditorGroupAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
this.editorGroupService.addGroup(this.editorGroupService.activeGroup, this.direction, { activate: true });
return TPromise.as(true);
return Promise.resolve(true);
}
}
......
......@@ -12,7 +12,6 @@ import { IEditorService } from 'vs/workbench/services/editor/common/editorServic
import { EditorContextKeys } from 'vs/editor/common/editorContextKeys';
import { TextDiffEditor } from 'vs/workbench/browser/parts/editor/textDiffEditor';
import { KeyMod, KeyCode, KeyChord } from 'vs/base/common/keyCodes';
import { TPromise } from 'vs/base/common/winjs.base';
import { URI } from 'vs/base/common/uri';
import { IQuickOpenService } from 'vs/platform/quickOpen/common/quickOpen';
import { IListService } from 'vs/platform/list/browser/listService';
......@@ -592,7 +591,7 @@ function registerCloseEditorCommands() {
return group.closeEditors({ direction: CloseDirection.RIGHT, except: editor });
}
return TPromise.as(false);
return Promise.resolve(false);
}
});
......@@ -609,7 +608,7 @@ function registerCloseEditorCommands() {
return group.pinEditor(editor);
}
return TPromise.as(false);
return Promise.resolve(false);
}
});
......
......@@ -7,7 +7,6 @@ import 'vs/css!./media/notificationsActions';
import { INotificationViewItem } from 'vs/workbench/common/notifications';
import { localize } from 'vs/nls';
import { Action, IAction, ActionRunner } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
import { INotificationService } from 'vs/platform/notification/common/notification';
import { CLEAR_NOTIFICATION, EXPAND_NOTIFICATION, COLLAPSE_NOTIFICATION, CLEAR_ALL_NOTIFICATIONS, HIDE_NOTIFICATIONS_CENTER } from 'vs/workbench/browser/parts/notifications/notificationsCommands';
......@@ -27,7 +26,7 @@ export class ClearNotificationAction extends Action {
super(id, label, 'clear-notification-action');
}
run(notification: INotificationViewItem): TPromise<any> {
run(notification: INotificationViewItem): Promise<any> {
this.commandService.executeCommand(CLEAR_NOTIFICATION, notification);
return Promise.resolve(void 0);
......@@ -47,7 +46,7 @@ export class ClearAllNotificationsAction extends Action {
super(id, label, 'clear-all-notifications-action');
}
run(notification: INotificationViewItem): TPromise<any> {
run(notification: INotificationViewItem): Promise<any> {
this.commandService.executeCommand(CLEAR_ALL_NOTIFICATIONS);
return Promise.resolve(void 0);
......@@ -67,7 +66,7 @@ export class HideNotificationsCenterAction extends Action {
super(id, label, 'hide-all-notifications-action');
}
run(notification: INotificationViewItem): TPromise<any> {
run(notification: INotificationViewItem): Promise<any> {
this.commandService.executeCommand(HIDE_NOTIFICATIONS_CENTER);
return Promise.resolve(void 0);
......@@ -87,7 +86,7 @@ export class ExpandNotificationAction extends Action {
super(id, label, 'expand-notification-action');
}
run(notification: INotificationViewItem): TPromise<any> {
run(notification: INotificationViewItem): Promise<any> {
this.commandService.executeCommand(EXPAND_NOTIFICATION, notification);
return Promise.resolve(void 0);
......@@ -107,7 +106,7 @@ export class CollapseNotificationAction extends Action {
super(id, label, 'collapse-notification-action');
}
run(notification: INotificationViewItem): TPromise<any> {
run(notification: INotificationViewItem): Promise<any> {
this.commandService.executeCommand(COLLAPSE_NOTIFICATION, notification);
return Promise.resolve(void 0);
......@@ -145,7 +144,7 @@ export class CopyNotificationMessageAction extends Action {
super(id, label);
}
run(notification: INotificationViewItem): TPromise<any> {
run(notification: INotificationViewItem): Promise<any> {
this.clipboardService.writeText(notification.message.raw);
return Promise.resolve(void 0);
......@@ -161,7 +160,7 @@ export class NotificationActionRunner extends ActionRunner {
super();
}
protected runAction(action: IAction, context: INotificationViewItem): TPromise<any> {
protected runAction(action: IAction, context: INotificationViewItem): Promise<any> {
/* __GDPR__
"workbenchActionExecuted" : {
......
......@@ -5,7 +5,6 @@
import 'vs/css!./media/panelpart';
import * as nls from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import { IDisposable, dispose } from 'vs/base/common/lifecycle';
import { KeyMod, KeyCode } from 'vs/base/common/keyCodes';
import { Action } from 'vs/base/common/actions';
......@@ -30,7 +29,7 @@ export class ClosePanelAction extends Action {
super(id, name, 'hide-panel-action');
}
run(): TPromise<any> {
run(): Thenable<any> {
return this.partService.setPanelHidden(true);
}
}
......@@ -48,7 +47,7 @@ export class TogglePanelAction extends Action {
super(id, name, partService.isVisible(Parts.PANEL_PART) ? 'panel expanded' : 'panel');
}
run(): TPromise<any> {
run(): Thenable<any> {
return this.partService.setPanelHidden(this.partService.isVisible(Parts.PANEL_PART));
}
}
......@@ -67,7 +66,7 @@ class FocusPanelAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
// Show panel
if (!this.partService.isVisible(Parts.PANEL_PART)) {
......@@ -79,6 +78,7 @@ class FocusPanelAction extends Action {
if (panel) {
panel.focus();
}
return Promise.resolve(true);
}
}
......@@ -99,23 +99,29 @@ export class TogglePanelPositionAction extends Action {
@IPartService private partService: IPartService,
) {
super(id, label, partService.getPanelPosition() === Position.RIGHT ? 'move-panel-to-bottom' : 'move-panel-to-right');
this.toDispose = [];
const setClassAndLabel = () => {
const positionRight = this.partService.getPanelPosition() === Position.RIGHT;
this.class = positionRight ? 'move-panel-to-bottom' : 'move-panel-to-right';
this.label = positionRight ? TogglePanelPositionAction.MOVE_TO_BOTTOM_LABEL : TogglePanelPositionAction.MOVE_TO_RIGHT_LABEL;
};
this.toDispose.push(partService.onEditorLayout(() => setClassAndLabel()));
setClassAndLabel();
}
run(): TPromise<any> {
run(): Thenable<any> {
const position = this.partService.getPanelPosition();
return this.partService.setPanelPosition(position === Position.BOTTOM ? Position.RIGHT : Position.BOTTOM);
}
dispose(): void {
super.dispose();
this.toDispose = dispose(this.toDispose);
}
}
......@@ -136,7 +142,9 @@ export class ToggleMaximizedPanelAction extends Action {
@IPartService private partService: IPartService
) {
super(id, label, partService.isPanelMaximized() ? 'minimize-panel-action' : 'maximize-panel-action');
this.toDispose = [];
this.toDispose.push(partService.onEditorLayout(() => {
const maximized = this.partService.isPanelMaximized();
this.class = maximized ? 'minimize-panel-action' : 'maximize-panel-action';
......@@ -144,13 +152,15 @@ export class ToggleMaximizedPanelAction extends Action {
}));
}
run(): TPromise<any> {
const thenable: Thenable<void> = !this.partService.isVisible(Parts.PANEL_PART) ? this.partService.setPanelHidden(false) : Promise.resolve(null);
return thenable.then(() => this.partService.toggleMaximizedPanel());
run(): Thenable<any> {
const promise: Thenable<void> = !this.partService.isVisible(Parts.PANEL_PART) ? this.partService.setPanelHidden(false) : Promise.resolve(null);
return promise.then(() => this.partService.toggleMaximizedPanel());
}
dispose(): void {
super.dispose();
this.toDispose = dispose(this.toDispose);
}
}
......@@ -164,7 +174,7 @@ export class PanelActivityAction extends ActivityAction {
super(activity);
}
run(event: any): TPromise<any> {
run(event: any): Thenable<any> {
return this.panelService.openPanel(this.activity.id, true).then(() => this.activate());
}
}
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import 'vs/css!./media/titlebarpart';
import { TPromise } from 'vs/base/common/winjs.base';
import * as paths from 'vs/base/common/paths';
import { Part } from 'vs/workbench/browser/part';
import { ITitleService, ITitleProperties } from 'vs/workbench/services/title/common/titleService';
......@@ -596,7 +595,7 @@ class ShowItemInFolderAction extends Action {
super('showItemInFolder.action.id', label);
}
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowsService.showItemInFolder(this.path);
}
}
......
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
import * as nls from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import * as DOM from 'vs/base/browser/dom';
import { Registry } from 'vs/platform/registry/common/platform';
import { Action, IAction } from 'vs/base/common/actions';
......@@ -135,7 +134,7 @@ export class ShowViewletAction extends Action {
this.enabled = !!this.viewletService && !!this.editorGroupService;
}
run(): TPromise<any> {
run(): Promise<any> {
// Pass focus to viewlet if not open or focused
if (this.otherViewletShowing() || !this.sidebarHasFocus()) {
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import { Registry } from 'vs/platform/registry/common/platform';
import { KeybindingsRegistry, KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry';
import { ICommandHandler, CommandsRegistry } from 'vs/platform/commands/common/commands';
......@@ -30,14 +29,14 @@ export interface IWorkbenchActionRegistry {
Registry.add(Extensions.WorkbenchActions, new class implements IWorkbenchActionRegistry {
registerWorkbenchAction(descriptor: SyncActionDescriptor, alias: string, category?: string, when?: ContextKeyExpr): IDisposable {
return this._registerWorkbenchCommandFromAction(descriptor, alias, category, when);
return this.registerWorkbenchCommandFromAction(descriptor, alias, category, when);
}
private _registerWorkbenchCommandFromAction(descriptor: SyncActionDescriptor, alias: string, category?: string, when?: ContextKeyExpr): IDisposable {
private registerWorkbenchCommandFromAction(descriptor: SyncActionDescriptor, alias: string, category?: string, when?: ContextKeyExpr): IDisposable {
let registrations: IDisposable[] = [];
// command
registrations.push(CommandsRegistry.registerCommand(descriptor.id, this._createCommandHandler(descriptor)));
registrations.push(CommandsRegistry.registerCommand(descriptor.id, this.createCommandHandler(descriptor)));
// keybinding
const weight = (typeof descriptor.keybindingWeight === 'undefined' ? KeybindingWeight.WorkbenchContrib : descriptor.keybindingWeight);
......@@ -82,19 +81,20 @@ Registry.add(Extensions.WorkbenchActions, new class implements IWorkbenchActionR
return combinedDisposable(registrations);
}
private _createCommandHandler(descriptor: SyncActionDescriptor): ICommandHandler {
private createCommandHandler(descriptor: SyncActionDescriptor): ICommandHandler {
return (accessor, args) => {
const notificationService = accessor.get(INotificationService);
const instantiationService = accessor.get(IInstantiationService);
const lifecycleService = accessor.get(ILifecycleService);
TPromise.as(this._triggerAndDisposeAction(instantiationService, lifecycleService, descriptor, args)).then(null, err => {
Promise.resolve(this.triggerAndDisposeAction(instantiationService, lifecycleService, descriptor, args)).then(null, err => {
notificationService.error(err);
});
};
}
private _triggerAndDisposeAction(instantiationService: IInstantiationService, lifecycleService: ILifecycleService, descriptor: SyncActionDescriptor, args: any): Thenable<void> {
private triggerAndDisposeAction(instantiationService: IInstantiationService, lifecycleService: ILifecycleService, descriptor: SyncActionDescriptor, args: any): Thenable<void> {
// run action when workbench is created
return lifecycleService.when(LifecyclePhase.Running).then(() => {
const actionInstance = instantiationService.createInstance(descriptor.syncDescriptor);
......@@ -110,15 +110,17 @@ Registry.add(Extensions.WorkbenchActions, new class implements IWorkbenchActionR
const from = args && args.from || 'keybinding';
return TPromise.as(actionInstance.run(undefined, { from })).then(() => {
return Promise.resolve(actionInstance.run(undefined, { from })).then(() => {
actionInstance.dispose();
}, (err) => {
}, err => {
actionInstance.dispose();
return TPromise.wrapError(err);
return Promise.reject(err);
});
} catch (err) {
actionInstance.dispose();
return TPromise.wrapError(err);
return Promise.reject(err);
}
});
}
......
......@@ -9,7 +9,6 @@ import { Event, Emitter, once } from 'vs/base/common/event';
import { Disposable } from 'vs/base/common/lifecycle';
import { isPromiseCanceledError, isErrorWithActions } from 'vs/base/common/errors';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
export interface INotificationsModel {
......@@ -562,7 +561,7 @@ export class ChoiceAction extends Action {
// Emit Event
this._onDidRun.fire();
return TPromise.as(void 0);
return Promise.resolve(void 0);
});
this._keepOpen = choice.keepOpen;
......
......@@ -6,7 +6,6 @@
import 'vs/css!./media/actions';
import { URI } from 'vs/base/common/uri';
import { TPromise } from 'vs/base/common/winjs.base';
import { Action } from 'vs/base/common/actions';
import { IWindowService, IWindowsService, MenuBarVisibility } from 'vs/platform/windows/common/windows';
import * as nls from 'vs/nls';
......@@ -55,10 +54,10 @@ export class CloseCurrentWindowAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
this.windowService.closeWindow();
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -77,11 +76,11 @@ export class CloseWorkspaceAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
if (this.contextService.getWorkbenchState() === WorkbenchState.EMPTY) {
this.notificationService.info(nls.localize('noWorkspaceOpened', "There is currently no workspace opened in this instance to close."));
return TPromise.as(null);
return Promise.resolve(null);
}
return this.windowService.closeWorkspace();
......@@ -101,7 +100,7 @@ export class NewWindowAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowsService.openNewWindow();
}
}
......@@ -115,7 +114,7 @@ export class ToggleFullScreenAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowService.toggleFullScreen();
}
}
......@@ -135,7 +134,7 @@ export class ToggleMenuBarAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
let currentVisibilityValue = this.configurationService.getValue<MenuBarVisibility>(ToggleMenuBarAction.menuBarVisibilityKey);
if (typeof currentVisibilityValue !== 'string') {
currentVisibilityValue = 'default';
......@@ -150,7 +149,7 @@ export class ToggleMenuBarAction extends Action {
this.configurationService.updateValue(ToggleMenuBarAction.menuBarVisibilityKey, newVisibilityValue, ConfigurationTarget.USER);
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -163,7 +162,7 @@ export class ToggleDevToolsAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowsService.toggleDevTools();
}
}
......@@ -208,10 +207,10 @@ export class ZoomInAction extends BaseZoomAction {
super(id, label, configurationService);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
this.setConfiguredZoomLevel(webFrame.getZoomLevel() + 1);
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -228,10 +227,10 @@ export class ZoomOutAction extends BaseZoomAction {
super(id, label, configurationService);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
this.setConfiguredZoomLevel(webFrame.getZoomLevel() - 1);
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -248,10 +247,10 @@ export class ZoomResetAction extends BaseZoomAction {
super(id, label, configurationService);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
this.setConfiguredZoomLevel(0);
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -268,7 +267,7 @@ export class ReloadWindowAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowService.reloadWindow().then(() => true);
}
}
......@@ -286,7 +285,7 @@ export class ReloadWindowWithExtensionsDisabledAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowService.reloadWindow({ _: [], 'disable-extensions': true }).then(() => true);
}
}
......@@ -314,7 +313,7 @@ export abstract class BaseSwitchWindow extends Action {
protected abstract isQuickNavigate(): boolean;
run(): TPromise<void> {
run(): Thenable<void> {
const currentWindowId = this.windowService.getCurrentWindowId();
return this.windowsService.getWindows().then(windows => {
......@@ -424,7 +423,7 @@ export abstract class BaseOpenRecentAction extends Action {
protected abstract isQuickNavigate(): boolean;
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowService.getRecentlyOpened()
.then(({ workspaces, files }) => this.openRecent(workspaces, files));
}
......@@ -559,7 +558,7 @@ export class OpenIssueReporterAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.issueService.openReporter()
.then(() => true);
}
......@@ -577,7 +576,7 @@ export class OpenProcessExplorer extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.issueService.openProcessExplorer()
.then(() => true);
}
......@@ -595,7 +594,7 @@ export class ReportPerformanceIssueUsingReporterAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
// TODO: Reporter should send timings table as well
return this.issueService.openReporter({ issueType: IssueType.PerformanceIssue })
.then(() => true);
......@@ -618,7 +617,7 @@ export class KeybindingsReferenceAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
window.open(KeybindingsReferenceAction.URL);
return null;
}
......@@ -639,7 +638,7 @@ export class OpenDocumentationUrlAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
window.open(OpenDocumentationUrlAction.URL);
return null;
}
......@@ -660,7 +659,7 @@ export class OpenIntroductoryVideosUrlAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
window.open(OpenIntroductoryVideosUrlAction.URL);
return null;
}
......@@ -681,7 +680,7 @@ export class OpenTipsAndTricksUrlAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
window.open(OpenTipsAndTricksUrlAction.URL);
return null;
}
......@@ -696,7 +695,7 @@ export class ToggleSharedProcessAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowsService.toggleSharedProcess();
}
}
......@@ -719,7 +718,7 @@ export abstract class BaseNavigationAction extends Action {
super(id, label);
}
run(): TPromise<any> {
run(): Thenable<any> {
const isEditorFocus = this.partService.hasFocus(Parts.EDITOR_PART);
const isPanelFocus = this.partService.hasFocus(Parts.PANEL_PART);
const isSidebarFocus = this.partService.hasFocus(Parts.SIDEBAR_PART);
......@@ -739,24 +738,24 @@ export abstract class BaseNavigationAction extends Action {
return this.navigateOnSidebarFocus(isSidebarPositionLeft, isPanelPositionDown);
}
return TPromise.as(false);
return Promise.resolve(false);
}
protected navigateOnEditorFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean | IViewlet | IPanel> {
return TPromise.as(true);
protected navigateOnEditorFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean | IViewlet | IPanel> {
return Promise.resolve(true);
}
protected navigateOnPanelFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean | IPanel> {
return TPromise.as(true);
protected navigateOnPanelFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean | IPanel> {
return Promise.resolve(true);
}
protected navigateOnSidebarFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean | IViewlet> {
return TPromise.as(true);
protected navigateOnSidebarFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean | IViewlet> {
return Promise.resolve(true);
}
protected navigateToPanel(): TPromise<IPanel | boolean> {
protected navigateToPanel(): Thenable<IPanel | boolean> {
if (!this.partService.isVisible(Parts.PANEL_PART)) {
return TPromise.as(false);
return Promise.resolve(false);
}
const activePanelId = this.panelService.getActivePanel().getId();
......@@ -764,9 +763,9 @@ export abstract class BaseNavigationAction extends Action {
return this.panelService.openPanel(activePanelId, true);
}
protected navigateToSidebar(): TPromise<IViewlet | boolean> {
protected navigateToSidebar(): Promise<IViewlet | boolean> {
if (!this.partService.isVisible(Parts.SIDEBAR_PART)) {
return TPromise.as(false);
return Promise.resolve(false);
}
const activeViewletId = this.viewletService.getActiveViewlet().getId();
......@@ -774,23 +773,23 @@ export abstract class BaseNavigationAction extends Action {
return this.viewletService.openViewlet(activeViewletId, true);
}
protected navigateAcrossEditorGroup(direction: GroupDirection): TPromise<boolean> {
protected navigateAcrossEditorGroup(direction: GroupDirection): Promise<boolean> {
return this.doNavigateToEditorGroup({ direction });
}
protected navigateToEditorGroup(location: GroupLocation): TPromise<boolean> {
protected navigateToEditorGroup(location: GroupLocation): Promise<boolean> {
return this.doNavigateToEditorGroup({ location });
}
private doNavigateToEditorGroup(scope: IFindGroupScope): TPromise<boolean> {
private doNavigateToEditorGroup(scope: IFindGroupScope): Promise<boolean> {
const targetGroup = this.editorGroupService.findGroup(scope, this.editorGroupService.activeGroup);
if (targetGroup) {
targetGroup.focus();
return TPromise.as(true);
return Promise.resolve(true);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -810,22 +809,22 @@ export class NavigateLeftAction extends BaseNavigationAction {
super(id, label, editorGroupService, panelService, partService, viewletService);
}
protected navigateOnEditorFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean | IViewlet> {
protected navigateOnEditorFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean | IViewlet> {
return this.navigateAcrossEditorGroup(GroupDirection.LEFT)
.then(didNavigate => {
if (didNavigate) {
return TPromise.as(true);
return Promise.resolve(true);
}
if (isSidebarPositionLeft) {
return this.navigateToSidebar();
}
return TPromise.as(false);
return Promise.resolve(false);
});
}
protected navigateOnPanelFocus(isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): TPromise<boolean | IViewlet> {
protected navigateOnPanelFocus(isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): Promise<boolean | IViewlet> {
if (isPanelPositionDown && isSidebarPositionLeft) {
return this.navigateToSidebar();
}
......@@ -834,15 +833,15 @@ export class NavigateLeftAction extends BaseNavigationAction {
return this.navigateToEditorGroup(GroupLocation.LAST);
}
return TPromise.as(false);
return Promise.resolve(false);
}
protected navigateOnSidebarFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean> {
protected navigateOnSidebarFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean> {
if (!isSidebarPositionLeft) {
return this.navigateToEditorGroup(GroupLocation.LAST);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -862,11 +861,11 @@ export class NavigateRightAction extends BaseNavigationAction {
super(id, label, editorGroupService, panelService, partService, viewletService);
}
protected navigateOnEditorFocus(isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): TPromise<boolean | IViewlet | IPanel> {
protected navigateOnEditorFocus(isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): Promise<boolean | IViewlet | IPanel> {
return this.navigateAcrossEditorGroup(GroupDirection.RIGHT)
.then(didNavigate => {
if (didNavigate) {
return TPromise.as(true);
return Promise.resolve(true);
}
if (!isPanelPositionDown) {
......@@ -877,24 +876,24 @@ export class NavigateRightAction extends BaseNavigationAction {
return this.navigateToSidebar();
}
return TPromise.as(false);
return Promise.resolve(false);
});
}
protected navigateOnPanelFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean | IViewlet> {
protected navigateOnPanelFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean | IViewlet> {
if (!isSidebarPositionLeft) {
return this.navigateToSidebar();
}
return TPromise.as(false);
return Promise.resolve(false);
}
protected navigateOnSidebarFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean> {
protected navigateOnSidebarFocus(isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean> {
if (isSidebarPositionLeft) {
return this.navigateToEditorGroup(GroupLocation.FIRST);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -914,16 +913,16 @@ export class NavigateUpAction extends BaseNavigationAction {
super(id, label, editorGroupService, panelService, partService, viewletService);
}
protected navigateOnEditorFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): TPromise<boolean> {
protected navigateOnEditorFocus(_isSidebarPositionLeft: boolean, _isPanelPositionDown: boolean): Promise<boolean> {
return this.navigateAcrossEditorGroup(GroupDirection.UP);
}
protected navigateOnPanelFocus(_isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): TPromise<boolean> {
protected navigateOnPanelFocus(_isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): Promise<boolean> {
if (isPanelPositionDown) {
return this.navigateToEditorGroup(GroupLocation.LAST);
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -943,18 +942,18 @@ export class NavigateDownAction extends BaseNavigationAction {
super(id, label, editorGroupService, panelService, partService, viewletService);
}
protected navigateOnEditorFocus(_isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): TPromise<boolean | IPanel> {
protected navigateOnEditorFocus(_isSidebarPositionLeft: boolean, isPanelPositionDown: boolean): Promise<boolean | IPanel> {
return this.navigateAcrossEditorGroup(GroupDirection.DOWN)
.then(didNavigate => {
if (didNavigate) {
return TPromise.as(true);
return Promise.resolve(true);
}
if (isPanelPositionDown) {
return this.navigateToPanel();
}
return TPromise.as(false);
return Promise.resolve(false);
});
}
}
......@@ -1006,9 +1005,9 @@ export class IncreaseViewSizeAction extends BaseResizeViewAction {
super(id, label, partService);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
this.resizePart(BaseResizeViewAction.RESIZE_INCREMENT);
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -1026,9 +1025,9 @@ export class DecreaseViewSizeAction extends BaseResizeViewAction {
super(id, label, partService);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
this.resizePart(-BaseResizeViewAction.RESIZE_INCREMENT);
return TPromise.as(true);
return Promise.resolve(true);
}
}
......@@ -1045,7 +1044,7 @@ export class NewWindowTab extends Action {
super(NewWindowTab.ID, NewWindowTab.LABEL);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowsService.newWindowTab().then(() => true);
}
}
......@@ -1063,7 +1062,7 @@ export class ShowPreviousWindowTab extends Action {
super(ShowPreviousWindowTab.ID, ShowPreviousWindowTab.LABEL);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowsService.showPreviousWindowTab().then(() => true);
}
}
......@@ -1081,7 +1080,7 @@ export class ShowNextWindowTab extends Action {
super(ShowNextWindowTab.ID, ShowNextWindowTab.LABEL);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowsService.showNextWindowTab().then(() => true);
}
}
......@@ -1099,7 +1098,7 @@ export class MoveWindowTabToNewWindow extends Action {
super(MoveWindowTabToNewWindow.ID, MoveWindowTabToNewWindow.LABEL);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowsService.moveWindowTabToNewWindow().then(() => true);
}
}
......@@ -1117,7 +1116,7 @@ export class MergeAllWindowTabs extends Action {
super(MergeAllWindowTabs.ID, MergeAllWindowTabs.LABEL);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowsService.mergeAllWindowTabs().then(() => true);
}
}
......@@ -1135,7 +1134,7 @@ export class ToggleWindowTabsBar extends Action {
super(ToggleWindowTabsBar.ID, ToggleWindowTabsBar.LABEL);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
return this.windowsService.toggleWindowTabsBar().then(() => true);
}
}
......@@ -1152,12 +1151,12 @@ export class OpenTwitterUrlAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
if (product.twitterUrl) {
return TPromise.as(shell.openExternal(product.twitterUrl));
return Promise.resolve(shell.openExternal(product.twitterUrl));
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -1173,12 +1172,12 @@ export class OpenRequestFeatureUrlAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
if (product.requestFeatureUrl) {
return TPromise.as(shell.openExternal(product.requestFeatureUrl));
return Promise.resolve(shell.openExternal(product.requestFeatureUrl));
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -1194,17 +1193,17 @@ export class OpenLicenseUrlAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
if (product.licenseUrl) {
if (language) {
const queryArgChar = product.licenseUrl.indexOf('?') > 0 ? '&' : '?';
return TPromise.as(shell.openExternal(`${product.licenseUrl}${queryArgChar}lang=${language}`));
return Promise.resolve(shell.openExternal(`${product.licenseUrl}${queryArgChar}lang=${language}`));
} else {
return TPromise.as(shell.openExternal(product.licenseUrl));
return Promise.resolve(shell.openExternal(product.licenseUrl));
}
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -1221,18 +1220,18 @@ export class OpenPrivacyStatementUrlAction extends Action {
super(id, label);
}
run(): TPromise<boolean> {
run(): Thenable<boolean> {
if (product.privacyStatementUrl) {
if (language) {
const queryArgChar = product.privacyStatementUrl.indexOf('?') > 0 ? '&' : '?';
return TPromise.as(shell.openExternal(`${product.privacyStatementUrl}${queryArgChar}lang=${language}`));
return Promise.resolve(shell.openExternal(`${product.privacyStatementUrl}${queryArgChar}lang=${language}`));
} else {
return TPromise.as(shell.openExternal(product.privacyStatementUrl));
return Promise.resolve(shell.openExternal(product.privacyStatementUrl));
}
}
return TPromise.as(false);
return Promise.resolve(false);
}
}
......@@ -1249,7 +1248,7 @@ export class ShowAboutDialogAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
return this.windowsService.openAboutDialog();
}
}
......@@ -1268,7 +1267,7 @@ export class InspectContextKeysAction extends Action {
super(id, label);
}
run(): TPromise<void> {
run(): Thenable<void> {
const disposables: IDisposable[] = [];
const stylesheet = createStyleSheet();
......@@ -1310,6 +1309,6 @@ export class InspectContextKeysAction extends Action {
dispose(disposables);
}, null, disposables);
return TPromise.as(null);
return Promise.resolve(null);
}
}
......@@ -8,7 +8,6 @@ import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configur
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncActionDescriptor, MenuRegistry, MenuId } from 'vs/platform/actions/common/actions';
export class ToggleMinimapAction extends Action {
......@@ -23,7 +22,7 @@ export class ToggleMinimapAction extends Action {
super(id, label);
}
public run(): TPromise<any> {
public run(): Promise<any> {
const newValue = !this._configurationService.getValue<boolean>('editor.minimap.enabled');
return this._configurationService.updateValue('editor.minimap.enabled', newValue, ConfigurationTarget.USER);
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import * as platform from 'vs/base/common/platform';
import { Registry } from 'vs/platform/registry/common/platform';
......@@ -30,7 +29,7 @@ export class ToggleMultiCursorModifierAction extends Action {
super(id, label);
}
public run(): TPromise<any> {
public run(): Promise<any> {
const editorConf = this.configurationService.getValue<{ multiCursorModifier: 'ctrlCmd' | 'alt' }>('editor');
const newValue: 'ctrlCmd' | 'alt' = (editorConf.multiCursorModifier === 'ctrlCmd' ? 'alt' : 'ctrlCmd');
......
......@@ -8,7 +8,6 @@ import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configur
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncActionDescriptor, MenuRegistry, MenuId } from 'vs/platform/actions/common/actions';
export class ToggleRenderControlCharacterAction extends Action {
......@@ -24,7 +23,7 @@ export class ToggleRenderControlCharacterAction extends Action {
super(id, label);
}
public run(): TPromise<any> {
public run(): Promise<any> {
let newRenderControlCharacters = !this._configurationService.getValue<boolean>('editor.renderControlCharacters');
return this._configurationService.updateValue('editor.renderControlCharacters', newRenderControlCharacters, ConfigurationTarget.USER);
}
......
......@@ -8,7 +8,6 @@ import { IConfigurationService, ConfigurationTarget } from 'vs/platform/configur
import { Registry } from 'vs/platform/registry/common/platform';
import { IWorkbenchActionRegistry, Extensions as ActionExtensions } from 'vs/workbench/common/actions';
import { Action } from 'vs/base/common/actions';
import { TPromise } from 'vs/base/common/winjs.base';
import { SyncActionDescriptor, MenuRegistry, MenuId } from 'vs/platform/actions/common/actions';
export class ToggleRenderWhitespaceAction extends Action {
......@@ -24,7 +23,7 @@ export class ToggleRenderWhitespaceAction extends Action {
super(id, label);
}
public run(): TPromise<any> {
public run(): Promise<any> {
const renderWhitespace = this._configurationService.getValue<string>('editor.renderWhitespace');
let newRenderWhitespace: string;
......
......@@ -16,7 +16,6 @@ import { IWorkspaceConfigurationService } from 'vs/workbench/services/configurat
import { IConfigurationChangeEvent } from 'vs/platform/configuration/common/configuration';
import { clearNode, EventHelper, addClass, removeClass, addDisposableListener } from 'vs/base/browser/dom';
import { localize } from 'vs/nls';
import { TPromise } from 'vs/base/common/winjs.base';
import { Action } from 'vs/base/common/actions';
class TwitterFeedbackService implements IFeedbackDelegate {
......@@ -111,7 +110,7 @@ export class FeedbackStatusbarItem extends Themable implements IStatusbarItem {
this.contextMenuService.showContextMenu({
getAnchor: () => this.container,
getActions: () => TPromise.as([this.hideAction])
getActions: () => Promise.resolve([this.hideAction])
});
}));
......@@ -161,7 +160,7 @@ class HideAction extends Action {
super('feedback.hide', localize('hide', "Hide"));
}
run(extensionId: string): TPromise<any> {
run(extensionId: string): Promise<any> {
return this.configurationService.updateValue(FEEDBACK_VISIBLE_CONFIG, false);
}
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as nls from 'vs/nls';
import { toErrorMessage } from 'vs/base/common/errorMessage';
import * as paths from 'vs/base/common/paths';
......@@ -198,7 +197,7 @@ class ResolveConflictLearnMoreAction extends Action {
super('workbench.files.action.resolveConflictLearnMore', nls.localize('learnMore', "Learn More"));
}
run(): TPromise<any> {
run(): Promise<any> {
return this.openerService.open(URI.parse('https://go.microsoft.com/fwlink/?linkid=868264'));
}
}
......@@ -211,7 +210,7 @@ class DoNotShowResolveConflictLearnMoreAction extends Action {
super('workbench.files.action.resolveConflictLearnMoreDoNotShowAgain', nls.localize('dontShowAgain', "Don't Show Again"));
}
run(notification: IDisposable): TPromise<any> {
run(notification: IDisposable): Promise<any> {
this.storageService.store(LEARN_MORE_DIRTY_WRITE_IGNORE_KEY, true);
// Hide notification
......@@ -234,7 +233,7 @@ class ResolveSaveConflictAction extends Action {
super('workbench.files.action.resolveConflict', nls.localize('compareChanges', "Compare"));
}
run(): TPromise<any> {
run(): Thenable<any> {
if (!this.model.isDisposed()) {
const resource = this.model.getResource();
const name = paths.basename(resource.fsPath);
......@@ -276,7 +275,7 @@ class SaveElevatedAction extends Action {
super('workbench.files.action.saveElevated', triedToMakeWriteable ? nls.localize('overwriteElevated', "Overwrite as Admin...") : nls.localize('saveElevated', "Retry as Admin..."));
}
run(): TPromise<any> {
run(): Promise<any> {
if (!this.model.isDisposed()) {
this.model.save({
writeElevated: true,
......@@ -296,7 +295,7 @@ class OverwriteReadonlyAction extends Action {
super('workbench.files.action.overwrite', nls.localize('overwrite', "Overwrite"));
}
run(): TPromise<any> {
run(): Promise<any> {
if (!this.model.isDisposed()) {
this.model.save({ overwriteReadonly: true });
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import { IAction, IActionRunner, ActionRunner } from 'vs/base/common/actions';
import { Separator } from 'vs/base/browser/ui/actionbar/actionbar';
import * as dom from 'vs/base/browser/dom';
......@@ -142,7 +141,7 @@ export class ContextMenuService extends Disposable implements IContextMenuServic
this.telemetryService.publicLog('workbenchActionExecuted', { id: actionToRun.id, from: 'contextMenu' });
const context = delegate.getActionsContext ? delegate.getActionsContext(event) : event;
const res = actionRunner.run(actionToRun, context) || TPromise.as(null);
const res = actionRunner.run(actionToRun, context) || Promise.resolve(null);
res.then(null, e => this.notificationService.error(e));
}
......
......@@ -3,7 +3,6 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { TPromise } from 'vs/base/common/winjs.base';
import * as errors from 'vs/base/common/errors';
import { URI } from 'vs/base/common/uri';
import { IEditor } from 'vs/editor/common/editorCommon';
......@@ -405,7 +404,7 @@ export class HistoryService extends Disposable implements IHistoryService {
});
}
private doNavigate(location: IStackEntry, withSelection: boolean): TPromise<IBaseEditor> {
private doNavigate(location: IStackEntry, withSelection: boolean): Thenable<IBaseEditor> {
const options: ITextEditorOptions = {
revealIfOpened: true // support to navigate across editor groups
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册