未验证 提交 2d6d4a32 编写于 作者: P Peng Lyu 提交者: GitHub

Merge pull request #108144 from microsoft/rebornix/notebookEditorDebt

Move acitve/visible notebook editors to window namespace.
...@@ -1485,16 +1485,6 @@ declare module 'vscode' { ...@@ -1485,16 +1485,6 @@ declare module 'vscode' {
*/ */
readonly viewColumn?: ViewColumn; readonly viewColumn?: ViewColumn;
/**
* Whether the panel is active (focused by the user).
*/
readonly active: boolean;
/**
* Whether the panel is visible.
*/
readonly visible: boolean;
/** /**
* Fired when the panel is disposed. * Fired when the panel is disposed.
*/ */
...@@ -1839,14 +1829,6 @@ declare module 'vscode' { ...@@ -1839,14 +1829,6 @@ declare module 'vscode' {
* All currently known notebook documents. * All currently known notebook documents.
*/ */
export const notebookDocuments: ReadonlyArray<NotebookDocument>; export const notebookDocuments: ReadonlyArray<NotebookDocument>;
export const visibleNotebookEditors: NotebookEditor[];
export const onDidChangeVisibleNotebookEditors: Event<NotebookEditor[]>;
export const activeNotebookEditor: NotebookEditor | undefined;
export const onDidChangeActiveNotebookEditor: Event<NotebookEditor | undefined>;
export const onDidChangeNotebookEditorSelection: Event<NotebookEditorSelectionChangeEvent>;
export const onDidChangeNotebookEditorVisibleRanges: Event<NotebookEditorVisibleRangesChangeEvent>;
export const onDidChangeNotebookDocumentMetadata: Event<NotebookDocumentMetadataChangeEvent>; export const onDidChangeNotebookDocumentMetadata: Event<NotebookDocumentMetadataChangeEvent>;
export const onDidChangeNotebookCells: Event<NotebookCellsChangeEvent>; export const onDidChangeNotebookCells: Event<NotebookCellsChangeEvent>;
export const onDidChangeCellOutputs: Event<NotebookCellOutputsChangeEvent>; export const onDidChangeCellOutputs: Event<NotebookCellOutputsChangeEvent>;
...@@ -1875,6 +1857,15 @@ declare module 'vscode' { ...@@ -1875,6 +1857,15 @@ declare module 'vscode' {
export function createCellStatusBarItem(cell: NotebookCell, alignment?: NotebookCellStatusBarAlignment, priority?: number): NotebookCellStatusBarItem; export function createCellStatusBarItem(cell: NotebookCell, alignment?: NotebookCellStatusBarAlignment, priority?: number): NotebookCellStatusBarItem;
} }
export namespace window {
export const visibleNotebookEditors: NotebookEditor[];
export const onDidChangeVisibleNotebookEditors: Event<NotebookEditor[]>;
export const activeNotebookEditor: NotebookEditor | undefined;
export const onDidChangeActiveNotebookEditor: Event<NotebookEditor | undefined>;
export const onDidChangeNotebookEditorSelection: Event<NotebookEditorSelectionChangeEvent>;
export const onDidChangeNotebookEditorVisibleRanges: Event<NotebookEditorVisibleRangesChangeEvent>;
}
//#endregion //#endregion
//#region https://github.com/microsoft/vscode/issues/39441 //#region https://github.com/microsoft/vscode/issues/39441
......
...@@ -630,7 +630,31 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I ...@@ -630,7 +630,31 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
} }
}) { }) {
return extHostWebviewViews.registerWebviewViewProvider(extension, viewId, provider, options?.webviewOptions); return extHostWebviewViews.registerWebviewViewProvider(extension, viewId, provider, options?.webviewOptions);
} },
get activeNotebookEditor(): vscode.NotebookEditor | undefined {
checkProposedApiEnabled(extension);
return extHostNotebook.activeNotebookEditor;
},
onDidChangeActiveNotebookEditor(listener, thisArgs?, disposables?) {
checkProposedApiEnabled(extension);
return extHostNotebook.onDidChangeActiveNotebookEditor(listener, thisArgs, disposables);
},
get visibleNotebookEditors() {
checkProposedApiEnabled(extension);
return extHostNotebook.visibleNotebookEditors;
},
get onDidChangeVisibleNotebookEditors() {
checkProposedApiEnabled(extension);
return extHostNotebook.onDidChangeVisibleNotebookEditors;
},
onDidChangeNotebookEditorSelection(listener, thisArgs?, disposables?) {
checkProposedApiEnabled(extension);
return extHostNotebook.onDidChangeNotebookEditorSelection(listener, thisArgs, disposables);
},
onDidChangeNotebookEditorVisibleRanges(listener, thisArgs?, disposables?) {
checkProposedApiEnabled(extension);
return extHostNotebook.onDidChangeNotebookEditorVisibleRanges(listener, thisArgs, disposables);
},
}; };
// namespace: workspace // namespace: workspace
...@@ -925,7 +949,15 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I ...@@ -925,7 +949,15 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
}; };
// namespace: notebook // namespace: notebook
const notebook: typeof vscode.notebook = { const notebook: (typeof vscode.notebook & {
// to ensure that notebook extensions not break before they update APIs.
visibleNotebookEditors: vscode.NotebookEditor[];
onDidChangeVisibleNotebookEditors: Event<vscode.NotebookEditor[]>;
activeNotebookEditor: vscode.NotebookEditor | undefined;
onDidChangeActiveNotebookEditor: Event<vscode.NotebookEditor | undefined>;
onDidChangeNotebookEditorSelection: Event<vscode.NotebookEditorSelectionChangeEvent>;
onDidChangeNotebookEditorVisibleRanges: Event<vscode.NotebookEditorVisibleRangesChangeEvent>;
}) = {
get onDidOpenNotebookDocument(): Event<vscode.NotebookDocument> { get onDidOpenNotebookDocument(): Event<vscode.NotebookDocument> {
checkProposedApiEnabled(extension); checkProposedApiEnabled(extension);
return extHostNotebook.onDidOpenNotebookDocument; return extHostNotebook.onDidOpenNotebookDocument;
...@@ -942,7 +974,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I ...@@ -942,7 +974,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
checkProposedApiEnabled(extension); checkProposedApiEnabled(extension);
return extHostNotebook.notebookDocuments.map(d => d.notebookDocument); return extHostNotebook.notebookDocuments.map(d => d.notebookDocument);
}, },
get visibleNotebookEditors() { get visibleNotebookEditors(): vscode.NotebookEditor[] {
checkProposedApiEnabled(extension); checkProposedApiEnabled(extension);
return extHostNotebook.visibleNotebookEditors; return extHostNotebook.visibleNotebookEditors;
}, },
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册