diff options
author | Mátyás Mustoha <mmatyas@inf.u-szeged.hu> | 2015-03-26 16:43:34 +0100 |
---|---|---|
committer | Mátyás Mustoha <mmatyas@inf.u-szeged.hu> | 2015-04-01 21:20:05 +0200 |
commit | 56303e21ccb22313498584cdeb08544398a08c92 (patch) | |
tree | 193da1d4806d12aa4ed8b765522f88c2a62c6958 /components/script/dom/canvasrenderingcontext2d.rs | |
parent | ba0d28e0023fce2003d64b9caf97fcdbeb7cdb28 (diff) | |
download | servo-56303e21ccb22313498584cdeb08544398a08c92.tar.gz servo-56303e21ccb22313498584cdeb08544398a08c92.zip |
Canvas: added arcTo() support.
Diffstat (limited to 'components/script/dom/canvasrenderingcontext2d.rs')
-rw-r--r-- | components/script/dom/canvasrenderingcontext2d.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index 4145c8e28cc..c2316dd44db 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -477,6 +477,19 @@ impl<'a> CanvasRenderingContext2DMethods for JSRef<'a, CanvasRenderingContext2D> Ok(()) } + fn ArcTo(self, cp1x: f64, cp1y: f64, cp2x: f64, cp2y: f64, r: f64) -> Fallible<()> { + if !([cp1x, cp1y, cp2x, cp2y, r].iter().all(|x| x.is_finite())) { + return Ok(()); + } + if r < 0.0 { + return Err(IndexSize); + } + self.renderer.send(CanvasMsg::ArcTo(Point2D(cp1x as f32, cp1y as f32), + Point2D(cp2x as f32, cp2y as f32), + r as f32)).unwrap(); + Ok(()) + } + // https://html.spec.whatwg.org/#dom-context-2d-imagesmoothingenabled fn ImageSmoothingEnabled(self) -> bool { self.image_smoothing_enabled.get() |