提交 780a5085 编写于 作者: A Alex Ross

Strict init for tasks, file picker, and custom view

Part of #78168
上级 222401c6
......@@ -420,7 +420,7 @@ namespace TaskFilterDTO {
@extHostNamedCustomer(MainContext.MainThreadTask)
export class MainThreadTask implements MainThreadTaskShape {
private readonly _extHostContext: IExtHostContext;
private readonly _extHostContext: IExtHostContext | undefined;
private readonly _proxy: ExtHostTaskShape;
private readonly _providers: Map<number, { disposable: IDisposable, provider: ITaskProvider }>;
......
......@@ -247,7 +247,7 @@ class ExtHostTreeView<T> extends Disposable {
.then(treeNode => this.proxy.$reveal(this.viewId, treeNode.item, parentChain.map(p => p.item), { select, focus, expand })), error => this.logService.error(error));
}
private _message: string | MarkdownString;
private _message: string | MarkdownString = '';
get message(): string | MarkdownString {
return this._message;
}
......@@ -565,9 +565,9 @@ class ExtHostTreeView<T> extends Disposable {
if (node) {
if (node.children) {
for (const child of node.children) {
const childEleement = this.elements.get(child.item.handle);
if (childEleement) {
this.clear(childEleement);
const childElement = this.elements.get(child.item.handle);
if (childElement) {
this.clear(childElement);
}
}
}
......@@ -583,9 +583,9 @@ class ExtHostTreeView<T> extends Disposable {
if (node) {
if (node.children) {
for (const child of node.children) {
const childEleement = this.elements.get(child.item.handle);
if (childEleement) {
this.clear(childEleement);
const childElement = this.elements.get(child.item.handle);
if (childElement) {
this.clear(childElement);
}
}
}
......
......@@ -59,9 +59,9 @@ class RegexpTaskMatcher implements TaskDetectorMatcher {
}
class GruntTaskMatcher implements TaskDetectorMatcher {
private tasksStart: boolean;
private tasksEnd: boolean;
private descriptionOffset: number | null;
private tasksStart!: boolean;
private tasksEnd!: boolean;
private descriptionOffset!: number | null;
init() {
this.tasksStart = false;
......@@ -179,7 +179,7 @@ export class ProcessRunnerDetector {
commandExecutable, isShellCommand, config.matcher, ProcessRunnerDetector.DefaultProblemMatchers, list));
} else {
if (detectSpecific) {
let detectorPromise: Promise<DetectorResult>;
let detectorPromise: Promise<DetectorResult | null>;
if ('gulp' === detectSpecific) {
detectorPromise = this.tryDetectGulp(this._workspaceRoot, list);
} else if ('jake' === detectSpecific) {
......@@ -229,7 +229,7 @@ export class ProcessRunnerDetector {
return result;
}
private tryDetectGulp(workspaceFolder: IWorkspaceFolder, list: boolean): Promise<DetectorResult> {
private tryDetectGulp(workspaceFolder: IWorkspaceFolder, list: boolean): Promise<DetectorResult | null> {
return Promise.resolve(this.fileService.resolve(workspaceFolder.toResource('gulpfile.js'))).then((stat) => { // TODO@Dirk (https://github.com/Microsoft/vscode/issues/29454)
let config = ProcessRunnerDetector.detectorConfig('gulp');
let process = new LineProcess('gulp', [config.arg, '--no-color'], true, { cwd: this._cwd });
......@@ -239,7 +239,7 @@ export class ProcessRunnerDetector {
});
}
private tryDetectGrunt(workspaceFolder: IWorkspaceFolder, list: boolean): Promise<DetectorResult> {
private tryDetectGrunt(workspaceFolder: IWorkspaceFolder, list: boolean): Promise<DetectorResult | null> {
return Promise.resolve(this.fileService.resolve(workspaceFolder.toResource('Gruntfile.js'))).then((stat) => { // TODO@Dirk (https://github.com/Microsoft/vscode/issues/29454)
let config = ProcessRunnerDetector.detectorConfig('grunt');
let process = new LineProcess('grunt', [config.arg, '--no-color'], true, { cwd: this._cwd });
......@@ -249,7 +249,7 @@ export class ProcessRunnerDetector {
});
}
private tryDetectJake(workspaceFolder: IWorkspaceFolder, list: boolean): Promise<DetectorResult> {
private tryDetectJake(workspaceFolder: IWorkspaceFolder, list: boolean): Promise<DetectorResult | null> {
let run = () => {
let config = ProcessRunnerDetector.detectorConfig('jake');
let process = new LineProcess('jake', [config.arg], true, { cwd: this._cwd });
......
......@@ -46,24 +46,24 @@ enum UpdateResult {
}
export class RemoteFileDialog {
private options: IOpenDialogOptions;
private currentFolder: URI;
private filePickBox: IQuickPick<FileQuickPickItem>;
private hidden: boolean;
private allowFileSelection: boolean;
private allowFolderSelection: boolean;
private options!: IOpenDialogOptions;
private currentFolder!: URI;
private filePickBox!: IQuickPick<FileQuickPickItem>;
private hidden: boolean = false;
private allowFileSelection: boolean = true;
private allowFolderSelection: boolean = false;
private remoteAuthority: string | undefined;
private requiresTrailing: boolean;
private requiresTrailing: boolean = false;
private trailing: string | undefined;
private scheme: string = REMOTE_HOST_SCHEME;
private contextKey: IContextKey<boolean>;
private userEnteredPathSegment: string;
private autoCompletePathSegment: string;
private activeItem: FileQuickPickItem;
private userHome: URI;
private userEnteredPathSegment: string = '';
private autoCompletePathSegment: string = '';
private activeItem: FileQuickPickItem | undefined;
private userHome!: URI;
private badPath: string | undefined;
private remoteAgentEnvironment: IRemoteAgentEnvironment | null;
private separator: string;
private remoteAgentEnvironment: IRemoteAgentEnvironment | null | undefined;
private separator: string = '/';
private onBusyChangeEmitter = new Emitter<boolean>();
private updatingPromise: CancelablePromise<void> | undefined;
......@@ -865,4 +865,4 @@ export class RemoteFileDialog {
return undefined;
}
}
}
\ No newline at end of file
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册