fune/servo/components/script/dom/webidls/HTMLCanvasElement.webidl
Scott Trinh b6679f499f servo: Merge #13747 - Partial fix for #12415: expose Canvas interfaces (from scotttrinh:canvas-webidl); r=Ms2ger
<!-- Please describe your changes on the following line: -->
Fix interface exposure per [the specs](https://html.spec.whatwg.org/multipage/scripting.html#2dcontext).

One lingering question I have is if [`CanvasPath`](https://html.spec.whatwg.org/multipage/scripting.html#canvaspath) needs to be added to `interfaces.worker.js` since it *is* exposed to the `Worker` environment. I tried adding it to the `interfaces.worker.js` list but it failed tests at https://github.com/servo/servo/blob/master/tests/wpt/mozilla/tests/mozilla/interfaces.js#L82

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes contain a partial fix for #12415 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 97bcd97ebd7705df8d4d141d18e79073f71b2ba2
2016-10-16 00:18:09 -05:00

23 lines
897 B
Text

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
// https://html.spec.whatwg.org/multipage/#htmlcanvaselement
typedef (CanvasRenderingContext2D or WebGLRenderingContext) RenderingContext;
interface HTMLCanvasElement : HTMLElement {
[Pure]
attribute unsigned long width;
[Pure]
attribute unsigned long height;
RenderingContext? getContext(DOMString contextId, any... arguments);
//boolean probablySupportsContext(DOMString contextId, any... arguments);
//void setContext(RenderingContext context);
//CanvasProxy transferControlToProxy();
[Throws]
DOMString toDataURL(optional DOMString type, any... arguments);
//void toBlob(FileCallback? _callback, optional DOMString type, any... arguments);
};