Skip to content

Commit 0fdba09

Browse files
committed
getActiveCodeEditor should return undefined instead of null
microsoft#70384
1 parent b18ef0e commit 0fdba09

9 files changed

Lines changed: 14 additions & 13 deletions

File tree

src/vs/editor/browser/services/abstractCodeEditorService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ export abstract class AbstractCodeEditorService extends Disposable implements IC
124124
delete this._transientWatchers[w.uri];
125125
}
126126

127-
abstract getActiveCodeEditor(): ICodeEditor | null;
127+
abstract getActiveCodeEditor(): ICodeEditor | undefined;
128128
abstract openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null>;
129129
}
130130

src/vs/editor/browser/services/codeEditorService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,6 @@ export interface ICodeEditorService {
4545
setTransientModelProperty(model: ITextModel, key: string, value: any): void;
4646
getTransientModelProperty(model: ITextModel, key: string): any;
4747

48-
getActiveCodeEditor(): ICodeEditor | null;
48+
getActiveCodeEditor(): ICodeEditor | undefined;
4949
openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null>;
5050
}

src/vs/editor/browser/services/codeEditorServiceImpl.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ export abstract class CodeEditorServiceImpl extends AbstractCodeEditorService {
6565
return provider.getOptions(this, writable);
6666
}
6767

68-
abstract getActiveCodeEditor(): ICodeEditor | null;
68+
abstract getActiveCodeEditor(): ICodeEditor | undefined;
6969
abstract openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null>;
7070
}
7171

src/vs/editor/contrib/rename/rename.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import { ICodeEditorService } from 'vs/editor/browser/services/codeEditorService
2929
import { CancellationToken } from 'vs/base/common/cancellation';
3030
import { Disposable } from 'vs/base/common/lifecycle';
3131
import { CancelablePromise, createCancelablePromise } from 'vs/base/common/async';
32+
import { withUndefinedAsNull } from 'vs/base/common/types';
3233

3334
class RenameSkeleton {
3435

@@ -285,7 +286,7 @@ export class RenameAction extends EditorAction {
285286
const [uri, pos] = Array.isArray(args) && args || [undefined, undefined];
286287

287288
if (URI.isUri(uri) && Position.isIPosition(pos)) {
288-
return editorService.openCodeEditor({ resource: uri }, editorService.getActiveCodeEditor()).then(editor => {
289+
return editorService.openCodeEditor({ resource: uri }, withUndefinedAsNull(editorService.getActiveCodeEditor())).then(editor => {
289290
if (!editor) {
290291
return;
291292
}

src/vs/editor/standalone/browser/standaloneCodeServiceImpl.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ import { IResourceInput } from 'vs/platform/editor/common/editor';
1515

1616
export class StandaloneCodeEditorServiceImpl extends CodeEditorServiceImpl {
1717

18-
public getActiveCodeEditor(): ICodeEditor | null {
19-
return null; // not supported in the standalone case
18+
public getActiveCodeEditor(): ICodeEditor | undefined {
19+
return undefined; // not supported in the standalone case
2020
}
2121

2222
public openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null> {

src/vs/editor/test/browser/editorTestServices.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import { IInstantiationService } from 'vs/platform/instantiation/common/instanti
1414

1515
export class TestCodeEditorService extends AbstractCodeEditorService {
1616
public lastInput?: IResourceInput;
17-
public getActiveCodeEditor(): ICodeEditor | null { return null; }
17+
public getActiveCodeEditor(): ICodeEditor | undefined { return undefined; }
1818
public openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null> {
1919
this.lastInput = input;
2020
return Promise.resolve(null);

src/vs/editor/test/browser/services/decorationRenderOptions.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ import { TestTheme, TestThemeService } from 'vs/platform/theme/test/common/testT
1515
const themeServiceMock = new TestThemeService();
1616

1717
export class TestCodeEditorServiceImpl extends CodeEditorServiceImpl {
18-
getActiveCodeEditor(): ICodeEditor | null {
19-
return null;
18+
getActiveCodeEditor(): ICodeEditor | undefined {
19+
return undefined;
2020
}
2121

2222
openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null> {

src/vs/workbench/services/editor/browser/codeEditorService.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export class CodeEditorService extends CodeEditorServiceImpl {
2222
super(themeService);
2323
}
2424

25-
getActiveCodeEditor(): ICodeEditor | null {
25+
getActiveCodeEditor(): ICodeEditor | undefined {
2626
const activeTextEditorWidget = this.editorService.activeTextEditorWidget;
2727
if (isCodeEditor(activeTextEditorWidget)) {
2828
return activeTextEditorWidget;
@@ -32,7 +32,7 @@ export class CodeEditorService extends CodeEditorServiceImpl {
3232
return activeTextEditorWidget.getModifiedEditor();
3333
}
3434

35-
return null;
35+
return undefined;
3636
}
3737

3838
openCodeEditor(input: IResourceInput, source: ICodeEditor | null, sideBySide?: boolean): Promise<ICodeEditor | null> {
@@ -75,4 +75,4 @@ export class CodeEditorService extends CodeEditorServiceImpl {
7575
}
7676
}
7777

78-
registerSingleton(ICodeEditorService, CodeEditorService, true);
78+
registerSingleton(ICodeEditorService, CodeEditorService, true);

src/vs/workbench/test/workbenchTestServices.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1173,7 +1173,7 @@ export class TestCodeEditorService implements ICodeEditorService {
11731173
resolveDecorationOptions(_typeKey: string, _writable: boolean): IModelDecorationOptions { return Object.create(null); }
11741174
setTransientModelProperty(_model: ITextModel, _key: string, _value: any): void { }
11751175
getTransientModelProperty(_model: ITextModel, _key: string) { }
1176-
getActiveCodeEditor(): ICodeEditor | null { return null; }
1176+
getActiveCodeEditor(): ICodeEditor | undefined { return undefined; }
11771177
openCodeEditor(_input: IResourceInput, _source: ICodeEditor, _sideBySide?: boolean): Promise<ICodeEditor | null> { return Promise.resolve(null); }
11781178
}
11791179

0 commit comments

Comments
 (0)