aboutsummaryrefslogtreecommitdiffstats
path: root/components/canvas/webgl_thread.rs
diff options
context:
space:
mode:
authorAnthony Ramine <n.oxyde@gmail.com>2018-05-09 16:23:09 +0200
committerAnthony Ramine <n.oxyde@gmail.com>2018-05-24 12:32:15 +0200
commit3e510ec008394e592b272813a47b16742fe8bb1d (patch)
treeda61f386c0614d065a74c4b3fabab2f8e4ad3fc5 /components/canvas/webgl_thread.rs
parentd4df55b417d1d77c76eec185982c3badb7b398cc (diff)
downloadservo-3e510ec008394e592b272813a47b16742fe8bb1d.tar.gz
servo-3e510ec008394e592b272813a47b16742fe8bb1d.zip
Implement most of the unsupported parameters in gl.getParameter()
Fixes #20536. Fixes #20537. Fixes #20538. Fixes #20544. Fixes #20545. Fixes #20546. Fixes #20548. Fixes #20549. Fixes #20551.
Diffstat (limited to 'components/canvas/webgl_thread.rs')
-rw-r--r--components/canvas/webgl_thread.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/components/canvas/webgl_thread.rs b/components/canvas/webgl_thread.rs
index 298bacfe860..f6e6981fb14 100644
--- a/components/canvas/webgl_thread.rs
+++ b/components/canvas/webgl_thread.rs
@@ -893,6 +893,19 @@ impl WebGLImpl {
}
sender.send(value[0] != 0).unwrap()
}
+ WebGLCommand::GetParameterBool4(param, sender) => {
+ let mut value = [0; 4];
+ unsafe {
+ ctx.gl().get_boolean_v(param as u32, &mut value);
+ }
+ let value = [
+ value[0] != 0,
+ value[1] != 0,
+ value[2] != 0,
+ value[3] != 0,
+ ];
+ sender.send(value).unwrap()
+ }
WebGLCommand::GetParameterInt(param, sender) => {
let mut value = [0];
unsafe {
@@ -921,6 +934,13 @@ impl WebGLImpl {
}
sender.send(value).unwrap()
}
+ WebGLCommand::GetParameterFloat4(param, sender) => {
+ let mut value = [0.; 4];
+ unsafe {
+ ctx.gl().get_float_v(param as u32, &mut value);
+ }
+ sender.send(value).unwrap()
+ }
WebGLCommand::GetProgramParameterBool(program, param, sender) => {
let mut value = [0];
unsafe {