Bug 410857 part 1 - Traverse overflow lines too so we don't miss some text. r=jfkthame

This commit is contained in:
Mats Palmgren 2017-02-20 17:43:08 +01:00
parent 19479d7f10
commit a908f9773e
2 changed files with 7 additions and 1 deletions

View File

@ -695,7 +695,11 @@ nsBidiPresUtils::Resolve(nsBlockFrame* aBlockFrame)
nsBlockInFlowLineIterator lineIter(block, block->LinesBegin());
bpd.mPrevFrame = nullptr;
TraverseFrames(aBlockFrame, &lineIter, block->PrincipalChildList().FirstChild(), &bpd);
// XXX what about overflow lines?
nsBlockFrame::FrameLines* overflowLines = block->GetOverflowLines();
if (overflowLines) {
nsBlockInFlowLineIterator lineIter(block, overflowLines->mLines.begin(), true);
TraverseFrames(aBlockFrame, &lineIter, block->PrincipalChildList().FirstChild(), &bpd);
}
}
if (ch != 0) {

View File

@ -1019,7 +1019,9 @@ public:
private:
friend class nsBlockFrame;
friend class nsBidiPresUtils;
// XXX nsBlockFrame uses this internally in one place. Try to remove it.
// XXX uhm, and nsBidiPresUtils::Resolve too.
nsBlockInFlowLineIterator(nsBlockFrame* aFrame, LineIterator aLine, bool aInOverflow);
nsBlockFrame* mFrame;