diff options
author | bors-servo <metajack+bors@gmail.com> | 2015-05-20 16:43:31 -0500 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2015-05-20 16:43:31 -0500 |
commit | 77099b25d590fdaac76721e7f98f4e83672e64a6 (patch) | |
tree | 8d57beab7c33b912251267cd0f01d90e42e94d9b /components/script/dom/canvasrenderingcontext2d.rs | |
parent | ad53e95080144485e74cd9b9d48ce75e20de4e36 (diff) | |
parent | 7e7675c1dcbd8148527d018b56883c6d83886fec (diff) | |
download | servo-77099b25d590fdaac76721e7f98f4e83672e64a6.tar.gz servo-77099b25d590fdaac76721e7f98f4e83672e64a6.zip |
Auto merge of #5586 - pcwalton:no-broken-background-image-redux, r=glennw
r? @jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5586)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/canvasrenderingcontext2d.rs')
-rw-r--r-- | components/script/dom/canvasrenderingcontext2d.rs | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index 147c8646e2e..e27cfe74fe8 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -33,14 +33,12 @@ use canvas_traits::{FillOrStrokeStyle, LinearGradientStyle, RadialGradientStyle} use canvas_traits::{LineCapStyle, LineJoinStyle, CompositionOrBlending}; use canvas::canvas_paint_task::CanvasPaintTask; -use net_traits::image::base::Image; -use net_traits::image_cache_task::ImageCacheChan; +use net_traits::image_cache_task::{ImageCacheChan, ImageResponse}; use png::PixelsByColorType; use num::{Float, ToPrimitive}; use std::borrow::ToOwned; use std::cell::RefCell; -use std::sync::{Arc}; use std::sync::mpsc::{channel, Sender}; use util::str::DOMString; @@ -260,8 +258,8 @@ impl CanvasRenderingContext2D { }; let img = match self.request_image_from_cache(url) { - Some(img) => img, - None => return None, + ImageResponse::Loaded(img) => img, + ImageResponse::PlaceholderLoaded(_) | ImageResponse::None => return None, }; let image_size = Size2D(img.width as f64, img.height as f64); @@ -277,7 +275,7 @@ impl CanvasRenderingContext2D { return Some((image_data, image_size)); } - fn request_image_from_cache(&self, url: Url) -> Option<Arc<Image>> { + fn request_image_from_cache(&self, url: Url) -> ImageResponse { let canvas = self.canvas.root(); let window = window_from_node(canvas.r()).root(); let window = window.r(); @@ -285,7 +283,7 @@ impl CanvasRenderingContext2D { let (response_chan, response_port) = channel(); image_cache.request_image(url, ImageCacheChan(response_chan), None); let result = response_port.recv().unwrap(); - result.image + result.image_response } fn create_drawable_rect(&self, x: f64, y: f64, w: f64, h: f64) -> Option<Rect<f32>> { |