[New Multicolumn] Give up on stretching columns if they have already reached max height.

This doesn't change any behavior (column heights were already clamped against
max height), but it avoids an assertion failure that would occur if no space
shortage is recorded during a layout pass. Unbreakable content (lines) that's
taller than the column (max) height don't record space shortage, as columns
cannot be stretched beyond the (max) height anyway.

Note that layout might end up looking somewhat weird in situations like this,
since content that's supposed to be unbreakable is split across multiple
columns (instead of letting content overflow columns in the block direction).
For paged overflow (or printing) this is the desired behavior, though, since
overflow will be clipped. See also crbug.com/367651

This also avoids the same assertion failure when
fast/block/line-layout/line-break-removal-near-textarea-crash.html is run with
the new multicol implementation on Mac, because -webkit-appearance:button
imposes a min-height there. min-height is treated as height if height is auto.
That's crbug.com/65731

BUG=470527
R=dsinclair@chromium.org,jchaffraix@chromium.org

Review URL: https://codereview.chromium.org/1017263004

git-svn-id: svn://svn.chromium.org/blink/trunk@192636 bbb929c8-8fbe-4397-9dbb-9b2b20218538
3 files changed
tree: 2ea68b50df8b341d0056482ce026314d986f096a
  1. third_party/