mirror of
https://github.com/coder/code-server.git
synced 2026-05-08 05:17:27 +02:00
chore(vscode): update to 1.54.2
This commit is contained in:
@@ -3,15 +3,15 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import { WebContents, webContents } from 'electron';
|
||||
import { VSBuffer } from 'vs/base/common/buffer';
|
||||
import { session, WebContents, webContents } from 'electron';
|
||||
import { Disposable } from 'vs/base/common/lifecycle';
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { IFileService } from 'vs/platform/files/common/files';
|
||||
import { ILogService } from 'vs/platform/log/common/log';
|
||||
import { ITunnelService } from 'vs/platform/remote/common/tunnel';
|
||||
import { IRequestService } from 'vs/platform/request/common/request';
|
||||
import { IWebviewManagerService, RegisterWebviewMetadata, WebviewWebContentsId, WebviewWindowId } from 'vs/platform/webview/common/webviewManagerService';
|
||||
import { webviewPartitionId } from 'vs/platform/webview/common/resourceLoader';
|
||||
import { IWebviewManagerService, RegisterWebviewMetadata, WebviewManagerDidLoadResourceResponse, WebviewManagerDidLoadResourceResponseDetails, WebviewWebContentsId, WebviewWindowId } from 'vs/platform/webview/common/webviewManagerService';
|
||||
import { WebviewPortMappingProvider } from 'vs/platform/webview/electron-main/webviewPortMappingProvider';
|
||||
import { WebviewProtocolProvider } from 'vs/platform/webview/electron-main/webviewProtocolProvider';
|
||||
import { IWindowsMainService } from 'vs/platform/windows/electron-main/windows';
|
||||
@@ -33,6 +33,19 @@ export class WebviewMainService extends Disposable implements IWebviewManagerSer
|
||||
super();
|
||||
this.protocolProvider = this._register(new WebviewProtocolProvider(fileService, logService, requestService, windowsMainService));
|
||||
this.portMappingProvider = this._register(new WebviewPortMappingProvider(tunnelService));
|
||||
|
||||
const sess = session.fromPartition(webviewPartitionId);
|
||||
sess.setPermissionRequestHandler((_webContents, permission, callback) => {
|
||||
if (permission === 'clipboard-read') {
|
||||
return callback(true);
|
||||
}
|
||||
|
||||
return callback(false);
|
||||
});
|
||||
|
||||
sess.setPermissionCheckHandler((_webContents, permission /* 'media' */) => {
|
||||
return permission === 'clipboard-read';
|
||||
});
|
||||
}
|
||||
|
||||
public async registerWebview(id: string, windowId: number, metadata: RegisterWebviewMetadata): Promise<void> {
|
||||
@@ -78,7 +91,7 @@ export class WebviewMainService extends Disposable implements IWebviewManagerSer
|
||||
if (typeof (id as WebviewWindowId).windowId === 'number') {
|
||||
const { windowId } = (id as WebviewWindowId);
|
||||
const window = this.windowsMainService.getWindowById(windowId);
|
||||
if (!window) {
|
||||
if (!window?.win) {
|
||||
throw new Error(`Invalid windowId: ${windowId}`);
|
||||
}
|
||||
contents = window.win.webContents;
|
||||
@@ -95,7 +108,11 @@ export class WebviewMainService extends Disposable implements IWebviewManagerSer
|
||||
}
|
||||
}
|
||||
|
||||
public async didLoadResource(requestId: number, content: VSBuffer | undefined): Promise<void> {
|
||||
this.protocolProvider.didLoadResource(requestId, content);
|
||||
public async didLoadResource(
|
||||
requestId: number,
|
||||
response: WebviewManagerDidLoadResourceResponse,
|
||||
responseDetails?: WebviewManagerDidLoadResourceResponseDetails,
|
||||
): Promise<void> {
|
||||
this.protocolProvider.didLoadResource(requestId, response, responseDetails);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user