Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(992)

Side by Side Diff: Source/core/layout/LayoutBlockFlow.h

Issue 1152953002: Remove some duplicated code when accounting for floats at line-end (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved. 5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * Copyright (C) 2013 Google Inc. All rights reserved. 7 * Copyright (C) 2013 Google Inc. All rights reserved.
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions are 10 * modification, are permitted provided that the following conditions are
(...skipping 505 matching lines...) Expand 10 before | Expand all | Expand 10 after
516 float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceR un, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache&, Wo rdMeasurements&); 516 float& availableLogicalWidth, BidiRun* firstRun, BidiRun* trailingSpaceR un, GlyphOverflowAndFallbackFontsMap& textBoxDataMap, VerticalPositionCache&, Wo rdMeasurements&);
517 void computeBlockDirectionPositionsForLine(RootInlineBox*, BidiRun*, GlyphOv erflowAndFallbackFontsMap&, VerticalPositionCache&); 517 void computeBlockDirectionPositionsForLine(RootInlineBox*, BidiRun*, GlyphOv erflowAndFallbackFontsMap&, VerticalPositionCache&);
518 void appendFloatingObjectToLastLine(FloatingObject*); 518 void appendFloatingObjectToLastLine(FloatingObject*);
519 // Helper function for layoutInlineChildren() 519 // Helper function for layoutInlineChildren()
520 RootInlineBox* createLineBoxesFromBidiRuns(unsigned bidiLevel, BidiRunList<B idiRun>&, const InlineIterator& end, LineInfo&, VerticalPositionCache&, BidiRun* trailingSpaceRun, WordMeasurements&); 520 RootInlineBox* createLineBoxesFromBidiRuns(unsigned bidiLevel, BidiRunList<B idiRun>&, const InlineIterator& end, LineInfo&, VerticalPositionCache&, BidiRun* trailingSpaceRun, WordMeasurements&);
521 void layoutRunsAndFloats(LineLayoutState&); 521 void layoutRunsAndFloats(LineLayoutState&);
522 const InlineIterator& restartLayoutRunsAndFloatsInRange(LayoutUnit oldLogica lHeight, LayoutUnit newLogicalHeight, FloatingObject* lastFloatFromPreviousLine , InlineBidiResolver&, const InlineIterator&); 522 const InlineIterator& restartLayoutRunsAndFloatsInRange(LayoutUnit oldLogica lHeight, LayoutUnit newLogicalHeight, FloatingObject* lastFloatFromPreviousLine , InlineBidiResolver&, const InlineIterator&);
523 void layoutRunsAndFloatsInRange(LineLayoutState&, InlineBidiResolver&, 523 void layoutRunsAndFloatsInRange(LineLayoutState&, InlineBidiResolver&,
524 const InlineIterator& cleanLineStart, const BidiStatus& cleanLineBidiSta tus); 524 const InlineIterator& cleanLineStart, const BidiStatus& cleanLineBidiSta tus);
525 void linkToEndLineIfNeeded(LineLayoutState&); 525 void linkToEndLineIfNeeded(LineLayoutState&);
526 bool appendFloatsToEndOfLine(LineLayoutState&, bool updateFloatIndex);
526 static void markDirtyFloatsForPaintInvalidation(Vector<FloatWithRect>& float s); 527 static void markDirtyFloatsForPaintInvalidation(Vector<FloatWithRect>& float s);
527 void checkFloatsInCleanLine(RootInlineBox*, Vector<FloatWithRect>&, size_t& floatIndex, bool& encounteredNewFloat, bool& dirtiedByFloat); 528 void checkFloatsInCleanLine(RootInlineBox*, Vector<FloatWithRect>&, size_t& floatIndex, bool& encounteredNewFloat, bool& dirtiedByFloat);
528 RootInlineBox* determineStartPosition(LineLayoutState&, InlineBidiResolver&) ; 529 RootInlineBox* determineStartPosition(LineLayoutState&, InlineBidiResolver&) ;
529 void determineEndPosition(LineLayoutState&, RootInlineBox* startBox, InlineI terator& cleanLineStart, BidiStatus& cleanLineBidiStatus); 530 void determineEndPosition(LineLayoutState&, RootInlineBox* startBox, InlineI terator& cleanLineStart, BidiStatus& cleanLineBidiStatus);
530 bool checkPaginationAndFloatsAtEndLine(LineLayoutState&); 531 bool checkPaginationAndFloatsAtEndLine(LineLayoutState&);
531 bool matchedEndLine(LineLayoutState&, const InlineBidiResolver&, const Inlin eIterator& endLineStart, const BidiStatus& endLineStatus); 532 bool matchedEndLine(LineLayoutState&, const InlineBidiResolver&, const Inlin eIterator& endLineStart, const BidiStatus& endLineStatus);
532 void deleteEllipsisLineBoxes(); 533 void deleteEllipsisLineBoxes();
533 void checkLinesForTextOverflow(); 534 void checkLinesForTextOverflow();
534 // Positions new floats and also adjust all floats encountered on the line i f any of them 535 // Positions new floats and also adjust all floats encountered on the line i f any of them
535 // have to move to the next page/column. 536 // have to move to the next page/column.
536 bool positionNewFloatOnLine(FloatingObject* newFloat, FloatingObject* lastFl oatFromPreviousLine, LineInfo&, LineWidth&); 537 bool positionNewFloatOnLine(FloatingObject* newFloat, FloatingObject* lastFl oatFromPreviousLine, LineInfo&, LineWidth&);
537 void positionDialog(); 538 void positionDialog();
538 539
539 // END METHODS DEFINED IN LayoutBlockFlowLine 540 // END METHODS DEFINED IN LayoutBlockFlowLine
540 541
541 }; 542 };
542 543
543 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBlockFlow, isLayoutBlockFlow()); 544 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBlockFlow, isLayoutBlockFlow());
544 545
545 } // namespace blink 546 } // namespace blink
546 547
547 #endif // LayoutBlockFlow_h 548 #endif // LayoutBlockFlow_h
OLDNEW
« no previous file with comments | « no previous file | Source/core/layout/LayoutBlockFlowLine.cpp » ('j') | Source/core/layout/LayoutBlockFlowLine.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698