aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/table_wrapper.rs
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2017-08-24 09:37:49 +0200
committerMartin Robinson <mrobinson@igalia.com>2017-09-05 09:10:55 +0200
commitbc455c8a1f5f355323c63e5d1639df2fcaaba5df (patch)
tree8cbe1bfbe8145242736759ed39c1cdd8b42eb683 /components/layout/table_wrapper.rs
parent4725a05bfba0b588d19af8bc5cfe960bda1ea880 (diff)
downloadservo-bc455c8a1f5f355323c63e5d1639df2fcaaba5df.tar.gz
servo-bc455c8a1f5f355323c63e5d1639df2fcaaba5df.zip
Add support for position:sticky
This leverages the position:sticky support in WebRender to bring basic support for position:sticky in Servo. There are still some issues with nested sticky flows as well as a few other corner cases. Tests are imported from WPT and can be removed once we update to the latest version.
Diffstat (limited to 'components/layout/table_wrapper.rs')
-rw-r--r--components/layout/table_wrapper.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/components/layout/table_wrapper.rs b/components/layout/table_wrapper.rs
index 531176d52d3..5619a487ea7 100644
--- a/components/layout/table_wrapper.rs
+++ b/components/layout/table_wrapper.rs
@@ -17,7 +17,8 @@ use app_units::Au;
use block::{AbsoluteNonReplaced, BlockFlow, FloatNonReplaced, ISizeAndMarginsComputer, ISizeConstraintInput};
use block::{ISizeConstraintSolution, MarginsMayCollapseFlag};
use context::LayoutContext;
-use display_list_builder::DisplayListBuildState;
+use display_list_builder::{BlockFlowDisplayListBuilding, DisplayListBuildState};
+use display_list_builder::EstablishContainingBlock;
use euclid::Point2D;
use floats::FloatKind;
use flow::{Flow, FlowClass, ImmutableFlowUtils, INLINE_POSITION_IS_STATIC, OpaqueFlow};
@@ -463,7 +464,7 @@ impl Flow for TableWrapperFlow {
}
fn collect_stacking_contexts(&mut self, state: &mut DisplayListBuildState) {
- self.block_flow.collect_stacking_contexts(state);
+ self.block_flow.collect_stacking_contexts_for_block(state, EstablishContainingBlock::No);
}
fn repair_style(&mut self, new_style: &::ServoArc<ComputedValues>) {