diff --git a/servo/Cargo.lock b/servo/Cargo.lock index 226f46d37f5a..2f45ba88f125 100644 --- a/servo/Cargo.lock +++ b/servo/Cargo.lock @@ -1299,6 +1299,11 @@ dependencies = [ "num-traits 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "json" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "jstraceable_derive" version = "0.0.1" @@ -2970,6 +2975,16 @@ dependencies = [ "unreachable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "thread_profiler" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "json 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "threadpool" version = "1.3.2" @@ -3175,7 +3190,7 @@ dependencies = [ [[package]] name = "webrender" version = "0.15.0" -source = "git+https://github.com/servo/webrender#512b4a1433a7827ef7cfd121d2f99fdd91ecf80e" +source = "git+https://github.com/servo/webrender#296851d8136b78f029f1d93b19b9ed69d36c2f57" dependencies = [ "app_units 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "bincode 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3194,6 +3209,7 @@ dependencies = [ "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)", "offscreen_gl_context 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_profiler 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "threadpool 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)", "webrender_traits 0.14.0 (git+https://github.com/servo/webrender)", @@ -3202,7 +3218,7 @@ dependencies = [ [[package]] name = "webrender_traits" version = "0.14.0" -source = "git+https://github.com/servo/webrender#512b4a1433a7827ef7cfd121d2f99fdd91ecf80e" +source = "git+https://github.com/servo/webrender#296851d8136b78f029f1d93b19b9ed69d36c2f57" dependencies = [ "app_units 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3440,6 +3456,7 @@ dependencies = [ "checksum itoa 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae3088ea4baeceb0284ee9eea42f591226e6beaecf65373e41b38d95a1b8e7a1" "checksum jpeg-decoder 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "5c4ff3d14e7ef3522471ab712832c3dd50001f7fb7aa4cdc48af811d63b531e9" "checksum js 0.1.4 (git+https://github.com/servo/rust-mozjs)" = "" +"checksum json 0.11.5 (registry+https://github.com/rust-lang/crates.io-index)" = "5e7eb285e773498f9473a6e2255feffe95db9c55579c7931a6db83c9e02a4673" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "09c9d3760673c427d46f91a0350f0a84a52e6bc5a84adf26dc610b6c52436630" "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" @@ -3555,6 +3572,7 @@ dependencies = [ "checksum term_size 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "71662702fe5cd2cf95edd4ad655eea42f24a87a0e44059cbaa4e55260b7bc331" "checksum thread-id 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4437c97558c70d129e40629a5b385b3fb1ffac301e63941335e4d354081ec14a" "checksum thread_local 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7793b722f0f77ce716e7f1acf416359ca32ff24d04ffbac4269f44a4a83be05d" +"checksum thread_profiler 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c82b4f86ccf6ee107b1b6c9249aff6c9883ad1dd43a8fe29ffa8c4ed21add95" "checksum threadpool 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "59f6d3eff89920113dac9db44dde461d71d01e88a5b57b258a0466c32b5d7fe1" "checksum time 0.1.36 (registry+https://github.com/rust-lang/crates.io-index)" = "211b63c112206356ef1ff9b19355f43740fc3f85960c598a93d3a3d3ba7beade" "checksum tinyfiledialogs 2.5.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d401358cd71aca93d5f4fccd3db5b87d970ae70fe457911929d99f4a87f7531" diff --git a/servo/components/compositing/compositor.rs b/servo/components/compositing/compositor.rs index aa8f7d72968c..2673af8b439d 100644 --- a/servo/components/compositing/compositor.rs +++ b/servo/components/compositing/compositor.rs @@ -734,7 +734,7 @@ impl IOCompositor { let pipeline_id = frame_tree.pipeline.id.to_webrender(); self.webrender_api.set_root_pipeline(pipeline_id); - self.webrender_api.generate_frame(); + self.webrender_api.generate_frame(None); self.create_pipeline_details_for_frame_tree(&frame_tree); diff --git a/servo/components/layout/webrender_helpers.rs b/servo/components/layout/webrender_helpers.rs index 725570640f69..665916594fd9 100644 --- a/servo/components/layout/webrender_helpers.rs +++ b/servo/components/layout/webrender_helpers.rs @@ -184,7 +184,7 @@ impl ToFilterOps for filter::T { Filter::Grayscale(amount) => result.push(webrender_traits::FilterOp::Grayscale(amount)), Filter::HueRotate(angle) => result.push(webrender_traits::FilterOp::HueRotate(angle.0)), Filter::Invert(amount) => result.push(webrender_traits::FilterOp::Invert(amount)), - Filter::Opacity(amount) => result.push(webrender_traits::FilterOp::Opacity(amount)), + Filter::Opacity(amount) => result.push(webrender_traits::FilterOp::Opacity(amount.into())), Filter::Saturate(amount) => result.push(webrender_traits::FilterOp::Saturate(amount)), Filter::Sepia(amount) => result.push(webrender_traits::FilterOp::Sepia(amount)), } @@ -347,8 +347,8 @@ impl WebRenderDisplayItemConverter for DisplayItem { stacking_context.bounds.to_rectf(), clip, stacking_context.z_index, - &LayoutTransform::from_untyped(&stacking_context.transform), - &LayoutTransform::from_untyped(&stacking_context.perspective), + LayoutTransform::from_untyped(&stacking_context.transform).into(), + LayoutTransform::from_untyped(&stacking_context.perspective), stacking_context.blend_mode.to_blend_mode(), stacking_context.filters.to_filter_ops()); } diff --git a/servo/components/layout_thread/lib.rs b/servo/components/layout_thread/lib.rs index 429a5f49fb83..3721cc48d17a 100644 --- a/servo/components/layout_thread/lib.rs +++ b/servo/components/layout_thread/lib.rs @@ -989,7 +989,7 @@ impl LayoutThread { viewport_size, builder, true); - self.webrender_api.generate_frame(); + self.webrender_api.generate_frame(None); }); } diff --git a/servo/components/servo/lib.rs b/servo/components/servo/lib.rs index bf6a5c66b1d0..6e2736019266 100644 --- a/servo/components/servo/lib.rs +++ b/servo/components/servo/lib.rs @@ -184,6 +184,7 @@ impl Browser where Window: WindowMethods + 'static { clear_framebuffer: true, clear_color: webrender_traits::ColorF::new(1.0, 1.0, 1.0, 1.0), render_target_debug: false, + workers: None, }).expect("Unable to initialize webrender!") };