mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 09:45:41 +00:00
servo: Merge #7141 - Update rust-layers to get 2d transform + clipping support (from glennw:2d-clipping-update); r=pcwalton
Source-Repo: https://github.com/servo/servo Source-Revision: 5af93e9ca3500a75f845614f17323d258ee72d71
This commit is contained in:
parent
f29b5dbcd3
commit
756e30a366
@ -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 {
|
||||
|
@ -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 => {}
|
||||
|
@ -55,8 +55,8 @@ impl LayerId {
|
||||
|
||||
#[derive(Clone, Copy, Debug, PartialEq)]
|
||||
pub enum LayerKind {
|
||||
Layer2D,
|
||||
Layer3D,
|
||||
NoTransform,
|
||||
HasTransform,
|
||||
}
|
||||
|
||||
/// The scrolling policy of a layer.
|
||||
|
2
servo/components/servo/Cargo.lock
generated
2
servo/components/servo/Cargo.lock
generated
@ -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
servo/ports/cef/Cargo.lock
generated
2
servo/ports/cef/Cargo.lock
generated
@ -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
servo/ports/gonk/Cargo.lock
generated
2
servo/ports/gonk/Cargo.lock
generated
@ -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)",
|
||||
|
Loading…
Reference in New Issue
Block a user