servo: Merge #15862 - Update WR (types updates, stacking context culling) (from glennw:update-wr-types); r=emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 28f871247c6461ccc8c254caba0d674ac4ddc545

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fd4339b7217318e2fb52cad2511df7c75a180181
This commit is contained in:
Glenn Watson 2017-03-08 16:33:34 -08:00
parent 1be60686d5
commit 1b3d9372f6
4 changed files with 7 additions and 38 deletions

4
servo/Cargo.lock generated
View File

@ -3175,7 +3175,7 @@ dependencies = [
[[package]]
name = "webrender"
version = "0.22.1"
source = "git+https://github.com/servo/webrender#f9860e08a22e9753974fbb7f34dbf675b2891b59"
source = "git+https://github.com/servo/webrender#ec377923dd3ccc67b26ae5dfeb04c87af42ede06"
dependencies = [
"app_units 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"bincode 1.0.0-alpha2 (registry+https://github.com/rust-lang/crates.io-index)",
@ -3203,7 +3203,7 @@ dependencies = [
[[package]]
name = "webrender_traits"
version = "0.23.1"
source = "git+https://github.com/servo/webrender#f9860e08a22e9753974fbb7f34dbf675b2891b59"
source = "git+https://github.com/servo/webrender#ec377923dd3ccc67b26ae5dfeb04c87af42ede06"
dependencies = [
"app_units 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",

View File

@ -12,7 +12,7 @@ use euclid::point::TypedPoint2D;
use euclid::rect::TypedRect;
use euclid::scale_factor::ScaleFactor;
use euclid::size::TypedSize2D;
use gfx_traits::{Epoch, FragmentType, ScrollRootId};
use gfx_traits::{Epoch, ScrollRootId};
use gleam::gl;
use gleam::gl::types::{GLint, GLsizei};
use image::{DynamicImage, ImageFormat, RgbImage};
@ -83,22 +83,6 @@ impl ConvertScrollRootIdFromWebRender for webrender_traits::ServoScrollRootId {
}
}
trait ConvertFragmentTypeFromWebRender {
fn from_webrender(&self) -> FragmentType;
}
impl ConvertFragmentTypeFromWebRender for webrender_traits::FragmentType {
fn from_webrender(&self) -> FragmentType {
match *self {
webrender_traits::FragmentType::FragmentBody => FragmentType::FragmentBody,
webrender_traits::FragmentType::BeforePseudoContent => {
FragmentType::BeforePseudoContent
}
webrender_traits::FragmentType::AfterPseudoContent => FragmentType::AfterPseudoContent,
}
}
}
/// Holds the state when running reftests that determines when it is
/// safe to save the output image.
#[derive(Copy, Clone, PartialEq)]

View File

@ -11,7 +11,7 @@ use app_units::Au;
use euclid::{Point2D, Rect, SideOffsets2D, Size2D};
use gfx::display_list::{BorderDetails, BorderRadii, BoxShadowClipMode, ClippingRegion};
use gfx::display_list::{DisplayItem, DisplayList, DisplayListTraversal, StackingContextType};
use gfx_traits::{FragmentType, ScrollRootId};
use gfx_traits::ScrollRootId;
use msg::constellation_msg::PipelineId;
use style::computed_values::{image_rendering, mix_blend_mode};
use style::computed_values::filter::{self, Filter};
@ -421,19 +421,3 @@ impl WebRenderScrollRootIdConverter for ScrollRootId {
webrender_traits::ServoScrollRootId(self.0)
}
}
trait WebRenderFragmentTypeConverter {
fn convert_to_webrender(&self) -> webrender_traits::FragmentType;
}
impl WebRenderFragmentTypeConverter for FragmentType {
fn convert_to_webrender(&self) -> webrender_traits::FragmentType {
match *self {
FragmentType::FragmentBody => webrender_traits::FragmentType::FragmentBody,
FragmentType::BeforePseudoContent => {
webrender_traits::FragmentType::BeforePseudoContent
}
FragmentType::AfterPseudoContent => webrender_traits::FragmentType::AfterPseudoContent,
}
}
}

View File

@ -99,6 +99,7 @@ use std::cmp::max;
use std::path::PathBuf;
use std::rc::Rc;
use std::sync::mpsc::Sender;
use webrender::renderer::RendererKind;
use webvr::{WebVRThread, WebVRCompositorHandler};
pub use gleam::gl;
@ -159,9 +160,9 @@ impl<Window> Browser<Window> where Window: WindowMethods + 'static {
};
let renderer_kind = if opts::get().should_use_osmesa() {
webrender_traits::RendererKind::OSMesa
RendererKind::OSMesa
} else {
webrender_traits::RendererKind::Native
RendererKind::Native
};
let recorder = if opts.webrender_record {