[WPE][GTK] Build failure with ENABLE_ACCESSIBILITY=OFF
[WebKit-https.git] / Source / WebCore / html / OffscreenCanvas.idl
1 /*
2 * Copyright (C) 2017 Apple Inc. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 *    notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright
10 *    notice, this list of conditions and the following disclaimer in the
11 *    documentation and/or other materials provided with the distribution.
12 *
13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23 * THE POSSIBILITY OF SUCH DAMAGE.
24 */
25
26 // typedef (OffscreenCanvasRenderingContext2D or WebGLRenderingContext) OffscreenRenderingContext;
27
28 dictionary ImageEncodeOptions
29 {
30    DOMString type = "image/png";
31    unrestricted double quality = 1.0;
32 };
33
34 enum OffscreenRenderingContextType
35 {
36    "2d",
37    "webgl"
38 };
39
40 [
41     ConstructorCallWith=ScriptExecutionContext,
42     Constructor([EnforceRange] unsigned long width, [EnforceRange] unsigned long height),
43     GenerateIsReachable=Impl,
44     EnabledAtRuntime=ImageBitmapOffscreenCanvas,
45     Exposed=(Window)
46 ] interface OffscreenCanvas : EventTarget {
47     attribute [EnforceRange] unsigned long width;
48     attribute [EnforceRange] unsigned long height;
49
50     [CallWith=ExecState, MayThrowException, Conditional=WEBGL] WebGLRenderingContext? getContext(OffscreenRenderingContextType contextType, any... arguments);
51     ImageBitmap transferToImageBitmap();
52     // Promise<Blob> convertToBlob(optional ImageEncodeOptions options);
53
54 };