diff options
author | pylbrecht <palbrecht@mailbox.org> | 2020-01-19 09:23:18 +0100 |
---|---|---|
committer | pylbrecht <palbrecht@mailbox.org> | 2020-01-19 09:23:18 +0100 |
commit | 3c7205c99f9e1105fd6a56a4bd841e409a385e5f (patch) | |
tree | 5c052f792ac8acfa0dbe1ed1a7c4faf6444e56bf /components/canvas/canvas_data.rs | |
parent | 77c07a26fd10e60b2451b083080aa17e3059d483 (diff) | |
download | servo-3c7205c99f9e1105fd6a56a4bd841e409a385e5f.tar.gz servo-3c7205c99f9e1105fd6a56a4bd841e409a385e5f.zip |
Create new subpath with origin after drawing rect
Step 4 has been missing.
https://html.spec.whatwg.org/multipage/canvas.html#dom-context-2d-rect
Diffstat (limited to 'components/canvas/canvas_data.rs')
-rw-r--r-- | components/canvas/canvas_data.rs | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/components/canvas/canvas_data.rs b/components/canvas/canvas_data.rs index 5e2348b58d7..f66bd626cda 100644 --- a/components/canvas/canvas_data.rs +++ b/components/canvas/canvas_data.rs @@ -143,11 +143,12 @@ impl<'a> PathBuilderRef<'a> { ), Point2D::new(rect.origin.x, rect.origin.y + rect.size.height), ); - self.builder.move_to(self.transform.transform_point(first)); - self.builder.line_to(self.transform.transform_point(second)); - self.builder.line_to(self.transform.transform_point(third)); - self.builder.line_to(self.transform.transform_point(fourth)); - self.builder.close(); + self.move_to(&first); + self.line_to(&second); + self.line_to(&third); + self.line_to(&fourth); + self.close(); + self.move_to(&first); } fn quadratic_curve_to(&mut self, cp: &Point2D<f32>, endpoint: &Point2D<f32>) { @@ -210,6 +211,10 @@ impl<'a> PathBuilderRef<'a> { None => None, } } + + fn close(&mut self) { + self.builder.close(); + } } // TODO(pylbrecht) @@ -573,7 +578,7 @@ impl<'a> CanvasData<'a> { } pub fn close_path(&mut self) { - self.path_builder().builder.close(); + self.path_builder().close(); } fn ensure_path(&mut self) { |