servo/components
Patrick Walton 5b4380389e layout: Enhance the heuristic that guesses the inline size of block
formatting contexts.

The widths of block formatting contexts depend on the floats prior to
them. To avoid a circular dependency between width assignment and height
assignment, we must guess their widths during the assign-widths pass.
The old code simply used the size of the last float, whether
left-floated or right-floated, but this proved insufficient to handle
layouts like those seen on Reddit. The new heuristic keeps track of both
left and right floats independently and sums the width of all left and
right floats to determine the width of a block formatting context. This
is still insufficient to properly lay out Reddit, but the results are
much more acceptable.

A fully correct approach will require that blocks be laid out again if
the initial guess proved to be incorrect. A `TODO` is in the code to
handle this case.
2014-09-25 17:50:24 -07:00
..
canvas Reinstate errors for unused variables and imports. 2014-09-13 23:38:00 -06:00
compositing Compound scrolling offsets when setting content offset 2014-09-25 07:57:47 -07:00
devtools Fix other warnings in devtools 2014-09-23 11:47:47 -07:00
devtools_traits Disable non_snake_case warnings in devtools 2014-09-23 11:45:08 -07:00
gfx Merge pull request #3466 from Ms2ger/into_string 2014-09-24 08:10:17 +05:30
layout layout: Enhance the heuristic that guesses the inline size of block 2014-09-25 17:50:24 -07:00
layout_traits Upgrade to rustc 0.12.0-pre (4d2af3861 2014-09-17 15:51:11 +0000) 2014-09-20 13:00:06 -07:00
msg Use JSTraceable everywhere 2014-09-24 05:44:49 +05:30
net Eliminate warnings 2014-09-20 13:00:55 -07:00
plugins Merge pull request #3480 from zwarich/trailing-whitespace 2014-09-25 17:00:34 -06:00
script Merge pull request #3480 from zwarich/trailing-whitespace 2014-09-25 17:00:34 -06:00
script_traits Upgrade to rustc 0.12.0-pre (4d2af3861 2014-09-17 15:51:11 +0000) 2014-09-20 13:00:06 -07:00
style Merge pull request #3465 from Ms2ger/ns 2014-09-24 10:30:13 -04:00
util Handle null strings in Namespace::new. 2014-09-23 22:22:45 +02:00