diff options
author | Glenn Watson <github@intuitionlibrary.com> | 2016-10-12 10:13:27 +1000 |
---|---|---|
committer | Glenn Watson <github@intuitionlibrary.com> | 2016-10-18 10:21:27 +1000 |
commit | acfdfd2fa98562c9f891fbee2dbc3424803c1a3c (patch) | |
tree | bc66667bab89db2ab6a1c4d4113525190fb82d3a /components/layout/context.rs | |
parent | 4af21e3ae1676f943a9a01688fef854487bcddfc (diff) | |
download | servo-acfdfd2fa98562c9f891fbee2dbc3424803c1a3c.tar.gz servo-acfdfd2fa98562c9f891fbee2dbc3424803c1a3c.zip |
Remove old rendering backend.
This removes paint threads, rust-layers dependency, and changes
optional webrender types to be required.
The use_webrender option has been removed, however I've left
the "-w" command line option in place so that wpt
runner can continue to pass that. Once it's removed from there
we can also remove the -w option.
Once this stage is complete, it should be fine to change the
display list building code to generate webrender display
lists directly and avoid the conversion step.
Diffstat (limited to 'components/layout/context.rs')
-rw-r--r-- | components/layout/context.rs | 31 |
1 files changed, 11 insertions, 20 deletions
diff --git a/components/layout/context.rs b/components/layout/context.rs index eb9024c2c5b..7125c6ab44d 100644 --- a/components/layout/context.rs +++ b/components/layout/context.rs @@ -15,7 +15,7 @@ use gfx::font_cache_thread::FontCacheThread; use gfx::font_context::FontContext; use gfx_traits::LayerId; use heapsize::HeapSizeOf; -use ipc_channel::ipc::{self, IpcSharedMemory}; +use ipc_channel::ipc; use net_traits::image::base::Image; use net_traits::image_cache_thread::{ImageCacheChan, ImageCacheThread, ImageResponse, ImageState}; use net_traits::image_cache_thread::{ImageOrMetadataAvailable, UsePlaceholder}; @@ -196,36 +196,27 @@ impl SharedLayoutContext { pub fn get_webrender_image_for_url(&self, url: &Url, - use_placeholder: UsePlaceholder, - fetch_image_data_as_well: bool) - -> Option<(WebRenderImageInfo, Option<IpcSharedMemory>)> { - if !fetch_image_data_as_well { - let webrender_image_cache = self.webrender_image_cache.read().unwrap(); - if let Some(existing_webrender_image) = - webrender_image_cache.get(&((*url).clone(), use_placeholder)) { - return Some(((*existing_webrender_image).clone(), None)) - } + use_placeholder: UsePlaceholder) + -> Option<WebRenderImageInfo> { + if let Some(existing_webrender_image) = self.webrender_image_cache + .read() + .unwrap() + .get(&((*url).clone(), use_placeholder)) { + return Some((*existing_webrender_image).clone()) } match self.get_or_request_image_or_meta((*url).clone(), use_placeholder) { Some(ImageOrMetadataAvailable::ImageAvailable(image)) => { let image_info = WebRenderImageInfo::from_image(&*image); if image_info.key.is_none() { - let bytes = if !fetch_image_data_as_well { - None - } else { - Some(image.bytes.clone()) - }; - Some((image_info, bytes)) - } else if !fetch_image_data_as_well { + Some(image_info) + } else { let mut webrender_image_cache = self.webrender_image_cache .write() .unwrap(); webrender_image_cache.insert(((*url).clone(), use_placeholder), image_info); - Some((image_info, None)) - } else { - Some((image_info, Some(image.bytes.clone()))) + Some(image_info) } } None | Some(ImageOrMetadataAvailable::MetadataAvailable(_)) => None, |