Comment #13 on issue 131566 by
joh...@chromium.org: Drudge doesn't display
properly
http://code.google.com/p/chromium/issues/detail?id=131566
You mean revert
wkbug.com/108205 and simply don't lock multipliers? Yeah,
that might be best, but we'd need to be very careful to avoid bugs like
issue 167977, issue 168159 and issue 169795. They have subtle (but not
insurmountable) root causes; for example issue 168159 was caused by layout
cycles where:
1. a block got autosized
2. because it had been autosized its width changed
3. hence clusters were determined differently*
4. the new cluster contained less elements and hence failed to meet the
minimum amount of text criterion
5. the block stopped being autosized
6. hence the clusters were determined the same way they had been previously
7. repeat from step 1 :)
wkbug.com/108205 fixed this by preventing multipliers from changing; if we
reverted that we'd instead need to fix the root cause, and make sure the
layout was fully stable.
In one of the other cases, text sizes were changing during page load,
because the text was in a table with unspecified width, so initially the
table was quite narrow, but autosizing made the text inside wider, hence
the table grew, hence the text grew, hene the table grew, hence the text
grew, etc until the table reached the full width of its containing block
(each iteration happening according to the incremental layouts taking place
during page load). IIRC Mozilla solve this by being smart about the way
text caused shrink-wrapping blocks to expand: in cases where font size is
proportional to block width, and block width is proportional to font size,
they immediately fully expand the block to the width of its containing
block. We would have to do something similar...
*: the reason clusters are determined differently is probably due to one of
wkbug.com/108411,
wkbug.com/109054,
wkbug.com/109573 and
wkbug.com/109825
whose job was to fix reddit (issue 175178).