mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-23 01:58:53 +01:00
add ICellDto, use UriComponents
This commit is contained in:
@@ -261,13 +261,13 @@ export class MainThreadNotebooks extends Disposable implements MainThreadNoteboo
|
||||
}
|
||||
}
|
||||
|
||||
async $updateNotebook(viewType: string, resource: UriComponents, notebook: INotebook): Promise<void> {
|
||||
let controller = this._notebookProviders.get(viewType);
|
||||
// async $updateNotebook(viewType: string, resource: UriComponents, notebook: INotebookDto): Promise<void> {
|
||||
// let controller = this._notebookProviders.get(viewType);
|
||||
|
||||
if (controller) {
|
||||
controller.updateNotebook(resource, notebook);
|
||||
}
|
||||
}
|
||||
// if (controller) {
|
||||
// controller.updateNotebook(resource, notebook);
|
||||
// }
|
||||
// }
|
||||
|
||||
async resolveNotebook(viewType: string, uri: URI): Promise<number | undefined> {
|
||||
let handle = await this._proxy.$resolveNotebook(viewType, uri);
|
||||
|
||||
@@ -50,7 +50,7 @@ import { ExtensionActivationReason } from 'vs/workbench/api/common/extHostExtens
|
||||
import { TunnelDto } from 'vs/workbench/api/common/extHostTunnelService';
|
||||
import { TunnelOptions } from 'vs/platform/remote/common/tunnel';
|
||||
import { TimelineItem, TimelineProviderDescriptor, TimelineChangeEvent, TimelineItemWithSource } from 'vs/workbench/contrib/timeline/common/timeline';
|
||||
import { INotebook, ICell, INotebookMimeTypeSelector } from 'vs/workbench/contrib/notebook/common/notebookCommon';
|
||||
import { INotebookMimeTypeSelector, IOutput } from 'vs/workbench/contrib/notebook/common/notebookCommon';
|
||||
|
||||
export interface IEnvironment {
|
||||
isExtensionDevelopmentDebug: boolean;
|
||||
@@ -625,15 +625,33 @@ export interface ExtHostWebviewsShape {
|
||||
$backup(resource: UriComponents, viewType: string, cancellation: CancellationToken): Promise<boolean>;
|
||||
}
|
||||
|
||||
// export interface INotebookDto {
|
||||
// handle: number;
|
||||
// // metadata: IMetadata;
|
||||
// readonly uri: UriComponents;
|
||||
// languages: string[];
|
||||
// cells: ICellDto[];
|
||||
// renderers: Set<number>;
|
||||
// }
|
||||
|
||||
export interface ICellDto {
|
||||
handle: number;
|
||||
source: string[];
|
||||
language: string;
|
||||
cell_type: 'markdown' | 'code';
|
||||
outputs: IOutput[];
|
||||
isDirty: boolean;
|
||||
}
|
||||
|
||||
export interface MainThreadNotebookShape extends IDisposable {
|
||||
$registerNotebookProvider(extension: NotebookExtensionDescription, viewType: string): Promise<void>;
|
||||
$unregisterNotebookProvider(viewType: string): Promise<void>;
|
||||
$registerNotebookRenderer(extension: NotebookExtensionDescription, selectors: INotebookMimeTypeSelector, handle: number, preloads: UriComponents[]): Promise<void>;
|
||||
$unregisterNotebookRenderer(handle: number): Promise<void>;
|
||||
$createNotebookDocument(handle: number, viewType: string, resource: UriComponents): Promise<void>;
|
||||
$updateNotebook(viewType: string, resource: UriComponents, notebook: INotebook): Promise<void>;
|
||||
$updateNotebookCells(viewType: string, resource: UriComponents, cells: ICell[], renderers: number[]): Promise<void>;
|
||||
$updateNotebookCell(viewType: string, resource: UriComponents, cell: ICell, renderers: number[]): Promise<void>;
|
||||
// $updateNotebook(viewType: string, resource: UriComponents, notebook: INotebookDto): Promise<void>;
|
||||
$updateNotebookCells(viewType: string, resource: UriComponents, cells: ICellDto[], renderers: number[]): Promise<void>;
|
||||
$updateNotebookCell(viewType: string, resource: UriComponents, cell: ICellDto, renderers: number[]): Promise<void>;
|
||||
$updateNotebookLanguages(viewType: string, resource: UriComponents, languages: string[]): Promise<void>;
|
||||
}
|
||||
|
||||
@@ -1456,15 +1474,15 @@ export interface ExtHostCommentsShape {
|
||||
}
|
||||
|
||||
export interface ExtHostNotebookShape {
|
||||
$resolveNotebook(viewType: string, uri: URI): Promise<number | undefined>;
|
||||
$executeNotebook(viewType: string, uri: URI): Promise<void>;
|
||||
$executeNotebookCell(viewType: string, uri: URI, cellHandle: number): Promise<void>;
|
||||
$resolveNotebook(viewType: string, uri: UriComponents): Promise<number | undefined>;
|
||||
$executeNotebook(viewType: string, uri: UriComponents): Promise<void>;
|
||||
$executeNotebookCell(viewType: string, uri: UriComponents, cellHandle: number): Promise<void>;
|
||||
$latexRenderer(viewType: string, value: string): Promise<IMarkdownString | undefined>;
|
||||
$createRawCell(viewType: string, uri: URI, index: number, language: string, type: 'markdown' | 'code'): Promise<ICell | undefined>;
|
||||
$deleteCell(viewType: string, uri: URI, index: number): Promise<boolean>;
|
||||
$saveNotebook(viewType: string, uri: URI): Promise<boolean>;
|
||||
$updateActiveEditor(viewType: string, uri: URI): Promise<void>;
|
||||
$destoryNotebookDocument(viewType: string, uri: URI): Promise<boolean>;
|
||||
$createRawCell(viewType: string, uri: UriComponents, index: number, language: string, type: 'markdown' | 'code'): Promise<ICellDto | undefined>;
|
||||
$deleteCell(viewType: string, uri: UriComponents, index: number): Promise<boolean>;
|
||||
$saveNotebook(viewType: string, uri: UriComponents): Promise<boolean>;
|
||||
$updateActiveEditor(viewType: string, uri: UriComponents): Promise<void>;
|
||||
$destoryNotebookDocument(viewType: string, uri: UriComponents): Promise<boolean>;
|
||||
}
|
||||
|
||||
export interface ExtHostStorageShape {
|
||||
|
||||
@@ -7,7 +7,7 @@ import * as vscode from 'vscode';
|
||||
import { ExtHostNotebookShape, IMainContext, MainThreadNotebookShape, MainContext } from 'vs/workbench/api/common/extHost.protocol';
|
||||
import { IExtensionDescription } from 'vs/platform/extensions/common/extensions';
|
||||
import { Disposable as VSCodeDisposable } from './extHostTypes';
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { URI, UriComponents } from 'vs/base/common/uri';
|
||||
import { DisposableStore } from 'vs/base/common/lifecycle';
|
||||
import { readonly } from 'vs/base/common/errors';
|
||||
import { Emitter, Event } from 'vs/base/common/event';
|
||||
@@ -431,7 +431,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
});
|
||||
}
|
||||
|
||||
async $resolveNotebook(viewType: string, uri: URI): Promise<number | undefined> {
|
||||
async $resolveNotebook(viewType: string, uri: UriComponents): Promise<number | undefined> {
|
||||
let provider = this._notebookProviders.get(viewType);
|
||||
|
||||
if (provider) {
|
||||
@@ -450,7 +450,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
viewType,
|
||||
// this._proxy,
|
||||
`${ExtHostNotebookController._handlePool++}`,
|
||||
uri,
|
||||
URI.revive(uri),
|
||||
this._documents.get(URI.revive(uri).toString())!,
|
||||
// this._documentsProxy,
|
||||
this._documentsAndEditors
|
||||
@@ -465,7 +465,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
return Promise.resolve(undefined);
|
||||
}
|
||||
|
||||
async $executeNotebook(viewType: string, uri: URI): Promise<void> {
|
||||
async $executeNotebook(viewType: string, uri: UriComponents): Promise<void> {
|
||||
let provider = this._notebookProviders.get(viewType);
|
||||
|
||||
if (provider) {
|
||||
@@ -475,7 +475,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
}
|
||||
}
|
||||
|
||||
async $executeNotebookCell(viewType: string, uri: URI, cellHandle: number): Promise<void> {
|
||||
async $executeNotebookCell(viewType: string, uri: UriComponents, cellHandle: number): Promise<void> {
|
||||
let provider = this._notebookProviders.get(viewType);
|
||||
|
||||
if (provider) {
|
||||
@@ -521,7 +521,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
return;
|
||||
}
|
||||
|
||||
async $deleteCell(viewType: string, uri: URI, index: number): Promise<boolean> {
|
||||
async $deleteCell(viewType: string, uri: UriComponents, index: number): Promise<boolean> {
|
||||
let provider = this._notebookProviders.get(viewType);
|
||||
|
||||
if (provider) {
|
||||
@@ -537,7 +537,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
return false;
|
||||
}
|
||||
|
||||
async $saveNotebook(viewType: string, uri: URI): Promise<boolean> {
|
||||
async $saveNotebook(viewType: string, uri: UriComponents): Promise<boolean> {
|
||||
let provider = this._notebookProviders.get(viewType);
|
||||
let document = this._documents.get(URI.revive(uri).toString());
|
||||
|
||||
@@ -548,7 +548,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
return false;
|
||||
}
|
||||
|
||||
async $updateActiveEditor(viewType: string, uri: URI): Promise<void> {
|
||||
async $updateActiveEditor(viewType: string, uri: UriComponents): Promise<void> {
|
||||
let document = this._documents.get(URI.revive(uri).toString());
|
||||
|
||||
if (document) {
|
||||
@@ -558,7 +558,7 @@ export class ExtHostNotebookController implements ExtHostNotebookShape, ExtHostN
|
||||
}
|
||||
}
|
||||
|
||||
async $destoryNotebookDocument(viewType: string, uri: URI): Promise<boolean> {
|
||||
async $destoryNotebookDocument(viewType: string, uri: UriComponents): Promise<boolean> {
|
||||
let provider = this._notebookProviders.get(viewType);
|
||||
|
||||
if (provider) {
|
||||
|
||||
Reference in New Issue
Block a user