Auto merge of #7141 - glennw:2d-clipping-update, r=pcwalton

Update rust-layers to get 2d transform + clipping support.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7141)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2015-08-10 20:23:42 -06:00
commit 5af93e9ca3
6 changed files with 10 additions and 10 deletions

View file

@ -1238,10 +1238,10 @@ impl<Window: WindowMethods> IOCompositor<Window> {
request.page_rect = request.page_rect / scale.get();
}
let layer_kind = if layer.transform_state.borrow().is_3d {
LayerKind::Layer3D
let layer_kind = if layer.transform_state.borrow().has_transform {
LayerKind::HasTransform
} else {
LayerKind::Layer2D
LayerKind::NoTransform
};
let mut paint_request = PaintRequest {

View file

@ -423,7 +423,7 @@ impl StackingContext {
// TODO(gw): This is a hack to avoid running the DL optimizer
// on 3d transformed tiles. We should have a better solution
// than just disabling the opts here.
if paint_context.layer_kind == LayerKind::Layer3D {
if paint_context.layer_kind == LayerKind::HasTransform {
self.draw_into_context(&self.display_list,
paint_context,
&transform,
@ -1022,7 +1022,7 @@ impl<'a> Iterator for DisplayItemIterator<'a> {
impl DisplayItem {
/// Paints this display item into the given painting context.
fn draw_into_context(&self, paint_context: &mut PaintContext) {
if paint_context.layer_kind == LayerKind::Layer2D {
if paint_context.layer_kind == LayerKind::NoTransform {
let this_clip = &self.base().clip;
match paint_context.transient_clip {
Some(ref transient_clip) if transient_clip == this_clip => {}

View file

@ -55,8 +55,8 @@ impl LayerId {
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum LayerKind {
Layer2D,
Layer3D,
NoTransform,
HasTransform,
}
/// The scrolling policy of a layer.

View file

@ -747,7 +747,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "layers"
version = "0.1.0"
source = "git+https://github.com/servo/rust-layers#e2283b8ec3d3eb2e10afa8a318deda71dd59d11a"
source = "git+https://github.com/servo/rust-layers#c4fa565228a9741a1c138a96421fcbd156ad1e45"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"cgl 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",

2
ports/cef/Cargo.lock generated
View file

@ -739,7 +739,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "layers"
version = "0.1.0"
source = "git+https://github.com/servo/rust-layers#e2283b8ec3d3eb2e10afa8a318deda71dd59d11a"
source = "git+https://github.com/servo/rust-layers#c4fa565228a9741a1c138a96421fcbd156ad1e45"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"cgl 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",

2
ports/gonk/Cargo.lock generated
View file

@ -671,7 +671,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "layers"
version = "0.1.0"
source = "git+https://github.com/servo/rust-layers#e2283b8ec3d3eb2e10afa8a318deda71dd59d11a"
source = "git+https://github.com/servo/rust-layers#c4fa565228a9741a1c138a96421fcbd156ad1e45"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"cgl 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",