diff options
author | Anthony Ramine <n.oxyde@gmail.com> | 2018-10-02 13:25:45 +0200 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2018-10-02 14:21:06 +0200 |
commit | a3392610c3414a86a2294073bdc59c78c237bfda (patch) | |
tree | 549cc165a6a48da00ac9a6e4f715f3978112f79f /components/script/dom/webglrenderingcontext.rs | |
parent | b8dbf2dddd88516f85370c49015133435750003d (diff) | |
download | servo-a3392610c3414a86a2294073bdc59c78c237bfda.tar.gz servo-a3392610c3414a86a2294073bdc59c78c237bfda.zip |
Make HTMLCanvasElement::get_size return a Size2D<u32>
The changes keep trickling down.
Diffstat (limited to 'components/script/dom/webglrenderingcontext.rs')
-rw-r--r-- | components/script/dom/webglrenderingcontext.rs | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs index 754637ad52b..7972201b9ce 100644 --- a/components/script/dom/webglrenderingcontext.rs +++ b/components/script/dom/webglrenderingcontext.rs @@ -157,7 +157,7 @@ pub struct WebGLRenderingContext { #[ignore_malloc_size_of = "Because it's small"] current_vertex_attrib_0: Cell<(f32, f32, f32, f32)>, #[ignore_malloc_size_of = "Because it's small"] - current_scissor: Cell<(i32, i32, i32, i32)>, + current_scissor: Cell<(i32, i32, u32, u32)>, #[ignore_malloc_size_of = "Because it's small"] current_clear_color: Cell<(f32, f32, f32, f32)>, extension_manager: WebGLExtensions, @@ -172,7 +172,7 @@ impl WebGLRenderingContext { window: &Window, canvas: &HTMLCanvasElement, webgl_version: WebGLVersion, - size: Size2D<i32>, + size: Size2D<u32>, attrs: GLContextAttributes, ) -> Result<WebGLRenderingContext, String> { if let Some(true) = PREFS @@ -229,7 +229,7 @@ impl WebGLRenderingContext { window: &Window, canvas: &HTMLCanvasElement, webgl_version: WebGLVersion, - size: Size2D<i32>, + size: Size2D<u32>, attrs: GLContextAttributes, ) -> Option<DomRoot<WebGLRenderingContext>> { match WebGLRenderingContext::new_inherited(window, canvas, webgl_version, size, attrs) { @@ -266,7 +266,7 @@ impl WebGLRenderingContext { }) } - pub fn recreate(&self, size: Size2D<i32>) { + pub fn recreate(&self, size: Size2D<u32>) { let (sender, receiver) = webgl_channel().unwrap(); self.webgl_sender.send_resize(size, sender).unwrap(); @@ -517,7 +517,7 @@ impl WebGLRenderingContext { fn get_image_pixels( &self, source: TexImageSource, - ) -> Fallible<Option<(Vec<u8>, Size2D<i32>, bool)>> { + ) -> Fallible<Option<(Vec<u8>, Size2D<u32>, bool)>> { Ok(Some(match source { TexImageSource::ImageData(image_data) => { (image_data.get_data_array(), image_data.get_size(), false) @@ -542,7 +542,7 @@ impl WebGLRenderingContext { ImageResponse::MetadataLoaded(_) => return Ok(None), }; - let size = Size2D::new(img.width as i32, img.height as i32); + let size = Size2D::new(img.width, img.height); // For now Servo's images are all stored as BGRA8 internally. let mut data = match img.format { @@ -2940,6 +2940,9 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { return self.webgl_error(InvalidValue); } + let width = width as u32; + let height = height as u32; + self.current_scissor.set((x, y, width, height)); self.send_command(WebGLCommand::Scissor(x, y, width, height)); } @@ -3791,8 +3794,8 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { target, level, internal_format, - size.width, - size.height, + size.width as i32, + size.height as i32, 0, format, data_type, @@ -4003,8 +4006,8 @@ impl WebGLRenderingContextMethods for WebGLRenderingContext { target, level, format, - size.width, - size.height, + size.width as i32, + size.height as i32, 0, format, data_type, |