mirror of
https://github.com/denoland/deno.git
synced 2024-12-23 15:49:44 -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",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3139,
|
||||
"line": 3165,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3139,
|
||||
"line": 3165,
|
||||
"character": 55
|
||||
}
|
||||
}
|
||||
|
@ -9114,11 +9114,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3309,
|
||||
"line": 3335,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3309,
|
||||
"line": 3335,
|
||||
"character": 47
|
||||
}
|
||||
}
|
||||
|
@ -9150,11 +9150,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3117,
|
||||
"line": 3143,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3120,
|
||||
"line": 3146,
|
||||
"character": 26
|
||||
}
|
||||
}
|
||||
|
@ -9168,11 +9168,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3287,
|
||||
"line": 3313,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3290,
|
||||
"line": 3316,
|
||||
"character": 26
|
||||
}
|
||||
}
|
||||
|
@ -9186,11 +9186,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3413,
|
||||
"line": 3439,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3413,
|
||||
"line": 3439,
|
||||
"character": 39
|
||||
}
|
||||
}
|
||||
|
@ -9204,11 +9204,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3576,
|
||||
"line": 3602,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3576,
|
||||
"line": 3602,
|
||||
"character": 43
|
||||
}
|
||||
}
|
||||
|
@ -9222,11 +9222,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3625,
|
||||
"line": 3651,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3625,
|
||||
"line": 3651,
|
||||
"character": 39
|
||||
}
|
||||
}
|
||||
|
@ -9240,11 +9240,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3744,
|
||||
"line": 3770,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3744,
|
||||
"line": 3770,
|
||||
"character": 39
|
||||
}
|
||||
}
|
||||
|
@ -9258,11 +9258,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3897,
|
||||
"line": 3923,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3897,
|
||||
"line": 3923,
|
||||
"character": 39
|
||||
}
|
||||
}
|
||||
|
@ -9276,11 +9276,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 4056,
|
||||
"line": 4082,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 4056,
|
||||
"line": 4082,
|
||||
"character": 43
|
||||
}
|
||||
}
|
||||
|
@ -9294,11 +9294,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3140,
|
||||
"line": 3166,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3143,
|
||||
"line": 3169,
|
||||
"character": 31
|
||||
}
|
||||
}
|
||||
|
@ -9312,11 +9312,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3310,
|
||||
"line": 3336,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3313,
|
||||
"line": 3339,
|
||||
"character": 31
|
||||
}
|
||||
}
|
||||
|
@ -9330,11 +9330,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3125,
|
||||
"line": 3151,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3128,
|
||||
"line": 3154,
|
||||
"character": 30
|
||||
}
|
||||
}
|
||||
|
@ -9348,11 +9348,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3295,
|
||||
"line": 3321,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3298,
|
||||
"line": 3324,
|
||||
"character": 30
|
||||
}
|
||||
}
|
||||
|
@ -9366,11 +9366,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3329,
|
||||
"line": 3355,
|
||||
"character": 2
|
||||
},
|
||||
"end": {
|
||||
"line": 3334,
|
||||
"line": 3360,
|
||||
"character": 4
|
||||
}
|
||||
}
|
||||
|
@ -9384,11 +9384,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3440,
|
||||
"line": 3466,
|
||||
"character": 2
|
||||
},
|
||||
"end": {
|
||||
"line": 3451,
|
||||
"line": 3477,
|
||||
"character": 4
|
||||
}
|
||||
}
|
||||
|
@ -9402,11 +9402,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3645,
|
||||
"line": 3671,
|
||||
"character": 2
|
||||
},
|
||||
"end": {
|
||||
"line": 3652,
|
||||
"line": 3678,
|
||||
"character": 4
|
||||
}
|
||||
}
|
||||
|
@ -9420,11 +9420,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3121,
|
||||
"line": 3147,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3124,
|
||||
"line": 3150,
|
||||
"character": 31
|
||||
}
|
||||
}
|
||||
|
@ -9438,11 +9438,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3291,
|
||||
"line": 3317,
|
||||
"character": 4
|
||||
},
|
||||
"end": {
|
||||
"line": 3294,
|
||||
"line": 3320,
|
||||
"character": 31
|
||||
}
|
||||
}
|
||||
|
@ -9456,11 +9456,11 @@ fn lsp_workspace_symbol() {
|
|||
"uri": "deno:/asset/lib.deno.unstable.d.ts",
|
||||
"range": {
|
||||
"start": {
|
||||
"line": 3926,
|
||||
"line": 3952,
|
||||
"character": 2
|
||||
},
|
||||
"end": {
|
||||
"line": 3939,
|
||||
"line": 3965,
|
||||
"character": 4
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// 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;
|
||||
try {
|
||||
|
@ -227,6 +227,15 @@ Deno.test({
|
|||
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() {
|
||||
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 lib="deno.ns" />
|
||||
/// <reference lib="deno.broadcast_channel" />
|
||||
/// <reference lib="deno.webgpu" />
|
||||
/// <reference lib="esnext" />
|
||||
/// <reference lib="es2022.intl" />
|
||||
|
||||
|
@ -764,6 +765,31 @@ declare namespace Deno {
|
|||
symbols: Const<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.
|
||||
*
|
||||
* 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 */
|
||||
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