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) layout_context: &LayoutContext)
-> ISizeConstraintInput { -> ISizeConstraintInput {
let containing_block_inline_size = 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_block_direction_margins(containing_block_inline_size);
block.fragment.compute_inline_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(), MaybeAuto::from_style(block.fragment().style().content_inline_size(),
self.containing_block_inline_size(block, self.containing_block_inline_size(block,
parent_flow_inline_size, parent_flow_inline_size,
layout_context)) layout_context.shared_context()))
} }
fn containing_block_inline_size(&self, fn containing_block_inline_size(&self,
_: &mut BlockFlow, _: &mut BlockFlow,
parent_flow_inline_size: Au, parent_flow_inline_size: Au,
_: &LayoutContext) _: &SharedStyleContext)
-> Au { -> Au {
parent_flow_inline_size parent_flow_inline_size
} }
@ -2410,7 +2410,7 @@ pub trait ISizeAndMarginsComputer {
layout_context); layout_context);
let containing_block_inline_size = 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); let mut solution = self.solve_inline_size_constraints(block, &input);
@ -2728,10 +2728,10 @@ impl ISizeAndMarginsComputer for AbsoluteNonReplaced {
fn containing_block_inline_size(&self, fn containing_block_inline_size(&self,
block: &mut BlockFlow, block: &mut BlockFlow,
_: Au, _: Au,
layout_context: &LayoutContext) shared_context: &SharedStyleContext)
-> Au { -> Au {
let opaque_block = OpaqueFlow::from_flow(block); 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, fn set_inline_position_of_flow_if_necessary(&self,
@ -2855,10 +2855,10 @@ impl ISizeAndMarginsComputer for AbsoluteReplaced {
fn containing_block_inline_size(&self, fn containing_block_inline_size(&self,
block: &mut BlockFlow, block: &mut BlockFlow,
_: Au, _: Au,
layout_context: &LayoutContext) shared_context: &SharedStyleContext)
-> Au { -> Au {
let opaque_block = OpaqueFlow::from_flow(block); 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, fn set_inline_position_of_flow_if_necessary(&self,

View file

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