aboutsummaryrefslogtreecommitdiffstats
path: root/components/script
diff options
context:
space:
mode:
authorMátyás Mustoha <mmatyas@inf.u-szeged.hu>2015-04-09 10:20:55 +0200
committerMátyás Mustoha <mmatyas@inf.u-szeged.hu>2015-04-09 13:00:05 +0200
commit93fa9e607a12f1b32b017bb94d0f01f5a0ea1607 (patch)
tree8bcf085d9d6b9e9d78bf002a0f5e92702179a094 /components/script
parent74afd086d2ce5a5631a63a1f6642cfc0de5dfef7 (diff)
downloadservo-93fa9e607a12f1b32b017bb94d0f01f5a0ea1607.tar.gz
servo-93fa9e607a12f1b32b017bb94d0f01f5a0ea1607.zip
Canvas: added miterLimit support.
Diffstat (limited to 'components/script')
-rw-r--r--components/script/dom/canvasrenderingcontext2d.rs15
-rw-r--r--components/script/dom/webidls/CanvasRenderingContext2D.webidl2
2 files changed, 16 insertions, 1 deletions
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs
index 8213e7afc87..d079ce209c6 100644
--- a/components/script/dom/canvasrenderingcontext2d.rs
+++ b/components/script/dom/canvasrenderingcontext2d.rs
@@ -53,6 +53,7 @@ pub struct CanvasRenderingContext2D {
image_smoothing_enabled: Cell<bool>,
stroke_color: Cell<RGBA>,
line_width: Cell<f64>,
+ miter_limit: Cell<f64>,
fill_color: Cell<RGBA>,
transform: Cell<Matrix2D<f32>>,
}
@@ -75,6 +76,7 @@ impl CanvasRenderingContext2D {
image_smoothing_enabled: Cell::new(true),
stroke_color: Cell::new(black),
line_width: Cell::new(1.0),
+ miter_limit: Cell::new(10.0),
fill_color: Cell::new(black),
transform: Cell::new(Matrix2D::identity()),
}
@@ -816,6 +818,19 @@ impl<'a> CanvasRenderingContext2DMethods for JSRef<'a, CanvasRenderingContext2D>
self.line_width.set(width);
self.renderer.send(CanvasMsg::SetLineWidth(width as f32)).unwrap()
}
+
+ fn MiterLimit(self) -> f64 {
+ self.miter_limit.get()
+ }
+
+ fn SetMiterLimit(self, limit: f64) {
+ if !limit.is_finite() || limit <= 0.0 {
+ return;
+ }
+
+ self.miter_limit.set(limit);
+ self.renderer.send(CanvasMsg::SetMiterLimit(limit as f32)).unwrap()
+ }
}
#[unsafe_destructor]
diff --git a/components/script/dom/webidls/CanvasRenderingContext2D.webidl b/components/script/dom/webidls/CanvasRenderingContext2D.webidl
index 6808e3c7d24..4c4b94374f2 100644
--- a/components/script/dom/webidls/CanvasRenderingContext2D.webidl
+++ b/components/script/dom/webidls/CanvasRenderingContext2D.webidl
@@ -136,7 +136,7 @@ interface CanvasDrawingStyles {
attribute unrestricted double lineWidth; // (default 1)
//attribute DOMString lineCap; // "butt", "round", "square" (default "butt")
//attribute DOMString lineJoin; // "round", "bevel", "miter" (default "miter")
- //attribute unrestricted double miterLimit; // (default 10)
+ attribute unrestricted double miterLimit; // (default 10)
// dashed lines
//void setLineDash(sequence<unrestricted double> segments); // default empty