mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Auto merge of #23381 - maharsh312:master, r=jdm
Canvas Components for OffscreenCanvas <!-- Please describe your changes on the following line: --> --- <!-- 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 - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [X] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23381) <!-- Reviewable:end -->
This commit is contained in:
commit
8dc7a25893
257 changed files with 1857 additions and 1870 deletions
|
@ -3,7 +3,7 @@
|
|||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#canvasgradient
|
||||
[Exposed=(Window, PaintWorklet)]
|
||||
[Exposed=(Window, PaintWorklet, Worker)]
|
||||
interface CanvasGradient {
|
||||
// opaque object
|
||||
[Throws]
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#canvaspattern
|
||||
[Exposed=(Window, PaintWorklet)]
|
||||
[Exposed=(Window, PaintWorklet, Worker)]
|
||||
interface CanvasPattern {
|
||||
//void setTransform(SVGMatrix matrix);
|
||||
};
|
||||
|
|
|
@ -39,14 +39,14 @@ CanvasRenderingContext2D implements CanvasPathDrawingStyles;
|
|||
CanvasRenderingContext2D implements CanvasTextDrawingStyles;
|
||||
CanvasRenderingContext2D implements CanvasPath;
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasState {
|
||||
// state
|
||||
void save(); // push state on state stack
|
||||
void restore(); // pop state stack and restore state
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasTransform {
|
||||
// transformations (default transform is the identity matrix)
|
||||
void scale(unrestricted double x, unrestricted double y);
|
||||
|
@ -70,21 +70,21 @@ interface CanvasTransform {
|
|||
void resetTransform();
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasCompositing {
|
||||
// compositing
|
||||
attribute unrestricted double globalAlpha; // (default 1.0)
|
||||
attribute DOMString globalCompositeOperation; // (default source-over)
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasImageSmoothing {
|
||||
// image smoothing
|
||||
attribute boolean imageSmoothingEnabled; // (default true)
|
||||
// attribute ImageSmoothingQuality imageSmoothingQuality; // (default low)
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasFillStrokeStyles {
|
||||
// colours and styles (see also the CanvasDrawingStyles interface)
|
||||
attribute (DOMString or CanvasGradient or CanvasPattern) strokeStyle; // (default black)
|
||||
|
@ -96,7 +96,7 @@ interface CanvasFillStrokeStyles {
|
|||
CanvasPattern createPattern(CanvasImageSource image, [TreatNullAs=EmptyString] DOMString repetition);
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasShadowStyles {
|
||||
// shadows
|
||||
attribute unrestricted double shadowOffsetX; // (default 0)
|
||||
|
@ -105,7 +105,7 @@ interface CanvasShadowStyles {
|
|||
attribute DOMString shadowColor; // (default transparent black)
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasFilters {
|
||||
// filters
|
||||
//attribute DOMString filter; // (default "none")
|
||||
|
@ -119,7 +119,7 @@ interface CanvasRect {
|
|||
void strokeRect(unrestricted double x, unrestricted double y, unrestricted double w, unrestricted double h);
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasDrawPath {
|
||||
// path API (see also CanvasPath)
|
||||
void beginPath();
|
||||
|
@ -145,7 +145,7 @@ interface CanvasUserInterface {
|
|||
//void scrollPathIntoView(Path2D path);
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasText {
|
||||
// text (see also the CanvasPathDrawingStyles and CanvasTextDrawingStyles interfaces)
|
||||
[Pref="dom.canvas-text.enabled"]
|
||||
|
@ -156,7 +156,7 @@ interface CanvasText {
|
|||
//TextMetrics measureText(DOMString text);
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasDrawImage {
|
||||
// drawing images
|
||||
[Throws]
|
||||
|
@ -171,7 +171,7 @@ interface CanvasDrawImage {
|
|||
unrestricted double dw, unrestricted double dh);
|
||||
};
|
||||
|
||||
[Exposed=Window, NoInterfaceObject]
|
||||
[Exposed=(Window, Worker), NoInterfaceObject]
|
||||
interface CanvasImageData {
|
||||
// pixel manipulation
|
||||
[Throws]
|
||||
|
@ -193,7 +193,7 @@ enum CanvasTextAlign { "start", "end", "left", "right", "center" };
|
|||
enum CanvasTextBaseline { "top", "hanging", "middle", "alphabetic", "ideographic", "bottom" };
|
||||
enum CanvasDirection { "ltr", "rtl", "inherit" };
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasPathDrawingStyles {
|
||||
// line caps/joins
|
||||
attribute unrestricted double lineWidth; // (default 1)
|
||||
|
@ -207,7 +207,7 @@ interface CanvasPathDrawingStyles {
|
|||
//attribute unrestricted double lineDashOffset;
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasTextDrawingStyles {
|
||||
// text
|
||||
//attribute DOMString font; // (default 10px sans-serif)
|
||||
|
@ -217,7 +217,7 @@ interface CanvasTextDrawingStyles {
|
|||
//attribute CanvasDirection direction; // "ltr", "rtl", "inherit" (default: "inherit")
|
||||
};
|
||||
|
||||
[Exposed=(PaintWorklet, Window), NoInterfaceObject]
|
||||
[Exposed=(PaintWorklet, Window, Worker), NoInterfaceObject]
|
||||
interface CanvasPath {
|
||||
// shared path API methods
|
||||
void closePath();
|
||||
|
|
|
@ -8,23 +8,22 @@ interface OffscreenCanvasRenderingContext2D {
|
|||
//void commit();
|
||||
readonly attribute OffscreenCanvas canvas;
|
||||
};
|
||||
OffscreenCanvasRenderingContext2D implements CanvasState;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasCompositing;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasImageSmoothing;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasFillStrokeStyles;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasShadowStyles;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasFilters;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasRect;
|
||||
|
||||
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasState;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasTransform;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasCompositing;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasImageSmoothing;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasFillStrokeStyles;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasShadowStyles;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasFilters;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasDrawPath;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasText;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasDrawImage;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasImageData;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasPathDrawingStyles;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasTextDrawingStyles;
|
||||
//OffscreenCanvasRenderingContext2D includes CanvasPath;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasTransform;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasDrawPath;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasText;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasDrawImage;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasImageData;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasPathDrawingStyles;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasTextDrawingStyles;
|
||||
OffscreenCanvasRenderingContext2D implements CanvasPath;
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue