[whatwg] [canvas] Proposal for supportsContext

Tobie Langel tobie.langel at gmail.com
Mon Sep 10 12:44:09 PDT 2012


On Sep 10, 2012, at 9:32 PM, Dean Jackson <dino at apple.com> wrote:

>
> On Sep 10, 2012, at 12:28 PM, Tobie Langel <tobie.langel at gmail.com> wrote:
>
>> On Sep 10, 2012, at 8:14 PM, Dean Jackson <dino at apple.com> wrote:
>>
>>> I propose adding a new method to HTMLCanvasElement:
>>>
>>> interface HTMLCanvasElement : HTMLElement {
>>> boolean supportsContext(DOMString contextId, any... arguments);
>>> };
>>>
>>> supportsContext takes the same parameters as getContext, and simply returns
>>> true if the corresponding call to getContext would have returned a valid
>>> context, false otherwise.
>>
>> What about enabling feature detection by providing a method per context?
>>
>> interface HTMLCanvasElement : HTMLElement {
>> object get2DContext();
>> object getWebGLContext(any... args);
>> };
>>
>> That way, developers can use idiomatic JS for feature testing like
>> pretty much everywhere else on the Web platform:
>>
>> if (canvas.get2DContext) {
>> // do stuff with 2D canvas
>> }
>
> This doesn't address the problem we are hitting, which is that
> it is expensive to create a context.

It does. Only expose the API when you can create the context.

> It's also a big change to
> an existing operational API.

Agreed. You can always leave the previous method around for backward
compatibility.

--tobie


More information about the whatwg mailing list