aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2020-01-27 19:40:42 -0500
committerGitHub <noreply@github.com>2020-01-27 19:40:42 -0500
commit1b7223a284cd8f780d2856a50747ffc97beffd23 (patch)
tree4ebabeea12ac7caf7235bdbdbc311987075195cd
parentd0f64d9d56979f66a0de2f239c3fc691b45535d6 (diff)
parentae110f2e6c83b7b133db6af253f635b71e94199e (diff)
downloadservo-1b7223a284cd8f780d2856a50747ffc97beffd23.tar.gz
servo-1b7223a284cd8f780d2856a50747ffc97beffd23.zip
Auto merge of #25622 - pylbrecht:composite.op.clear, r=jdm
Add missing CanvasRenderingContext2D global composition operation "clear" <!-- 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 - [x] These changes fix part of #25331 <!-- Either: --> - [x] There are tests for these changes <!-- 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. -->
-rw-r--r--components/canvas/raqote_backend.rs1
-rw-r--r--components/canvas_traits/canvas.rs3
-rw-r--r--tests/wpt/metadata/2dcontext/compositing/2d.composite.operation.clear.html.ini5
-rw-r--r--tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.html.ini4
-rw-r--r--tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.worker.js.ini4
5 files changed, 4 insertions, 13 deletions
diff --git a/components/canvas/raqote_backend.rs b/components/canvas/raqote_backend.rs
index ec8f0f8e4a8..362ad1c5c57 100644
--- a/components/canvas/raqote_backend.rs
+++ b/components/canvas/raqote_backend.rs
@@ -1002,6 +1002,7 @@ impl ToRaqoteStyle for CompositionStyle {
CompositionStyle::Copy => raqote::BlendMode::Src,
CompositionStyle::Lighter => raqote::BlendMode::Add,
CompositionStyle::Xor => raqote::BlendMode::Xor,
+ CompositionStyle::Clear => raqote::BlendMode::Clear,
}
}
}
diff --git a/components/canvas_traits/canvas.rs b/components/canvas_traits/canvas.rs
index b203399a200..45920674863 100644
--- a/components/canvas_traits/canvas.rs
+++ b/components/canvas_traits/canvas.rs
@@ -254,6 +254,7 @@ pub enum CompositionStyle {
Copy,
Lighter,
Xor,
+ Clear,
}
impl FromStr for CompositionStyle {
@@ -272,6 +273,7 @@ impl FromStr for CompositionStyle {
"copy" => Ok(CompositionStyle::Copy),
"lighter" => Ok(CompositionStyle::Lighter),
"xor" => Ok(CompositionStyle::Xor),
+ "clear" => Ok(CompositionStyle::Clear),
_ => Err(()),
}
}
@@ -291,6 +293,7 @@ impl CompositionStyle {
CompositionStyle::Copy => "copy",
CompositionStyle::Lighter => "lighter",
CompositionStyle::Xor => "xor",
+ CompositionStyle::Clear => "clear",
}
}
}
diff --git a/tests/wpt/metadata/2dcontext/compositing/2d.composite.operation.clear.html.ini b/tests/wpt/metadata/2dcontext/compositing/2d.composite.operation.clear.html.ini
deleted file mode 100644
index 8ddda3e4602..00000000000
--- a/tests/wpt/metadata/2dcontext/compositing/2d.composite.operation.clear.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[2d.composite.operation.clear.html]
- type: testharness
- [Canvas test: 2d.composite.operation.clear]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.html.ini b/tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.html.ini
deleted file mode 100644
index de667d420b0..00000000000
--- a/tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.html.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[2d.composite.operation.clear.html]
- [OffscreenCanvas test: 2d.composite.operation.clear]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.worker.js.ini b/tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.worker.js.ini
deleted file mode 100644
index 9b0ed482eba..00000000000
--- a/tests/wpt/metadata/offscreen-canvas/compositing/2d.composite.operation.clear.worker.js.ini
+++ /dev/null
@@ -1,4 +0,0 @@
-[2d.composite.operation.clear.worker.html]
- [2d]
- expected: FAIL
-