Pass SharedStyleContext to containing_block_inline_size.

This commit is contained in:
Ms2ger 2016-06-20 19:37:32 +02:00
parent f20ea08a1b
commit 2a1e2f491a
2 changed files with 15 additions and 13 deletions

View file

@ -2279,7 +2279,7 @@ pub trait ISizeAndMarginsComputer {
layout_context: &LayoutContext)
-> ISizeConstraintInput {
let containing_block_inline_size =
self.containing_block_inline_size(block, parent_flow_inline_size, layout_context);
self.containing_block_inline_size(block, parent_flow_inline_size, layout_context.shared_context());
block.fragment.compute_block_direction_margins(containing_block_inline_size);
block.fragment.compute_inline_direction_margins(containing_block_inline_size);
@ -2387,13 +2387,13 @@ pub trait ISizeAndMarginsComputer {
MaybeAuto::from_style(block.fragment().style().content_inline_size(),
self.containing_block_inline_size(block,
parent_flow_inline_size,
layout_context))
layout_context.shared_context()))
}
fn containing_block_inline_size(&self,
_: &mut BlockFlow,
parent_flow_inline_size: Au,
_: &LayoutContext)
_: &SharedStyleContext)
-> Au {
parent_flow_inline_size
}
@ -2410,7 +2410,7 @@ pub trait ISizeAndMarginsComputer {
layout_context);
let containing_block_inline_size =
self.containing_block_inline_size(block, parent_flow_inline_size, layout_context);
self.containing_block_inline_size(block, parent_flow_inline_size, layout_context.shared_context());
let mut solution = self.solve_inline_size_constraints(block, &input);
@ -2728,10 +2728,10 @@ impl ISizeAndMarginsComputer for AbsoluteNonReplaced {
fn containing_block_inline_size(&self,
block: &mut BlockFlow,
_: Au,
layout_context: &LayoutContext)
shared_context: &SharedStyleContext)
-> Au {
let opaque_block = OpaqueFlow::from_flow(block);
block.containing_block_size(&layout_context.shared_context().viewport_size, opaque_block).inline
block.containing_block_size(&shared_context.viewport_size, opaque_block).inline
}
fn set_inline_position_of_flow_if_necessary(&self,
@ -2855,10 +2855,10 @@ impl ISizeAndMarginsComputer for AbsoluteReplaced {
fn containing_block_inline_size(&self,
block: &mut BlockFlow,
_: Au,
layout_context: &LayoutContext)
shared_context: &SharedStyleContext)
-> Au {
let opaque_block = OpaqueFlow::from_flow(block);
block.containing_block_size(&layout_context.shared_context().viewport_size, opaque_block).inline
block.containing_block_size(&shared_context.viewport_size, opaque_block).inline
}
fn set_inline_position_of_flow_if_necessary(&self,

View file

@ -30,8 +30,10 @@ use std::fmt;
use std::ops::Add;
use std::sync::Arc;
use style::computed_values::{border_collapse, table_layout};
use style::context::StyleContext;
use style::logical_geometry::LogicalSize;
use style::properties::{ComputedValues, ServoComputedValues};
use style::servo::SharedStyleContext;
use style::values::CSSFloat;
use style::values::computed::LengthOrPercentageOrAuto;
use table::{ColumnComputedInlineSize, ColumnIntrinsicInlineSize};
@ -772,7 +774,7 @@ impl ISizeAndMarginsComputer for Table {
let containing_block_inline_size =
self.containing_block_inline_size(block,
parent_flow_inline_size,
layout_context);
layout_context.shared_context());
initial_computed_inline_size(block,
containing_block_inline_size,
self.minimum_width_of_all_columns,
@ -807,7 +809,7 @@ impl ISizeAndMarginsComputer for FloatedTable {
let containing_block_inline_size =
self.containing_block_inline_size(block,
parent_flow_inline_size,
layout_context);
layout_context.shared_context());
initial_computed_inline_size(block,
containing_block_inline_size,
self.minimum_width_of_all_columns,
@ -842,7 +844,7 @@ impl ISizeAndMarginsComputer for AbsoluteTable {
let containing_block_inline_size =
self.containing_block_inline_size(block,
parent_flow_inline_size,
layout_context);
layout_context.shared_context());
initial_computed_inline_size(block,
containing_block_inline_size,
self.minimum_width_of_all_columns,
@ -852,9 +854,9 @@ impl ISizeAndMarginsComputer for AbsoluteTable {
fn containing_block_inline_size(&self,
block: &mut BlockFlow,
parent_flow_inline_size: Au,
layout_context: &LayoutContext)
shared_context: &SharedStyleContext)
-> Au {
AbsoluteNonReplaced.containing_block_inline_size(block, parent_flow_inline_size, layout_context)
AbsoluteNonReplaced.containing_block_inline_size(block, parent_flow_inline_size, shared_context)
}
fn solve_inline_size_constraints(&self,