aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/model.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/layout/model.rs')
-rw-r--r--components/layout/model.rs34
1 files changed, 10 insertions, 24 deletions
diff --git a/components/layout/model.rs b/components/layout/model.rs
index ee6d9e334c8..83b3e3a8879 100644
--- a/components/layout/model.rs
+++ b/components/layout/model.rs
@@ -147,14 +147,12 @@ impl MarginCollapseInfo {
) -> (CollapsibleMargins, Au) {
let state = match self.state {
MarginCollapseState::AccumulatingCollapsibleTopMargin => {
+ let content_block_size = fragment.style().content_block_size();
may_collapse_through = may_collapse_through &&
- match fragment.style().content_block_size() {
- Size::Auto => true,
- Size::LengthPercentage(ref lp) => {
- lp.is_definitely_zero() ||
- lp.maybe_to_used_value(containing_block_size).is_none()
- },
- };
+ content_block_size.is_definitely_zero() ||
+ content_block_size
+ .maybe_to_used_value(containing_block_size)
+ .is_none();
if may_collapse_through {
if fragment.style.min_block_size().is_auto() ||
@@ -522,12 +520,7 @@ impl MaybeAuto {
///
/// `style_length`: content size as given in the CSS.
pub fn style_length(style_length: &Size, container_size: Option<Au>) -> MaybeAuto {
- match style_length {
- Size::Auto => MaybeAuto::Auto,
- Size::LengthPercentage(ref lp) => {
- MaybeAuto::from_option(lp.0.maybe_to_used_value(container_size))
- },
- }
+ MaybeAuto::from_option(style_length.maybe_to_used_value(container_size))
}
#[inline]
@@ -595,17 +588,10 @@ impl SizeConstraint {
max_size: &MaxSize,
border: Option<Au>,
) -> SizeConstraint {
- let mut min_size = match min_size {
- Size::Auto => Au(0),
- Size::LengthPercentage(ref lp) => {
- lp.maybe_to_used_value(container_size).unwrap_or(Au(0))
- },
- };
-
- let mut max_size = match max_size {
- MaxSize::None => None,
- MaxSize::LengthPercentage(ref lp) => lp.maybe_to_used_value(container_size),
- };
+ let mut min_size = min_size
+ .maybe_to_used_value(container_size)
+ .unwrap_or(Au(0));
+ let mut max_size = max_size.maybe_to_used_value(container_size);
// Make sure max size is not smaller than min size.
max_size = max_size.map(|x| max(x, min_size));