Bug 385270. Clean up textframe offset invariants: try #2 --- mContentLength no longer exists/is no longer trusted. r=smontagu,a=dbaron
git-svn-id: svn://10.0.0.236/trunk@232154 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -883,16 +883,6 @@ nsLineLayout::ReflowFrame(nsIFrame* aFrame,
|
||||
nscoord ty = y - psd->mReflowState->mComputedBorderPadding.top;
|
||||
mSpaceManager->Translate(tx, ty);
|
||||
|
||||
#ifdef IBMBIDI
|
||||
PRInt32 start, end;
|
||||
|
||||
if (mPresContext->BidiEnabled()) {
|
||||
if (aFrame->GetStateBits() & NS_FRAME_IS_BIDI) {
|
||||
aFrame->GetOffsets(start, end);
|
||||
}
|
||||
}
|
||||
#endif // IBMBIDI
|
||||
|
||||
nsIAtom* frameType = aFrame->GetType();
|
||||
PRInt32 savedOptionalBreakOffset;
|
||||
nsIContent* savedOptionalBreakContent =
|
||||
@@ -1086,24 +1076,6 @@ nsLineLayout::ReflowFrame(nsIFrame* aFrame,
|
||||
printf(" status=%x\n", aReflowStatus);
|
||||
#endif
|
||||
|
||||
if (aFrame->GetStateBits() & NS_FRAME_IS_BIDI) {
|
||||
// Since aReflowStatus may change, check it at the end
|
||||
if (NS_INLINE_IS_BREAK_BEFORE(aReflowStatus) ) {
|
||||
aFrame->AdjustOffsetsForBidi(start, end);
|
||||
}
|
||||
else if (!NS_FRAME_IS_COMPLETE(aReflowStatus) ) {
|
||||
PRInt32 newEnd;
|
||||
aFrame->GetOffsets(start, newEnd);
|
||||
if (newEnd != end) {
|
||||
nsIFrame* nextInFlow = aFrame->GetNextInFlow();
|
||||
if (nextInFlow) {
|
||||
nextInFlow->GetOffsets(start, end);
|
||||
nextInFlow->AdjustOffsetsForBidi(newEnd, end);
|
||||
} // nextInFlow
|
||||
} // newEnd != end
|
||||
} // !NS_FRAME_IS_COMPLETE(aReflowStatus)
|
||||
} // isBidiFrame
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user