mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
layout: Paint stacking contexts' overflow areas properly.
This was making `box-shadow` not show up in many cases, in particular, but the effects were not limited to that.
This commit is contained in:
parent
ba8cf6b0e6
commit
5ea2c6dcfd
30 changed files with 357 additions and 179 deletions
|
@ -8,7 +8,7 @@ use context::{LayoutContext, SharedLayoutContext};
|
|||
use flow::{Flow, MutableFlowUtils, PreorderFlowTraversal, PostorderFlowTraversal};
|
||||
use flow;
|
||||
use flow_ref::FlowRef;
|
||||
use fragment::FragmentBoundsIterator;
|
||||
use fragment::FragmentOverflowIterator;
|
||||
use servo_util::opts;
|
||||
use traversal::{BubbleISizes, RecalcStyleForNode, ConstructFlows};
|
||||
use traversal::{AssignBSizesAndStoreOverflow, AssignISizes};
|
||||
|
@ -95,9 +95,9 @@ pub fn build_display_list_for_subtree(root: &mut FlowRef,
|
|||
}
|
||||
|
||||
pub fn iterate_through_flow_tree_fragment_bounds(root: &mut FlowRef,
|
||||
iterator: &mut FragmentBoundsIterator) {
|
||||
fn doit(flow: &mut Flow, iterator: &mut FragmentBoundsIterator) {
|
||||
flow.iterate_through_fragment_bounds(iterator);
|
||||
iterator: &mut FragmentOverflowIterator) {
|
||||
fn doit(flow: &mut Flow, iterator: &mut FragmentOverflowIterator) {
|
||||
flow.iterate_through_fragment_overflow(iterator);
|
||||
|
||||
for kid in flow::mut_base(flow).child_iter() {
|
||||
doit(kid, iterator);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue