mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
Implement Ellipse Canvas 2D API
* Update rust-azure to 0.21.0 * Mark the following test case as fail: tests/wpt/mozilla/tests/mozilla/css-paint-api/background-image-tiled.html * Make the ellipse test case pass. BUG: https://github.com/servo/servo/issues/17598
This commit is contained in:
parent
ac7cf53692
commit
57e283aaab
8 changed files with 52 additions and 16 deletions
|
@ -957,6 +957,26 @@ impl CanvasRenderingContext2DMethods for CanvasRenderingContext2D {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#dom-context-2d-ellipse
|
||||
fn Ellipse(&self, x: f64, y: f64, rx: f64, ry: f64, rotation: f64, start: f64, end: f64, ccw: bool) -> ErrorResult {
|
||||
if !([x, y, rx, ry, rotation, start, end].iter().all(|x| x.is_finite())) {
|
||||
return Ok(());
|
||||
}
|
||||
if rx < 0.0 || ry < 0.0 {
|
||||
return Err(Error::IndexSize);
|
||||
}
|
||||
|
||||
let msg = CanvasMsg::Canvas2d(Canvas2dMsg::Ellipse(Point2D::new(x as f32, y as f32),
|
||||
rx as f32,
|
||||
ry as f32,
|
||||
rotation as f32,
|
||||
start as f32,
|
||||
end as f32,
|
||||
ccw));
|
||||
self.ipc_renderer.send(msg).unwrap();
|
||||
Ok(())
|
||||
}
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/#dom-context-2d-imagesmoothingenabled
|
||||
fn ImageSmoothingEnabled(&self) -> bool {
|
||||
let state = self.state.borrow();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue