| Index: Source/core/html/canvas/CanvasContextCreationAttributes.idl
|
| diff --git a/Source/core/html/canvas/CanvasContextCreationAttributes.idl b/Source/core/html/canvas/CanvasContextCreationAttributes.idl
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3d5a8f2466475b5a5f5667394cfafc3fbf1d57c7
|
| --- /dev/null
|
| +++ b/Source/core/html/canvas/CanvasContextCreationAttributes.idl
|
| @@ -0,0 +1,36 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// The spec for HTMLCanvasElement.getContext() defines the context
|
| +// creation attributes as type "any". In order to eliminate custom
|
| +// bindings for getContext(), we define a dictionary that contains the
|
| +// union of all of the context types' attributes. Note that it is not
|
| +// possible to use a union type for this purpose because two dictionary
|
| +// types are not distinguishable.
|
| +//
|
| +// Fortunately, there aren't any context creation attributes which are
|
| +// defined with different default values in different context
|
| +// specifications. (The "alpha" value, in particular, has a default
|
| +// value of true for both the Canvas2D and WebGL specifications.)
|
| +//
|
| +// The PermissiveDictionaryConversion extended attribute ignores
|
| +// non-object types (like 'true' and 'false') passed to getContext() for
|
| +// the attributes instead of raising TypeError, following the behavior
|
| +// of the previous custom binding.
|
| +//
|
| +// N.B.: Web IDL doesn't support multiple inheritance of dictionaries.
|
| +
|
| +[PermissiveDictionaryConversion]
|
| +dictionary CanvasContextCreationAttributes {
|
| + // Canvas 2D attributes
|
| + boolean alpha = true; // Also used for WebGL.
|
| +
|
| + // WebGL attributes
|
| + boolean depth = true;
|
| + boolean stencil = false;
|
| + boolean antialias = true;
|
| + boolean premultipliedAlpha = true;
|
| + boolean preserveDrawingBuffer = false;
|
| + boolean failIfMajorPerformanceCaveat = false;
|
| +};
|
|
|