diff options
Diffstat (limited to 'components/canvas/webgl_thread.rs')
-rw-r--r-- | components/canvas/webgl_thread.rs | 45 |
1 files changed, 16 insertions, 29 deletions
diff --git a/components/canvas/webgl_thread.rs b/components/canvas/webgl_thread.rs index 7b0b120d037..8ab129680de 100644 --- a/components/canvas/webgl_thread.rs +++ b/components/canvas/webgl_thread.rs @@ -268,13 +268,13 @@ impl<VR: WebVRRenderHandler + 'static, OB: WebGLThreadObserver> WebGLThread<VR, fn remove_webgl_context(&mut self, context_id: WebGLContextId) { // Release webrender image keys. if let Some(info) = self.cached_context_info.remove(&context_id) { - let mut updates = webrender_api::ResourceUpdates::new(); + let mut txn = webrender_api::Transaction::new(); if let Some(image_key) = info.image_key { - updates.delete_image(image_key); + txn.delete_image(image_key); } - self.webrender_api.update_resources(updates) + self.webrender_api.update_resources(txn.resource_updates) } // Release GL context. @@ -423,12 +423,9 @@ impl<VR: WebVRRenderHandler + 'static, OB: WebGLThreadObserver> WebGLThread<VR, let data = Self::external_image_data(context_id); let image_key = webrender_api.generate_image_key(); - let mut updates = webrender_api::ResourceUpdates::new(); - updates.add_image(image_key, - descriptor, - data, - None); - webrender_api.update_resources(updates); + let mut txn = webrender_api::Transaction::new(); + txn.add_image(image_key, descriptor, data, None); + webrender_api.update_resources(txn.resource_updates); image_key } @@ -442,12 +439,9 @@ impl<VR: WebVRRenderHandler + 'static, OB: WebGLThreadObserver> WebGLThread<VR, let descriptor = Self::image_descriptor(size, alpha); let data = Self::external_image_data(context_id); - let mut updates = webrender_api::ResourceUpdates::new(); - updates.update_image(image_key, - descriptor, - data, - None); - webrender_api.update_resources(updates); + let mut txn = webrender_api::Transaction::new(); + txn.update_image(image_key, descriptor, data, None); + webrender_api.update_resources(txn.resource_updates); } /// Creates a `webrender_api::ImageKey` that uses raw pixels. @@ -459,12 +453,9 @@ impl<VR: WebVRRenderHandler + 'static, OB: WebGLThreadObserver> WebGLThread<VR, let data = webrender_api::ImageData::new(data); let image_key = webrender_api.generate_image_key(); - let mut updates = webrender_api::ResourceUpdates::new(); - updates.add_image(image_key, - descriptor, - data, - None); - webrender_api.update_resources(updates); + let mut txn = webrender_api::Transaction::new(); + txn.add_image(image_key, descriptor, data, None); + webrender_api.update_resources(txn.resource_updates); image_key } @@ -478,19 +469,15 @@ impl<VR: WebVRRenderHandler + 'static, OB: WebGLThreadObserver> WebGLThread<VR, let descriptor = Self::image_descriptor(size, alpha); let data = webrender_api::ImageData::new(data); - let mut updates = webrender_api::ResourceUpdates::new(); - updates.update_image(image_key, - descriptor, - data, - None); - webrender_api.update_resources(updates); + let mut txn = webrender_api::Transaction::new(); + txn.update_image(image_key, descriptor, data, None); + webrender_api.update_resources(txn.resource_updates); } /// Helper function to create a `webrender_api::ImageDescriptor`. fn image_descriptor(size: Size2D<i32>, alpha: bool) -> webrender_api::ImageDescriptor { webrender_api::ImageDescriptor { - width: size.width as u32, - height: size.height as u32, + size: webrender_api::DeviceUintSize::new(size.width as u32, size.height as u32), stride: None, format: webrender_api::ImageFormat::BGRA8, offset: 0, |