Add support for running remote extensions in the local web worker extension host (#141322)

This commit is contained in:
Alex Dima
2022-02-22 12:55:30 +01:00
parent daf029dfac
commit 32b031eeef
8 changed files with 68 additions and 25 deletions

View File

@@ -1041,6 +1041,7 @@ export interface MainThreadExtensionServiceShape extends IDisposable {
$onExtensionActivationError(extensionId: ExtensionIdentifier, error: SerializedError, missingExtensionDependency: MissingExtensionDependency | null): Promise<void>;
$onExtensionRuntimeError(extensionId: ExtensionIdentifier, error: SerializedError): void;
$setPerformanceMarks(marks: performance.PerformanceMark[]): Promise<void>;
$asBrowserUri(uri: UriComponents): Promise<UriComponents>;
}
export interface SCMProviderFeatures {

View File

@@ -119,6 +119,11 @@ export class ExtensionHostMain {
});
}
async asBrowserUri(uri: URI): Promise<URI> {
const mainThreadExtensionsProxy = this._rpcProtocol.getProxy(MainContext.MainThreadExtensionService);
return URI.revive(await mainThreadExtensionsProxy.$asBrowserUri(uri));
}
terminate(reason: string): void {
if (this._isTerminating) {
// we are already shutting down...