Bug 1134432 part 1 - Suppress break inside ruby when calculating intrinsic isize. r=dbaron

Breaks during reflow have been suppressed in bug 1098272.
This commit is contained in:
Xidorn Quan 2015-02-22 00:39:33 +13:00
parent 8f99dc2e85
commit a18446ea1b
2 changed files with 7 additions and 2 deletions

View File

@ -164,14 +164,18 @@ BRFrame::Reflow(nsPresContext* aPresContext,
BRFrame::AddInlineMinISize(nsRenderingContext *aRenderingContext,
nsIFrame::InlineMinISizeData *aData)
{
aData->ForceBreak(aRenderingContext);
if (!StyleContext()->IsInlineDescendantOfRuby()) {
aData->ForceBreak(aRenderingContext);
}
}
/* virtual */ void
BRFrame::AddInlinePrefISize(nsRenderingContext *aRenderingContext,
nsIFrame::InlinePrefISizeData *aData)
{
aData->ForceBreak(aRenderingContext);
if (!StyleContext()->IsInlineDescendantOfRuby()) {
aData->ForceBreak(aRenderingContext);
}
}
/* virtual */ nscoord

View File

@ -3917,6 +3917,7 @@ nsFrame::AddInlineMinISize(nsRenderingContext *aRenderingContext,
NS_ASSERTION(GetParent(), "Must have a parent if we get here!");
nsIFrame* parent = GetParent();
bool canBreak = !CanContinueTextRun() &&
!parent->StyleContext()->IsInlineDescendantOfRuby() &&
parent->StyleText()->WhiteSpaceCanWrap(parent);
if (canBreak)