mirror of
https://github.com/denoland/deno.git
synced 2024-12-25 00:29:09 -05:00
chore: add types for Deno.UnsafeWindowSurface
(#22010)
This commit is contained in:
parent
692738232b
commit
1b9f0cb452
4 changed files with 95 additions and 41 deletions
|
@ -9096,11 +9096,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3139,
|
"line": 3165,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3139,
|
"line": 3165,
|
||||||
"character": 55
|
"character": 55
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9114,11 +9114,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3309,
|
"line": 3335,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3309,
|
"line": 3335,
|
||||||
"character": 47
|
"character": 47
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9150,11 +9150,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3117,
|
"line": 3143,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3120,
|
"line": 3146,
|
||||||
"character": 26
|
"character": 26
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9168,11 +9168,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3287,
|
"line": 3313,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3290,
|
"line": 3316,
|
||||||
"character": 26
|
"character": 26
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9186,11 +9186,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3413,
|
"line": 3439,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3413,
|
"line": 3439,
|
||||||
"character": 39
|
"character": 39
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9204,11 +9204,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3576,
|
"line": 3602,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3576,
|
"line": 3602,
|
||||||
"character": 43
|
"character": 43
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9222,11 +9222,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3625,
|
"line": 3651,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3625,
|
"line": 3651,
|
||||||
"character": 39
|
"character": 39
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9240,11 +9240,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3744,
|
"line": 3770,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3744,
|
"line": 3770,
|
||||||
"character": 39
|
"character": 39
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9258,11 +9258,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3897,
|
"line": 3923,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3897,
|
"line": 3923,
|
||||||
"character": 39
|
"character": 39
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9276,11 +9276,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 4056,
|
"line": 4082,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 4056,
|
"line": 4082,
|
||||||
"character": 43
|
"character": 43
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9294,11 +9294,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3140,
|
"line": 3166,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3143,
|
"line": 3169,
|
||||||
"character": 31
|
"character": 31
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9312,11 +9312,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3310,
|
"line": 3336,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3313,
|
"line": 3339,
|
||||||
"character": 31
|
"character": 31
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9330,11 +9330,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3125,
|
"line": 3151,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3128,
|
"line": 3154,
|
||||||
"character": 30
|
"character": 30
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9348,11 +9348,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3295,
|
"line": 3321,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3298,
|
"line": 3324,
|
||||||
"character": 30
|
"character": 30
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9366,11 +9366,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3329,
|
"line": 3355,
|
||||||
"character": 2
|
"character": 2
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3334,
|
"line": 3360,
|
||||||
"character": 4
|
"character": 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9384,11 +9384,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3440,
|
"line": 3466,
|
||||||
"character": 2
|
"character": 2
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3451,
|
"line": 3477,
|
||||||
"character": 4
|
"character": 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9402,11 +9402,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3645,
|
"line": 3671,
|
||||||
"character": 2
|
"character": 2
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3652,
|
"line": 3678,
|
||||||
"character": 4
|
"character": 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9420,11 +9420,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3121,
|
"line": 3147,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3124,
|
"line": 3150,
|
||||||
"character": 31
|
"character": 31
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9438,11 +9438,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3291,
|
"line": 3317,
|
||||||
"character": 4
|
"character": 4
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3294,
|
"line": 3320,
|
||||||
"character": 31
|
"character": 31
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9456,11 +9456,11 @@ fn lsp_workspace_symbol() {
|
||||||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||||
"range": {
|
"range": {
|
||||||
"start": {
|
"start": {
|
||||||
"line": 3926,
|
"line": 3952,
|
||||||
"character": 2
|
"character": 2
|
||||||
},
|
},
|
||||||
"end": {
|
"end": {
|
||||||
"line": 3939,
|
"line": 3965,
|
||||||
"character": 4
|
"character": 4
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
||||||
|
|
||||||
import { assert, assertEquals } from "./test_util.ts";
|
import { assert, assertEquals, assertThrows } from "./test_util.ts";
|
||||||
|
|
||||||
let isCI: boolean;
|
let isCI: boolean;
|
||||||
try {
|
try {
|
||||||
|
@ -227,6 +227,15 @@ Deno.test({
|
||||||
Deno.close(Number(resources[resources.length - 1]));
|
Deno.close(Number(resources[resources.length - 1]));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Deno.test(function webgpuNullWindowSurfaceThrows() {
|
||||||
|
assertThrows(
|
||||||
|
() => {
|
||||||
|
// @ts-expect-error: runtime test for null handle
|
||||||
|
new Deno.UnsafeWindowSurface("cocoa", null, null);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
async function checkIsWsl() {
|
async function checkIsWsl() {
|
||||||
return Deno.build.os === "linux" && await hasMicrosoftProcVersion();
|
return Deno.build.os === "linux" && await hasMicrosoftProcVersion();
|
||||||
|
|
||||||
|
|
26
cli/tsc/dts/lib.deno.unstable.d.ts
vendored
26
cli/tsc/dts/lib.deno.unstable.d.ts
vendored
|
@ -3,6 +3,7 @@
|
||||||
/// <reference no-default-lib="true" />
|
/// <reference no-default-lib="true" />
|
||||||
/// <reference lib="deno.ns" />
|
/// <reference lib="deno.ns" />
|
||||||
/// <reference lib="deno.broadcast_channel" />
|
/// <reference lib="deno.broadcast_channel" />
|
||||||
|
/// <reference lib="deno.webgpu" />
|
||||||
/// <reference lib="esnext" />
|
/// <reference lib="esnext" />
|
||||||
/// <reference lib="es2022.intl" />
|
/// <reference lib="es2022.intl" />
|
||||||
|
|
||||||
|
@ -764,6 +765,31 @@ declare namespace Deno {
|
||||||
symbols: Const<S>,
|
symbols: Const<S>,
|
||||||
): DynamicLibrary<S>;
|
): DynamicLibrary<S>;
|
||||||
|
|
||||||
|
/** **UNSTABLE**: New API, yet to be vetted.
|
||||||
|
*
|
||||||
|
* Creates a presentable WebGPU surface from given window and
|
||||||
|
* display handles.
|
||||||
|
*
|
||||||
|
* The parameters correspond to the table below:
|
||||||
|
*
|
||||||
|
* | system | winHandle | displayHandle |
|
||||||
|
* | ----------------- | ------------- | --------------- |
|
||||||
|
* | "cocoa" (macOS) | `NSView*` | - |
|
||||||
|
* | "win32" (Windows) | `HWND` | `HINSTANCE` |
|
||||||
|
* | "x11" (Linux) | Xlib `Window` | Xlib `Display*` |
|
||||||
|
*
|
||||||
|
* @category WebGPU
|
||||||
|
*/
|
||||||
|
export class UnsafeWindowSurface {
|
||||||
|
constructor(
|
||||||
|
system: "cocoa" | "win32" | "x11",
|
||||||
|
windowHandle: UnsafePointerView,
|
||||||
|
displayHandle: UnsafePointerView | null,
|
||||||
|
);
|
||||||
|
getContext(context: "webgpu"): GPUCanvasContext;
|
||||||
|
present(): void;
|
||||||
|
}
|
||||||
|
|
||||||
/** **UNSTABLE**: New API, yet to be vetted.
|
/** **UNSTABLE**: New API, yet to be vetted.
|
||||||
*
|
*
|
||||||
* These are unstable options which can be used with {@linkcode Deno.run}.
|
* These are unstable options which can be used with {@linkcode Deno.run}.
|
||||||
|
|
19
cli/tsc/dts/lib.deno_webgpu.d.ts
vendored
19
cli/tsc/dts/lib.deno_webgpu.d.ts
vendored
|
@ -1313,3 +1313,22 @@ declare interface GPUExtent3DDict {
|
||||||
|
|
||||||
/** @category WebGPU */
|
/** @category WebGPU */
|
||||||
declare type GPUExtent3D = number[] | GPUExtent3DDict;
|
declare type GPUExtent3D = number[] | GPUExtent3DDict;
|
||||||
|
|
||||||
|
/** @category WebGPU */
|
||||||
|
declare type GPUCanvasAlphaMode = "opaque" | "premultiplied";
|
||||||
|
|
||||||
|
/** @category WebGPU */
|
||||||
|
declare interface GPUCanvasConfiguration {
|
||||||
|
device: GPUDevice;
|
||||||
|
format: GPUTextureFormat;
|
||||||
|
usage?: GPUTextureUsageFlags;
|
||||||
|
viewFormats?: GPUTextureFormat[];
|
||||||
|
colorSpace?: "srgb" | "display-p3";
|
||||||
|
alphaMode?: GPUCanvasAlphaMode;
|
||||||
|
}
|
||||||
|
/** @category WebGPU */
|
||||||
|
declare interface GPUCanvasContext {
|
||||||
|
configure(configuration: GPUCanvasConfiguration): undefined;
|
||||||
|
unconfigure(): undefined;
|
||||||
|
getCurrentTexture(): GPUTexture;
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue