diff options
author | Anthony Ramine <n.oxyde@gmail.com> | 2016-06-28 15:18:53 +0200 |
---|---|---|
committer | Anthony Ramine <n.oxyde@gmail.com> | 2016-06-28 20:11:55 +0200 |
commit | 89a0b55c61e719aeeb26609b66f0925d684341ce (patch) | |
tree | 277deee3de8423672048660391a1c9675c36cb33 /components/script/dom/webglbuffer.rs | |
parent | 810735a846c65b2a6a2dd2ef6b7e476931ff55a1 (diff) | |
download | servo-89a0b55c61e719aeeb26609b66f0925d684341ce.tar.gz servo-89a0b55c61e719aeeb26609b66f0925d684341ce.zip |
Use wrappers for GL IDs
See https://github.com/servo/webrender_traits/pull/62.
Diffstat (limited to 'components/script/dom/webglbuffer.rs')
-rw-r--r-- | components/script/dom/webglbuffer.rs | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/components/script/dom/webglbuffer.rs b/components/script/dom/webglbuffer.rs index 66b287e347f..3899d417b38 100644 --- a/components/script/dom/webglbuffer.rs +++ b/components/script/dom/webglbuffer.rs @@ -11,12 +11,12 @@ use dom::bindings::reflector::reflect_dom_object; use dom::webglobject::WebGLObject; use ipc_channel::ipc::{self, IpcSender}; use std::cell::Cell; -use webrender_traits::{WebGLCommand, WebGLError, WebGLResult}; +use webrender_traits::{WebGLBufferId, WebGLCommand, WebGLError, WebGLResult}; #[dom_struct] pub struct WebGLBuffer { webgl_object: WebGLObject, - id: u32, + id: WebGLBufferId, /// The target to which this buffer was bound the first time target: Cell<Option<u32>>, capacity: Cell<usize>, @@ -26,7 +26,9 @@ pub struct WebGLBuffer { } impl WebGLBuffer { - fn new_inherited(renderer: IpcSender<CanvasMsg>, id: u32) -> WebGLBuffer { + fn new_inherited(renderer: IpcSender<CanvasMsg>, + id: WebGLBufferId) + -> WebGLBuffer { WebGLBuffer { webgl_object: WebGLObject::new_inherited(), id: id, @@ -43,17 +45,21 @@ impl WebGLBuffer { renderer.send(CanvasMsg::WebGL(WebGLCommand::CreateBuffer(sender))).unwrap(); let result = receiver.recv().unwrap(); - result.map(|buffer_id| WebGLBuffer::new(global, renderer, *buffer_id)) + result.map(|buffer_id| WebGLBuffer::new(global, renderer, buffer_id)) } - pub fn new(global: GlobalRef, renderer: IpcSender<CanvasMsg>, id: u32) -> Root<WebGLBuffer> { - reflect_dom_object(box WebGLBuffer::new_inherited(renderer, id), global, WebGLBufferBinding::Wrap) + pub fn new(global: GlobalRef, + renderer: IpcSender<CanvasMsg>, + id: WebGLBufferId) + -> Root<WebGLBuffer> { + reflect_dom_object(box WebGLBuffer::new_inherited(renderer, id), + global, WebGLBufferBinding::Wrap) } } impl WebGLBuffer { - pub fn id(&self) -> u32 { + pub fn id(&self) -> WebGLBufferId { self.id } @@ -66,7 +72,8 @@ impl WebGLBuffer { } else { self.target.set(Some(target)); } - self.renderer.send(CanvasMsg::WebGL(WebGLCommand::BindBuffer(target, self.id))).unwrap(); + let msg = CanvasMsg::WebGL(WebGLCommand::BindBuffer(target, Some(self.id))); + self.renderer.send(msg).unwrap(); Ok(()) } |