Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. |
| 5 * | 5 * |
| 6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
| 7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
| 8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
| 9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
| 10 * | 10 * |
| (...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 238 void mapRectToPaintInvalidationBacking(const LayoutBoxModelObject* paintInva lidationContainer, LayoutRect&, const PaintInvalidationState*) const final; | 238 void mapRectToPaintInvalidationBacking(const LayoutBoxModelObject* paintInva lidationContainer, LayoutRect&, const PaintInvalidationState*) const final; |
| 239 | 239 |
| 240 // This method differs from clippedOverflowRectForPaintInvalidation in that it includes | 240 // This method differs from clippedOverflowRectForPaintInvalidation in that it includes |
| 241 // the rects for culled inline boxes, which aren't necessary for paint inval idation. | 241 // the rects for culled inline boxes, which aren't necessary for paint inval idation. |
| 242 LayoutRect clippedOverflowRect(const LayoutBoxModelObject*, const PaintInval idationState* = nullptr) const; | 242 LayoutRect clippedOverflowRect(const LayoutBoxModelObject*, const PaintInval idationState* = nullptr) const; |
| 243 | 243 |
| 244 void mapLocalToContainer(const LayoutBoxModelObject* paintInvalidationContai ner, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0, const PaintInvalidationState* = nullptr) const override; | 244 void mapLocalToContainer(const LayoutBoxModelObject* paintInvalidationContai ner, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0, const PaintInvalidationState* = nullptr) const override; |
| 245 | 245 |
| 246 PositionWithAffinity positionForPoint(const LayoutPoint&) final; | 246 PositionWithAffinity positionForPoint(const LayoutPoint&) final; |
| 247 | 247 |
| 248 LayoutRect frameRectForStickyPositioning() const override final { return Lay outRect(linesBoundingBox()); } | |
|
chrishtr
2015/11/04 01:55:18
Rather than adding a new virtual API method to han
flackr
2015/11/25 20:47:53
Done.
| |
| 249 | |
| 248 IntRect borderBoundingBox() const final | 250 IntRect borderBoundingBox() const final |
| 249 { | 251 { |
| 250 IntRect boundingBox = linesBoundingBox(); | 252 IntRect boundingBox = linesBoundingBox(); |
| 251 return IntRect(0, 0, boundingBox.width(), boundingBox.height()); | 253 return IntRect(0, 0, boundingBox.width(), boundingBox.height()); |
| 252 } | 254 } |
| 253 | 255 |
| 254 virtual InlineFlowBox* createInlineFlowBox(); // Subclassed by SVG and Ruby | 256 virtual InlineFlowBox* createInlineFlowBox(); // Subclassed by SVG and Ruby |
| 255 | 257 |
| 256 void dirtyLinesFromChangedChild(LayoutObject* child) final { m_lineBoxes.dir tyLinesFromChangedChild(LineLayoutItem(this), LineLayoutItem(child)); } | 258 void dirtyLinesFromChangedChild(LayoutObject* child) final { m_lineBoxes.dir tyLinesFromChangedChild(LineLayoutItem(this), LineLayoutItem(child)); } |
| 257 | 259 |
| (...skipping 16 matching lines...) Expand all Loading... | |
| 274 | 276 |
| 275 LayoutObjectChildList m_children; | 277 LayoutObjectChildList m_children; |
| 276 LineBoxList m_lineBoxes; // All of the line boxes created for this inline fl ow. For example, <i>Hello<br>world.</i> will have two <i> line boxes. | 278 LineBoxList m_lineBoxes; // All of the line boxes created for this inline fl ow. For example, <i>Hello<br>world.</i> will have two <i> line boxes. |
| 277 }; | 279 }; |
| 278 | 280 |
| 279 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutInline, isLayoutInline()); | 281 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutInline, isLayoutInline()); |
| 280 | 282 |
| 281 } // namespace blink | 283 } // namespace blink |
| 282 | 284 |
| 283 #endif // LayoutInline_h | 285 #endif // LayoutInline_h |
| OLD | NEW |