| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) |
| 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) | 3 * (C) 2000 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2000 Dirk Mueller (mueller@kde.org) | 4 * (C) 2000 Dirk Mueller (mueller@kde.org) |
| 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
| 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r
ights reserved. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. All r
ights reserved. |
| 7 * Copyright (C) 2009 Google Inc. All rights reserved. | 7 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 8 * | 8 * |
| 9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
| 10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
| (...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 498 // SVG uses FloatPoint precise hit testing, and passes the point in parent | 498 // SVG uses FloatPoint precise hit testing, and passes the point in parent |
| 499 // coordinates instead of in paint invalidaiton container coordinates. Event
ually the | 499 // coordinates instead of in paint invalidaiton container coordinates. Event
ually the |
| 500 // rest of the rendering tree will move to a similar model. | 500 // rest of the rendering tree will move to a similar model. |
| 501 virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const F
loatPoint& pointInParent, HitTestAction); | 501 virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const F
loatPoint& pointInParent, HitTestAction); |
| 502 | 502 |
| 503 bool isAnonymous() const { return m_bitfields.isAnonymous(); } | 503 bool isAnonymous() const { return m_bitfields.isAnonymous(); } |
| 504 bool isAnonymousBlock() const | 504 bool isAnonymousBlock() const |
| 505 { | 505 { |
| 506 // This function is kept in sync with anonymous block creation condition
s in | 506 // This function is kept in sync with anonymous block creation condition
s in |
| 507 // LayoutBlock::createAnonymousBlock(). This includes creating an anonym
ous | 507 // LayoutBlock::createAnonymousBlock(). This includes creating an anonym
ous |
| 508 // LayoutBlock having a BLOCK or BOX display. Other classes such as Rend
erTextFragment | 508 // LayoutBlock having a BLOCK or BOX display. Other classes such as Layo
utTextFragment |
| 509 // are not LayoutBlocks and will return false. See https://bugs.webkit.o
rg/show_bug.cgi?id=56709. | 509 // are not LayoutBlocks and will return false. See https://bugs.webkit.o
rg/show_bug.cgi?id=56709. |
| 510 return isAnonymous() && (style()->display() == BLOCK || style()->display
() == BOX) && style()->styleType() == NOPSEUDO && isLayoutBlock() && !isListMark
er() && !isLayoutFlowThread() && !isLayoutMultiColumnSet() | 510 return isAnonymous() && (style()->display() == BLOCK || style()->display
() == BOX) && style()->styleType() == NOPSEUDO && isLayoutBlock() && !isListMark
er() && !isLayoutFlowThread() && !isLayoutMultiColumnSet() |
| 511 && !isLayoutFullScreen() | 511 && !isLayoutFullScreen() |
| 512 && !isLayoutFullScreenPlaceholder(); | 512 && !isLayoutFullScreenPlaceholder(); |
| 513 } | 513 } |
| 514 bool isAnonymousColumnsBlock() const { return style()->specifiesColumns() &&
isAnonymousBlock(); } | 514 bool isAnonymousColumnsBlock() const { return style()->specifiesColumns() &&
isAnonymousBlock(); } |
| 515 bool isAnonymousColumnSpanBlock() const { return style()->columnSpan() && is
AnonymousBlock(); } | 515 bool isAnonymousColumnSpanBlock() const { return style()->columnSpan() && is
AnonymousBlock(); } |
| 516 bool isElementContinuation() const { return node() && node()->renderer() !=
this; } | 516 bool isElementContinuation() const { return node() && node()->renderer() !=
this; } |
| 517 bool isInlineElementContinuation() const { return isElementContinuation() &&
isInline(); } | 517 bool isInlineElementContinuation() const { return isElementContinuation() &&
isInline(); } |
| 518 virtual LayoutBoxModelObject* virtualContinuation() const { return 0; } | 518 virtual LayoutBoxModelObject* virtualContinuation() const { return 0; } |
| (...skipping 668 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1187 virtual bool paintInvalidationStateIsDirty() const | 1187 virtual bool paintInvalidationStateIsDirty() const |
| 1188 { | 1188 { |
| 1189 return neededLayoutBecauseOfChildren() || shouldCheckForPaintInvalidatio
nRegardlessOfPaintInvalidationState(); | 1189 return neededLayoutBecauseOfChildren() || shouldCheckForPaintInvalidatio
nRegardlessOfPaintInvalidationState(); |
| 1190 } | 1190 } |
| 1191 #endif | 1191 #endif |
| 1192 | 1192 |
| 1193 virtual void invalidatePaintOfSubtreesIfNeeded(const PaintInvalidationState&
childPaintInvalidationState); | 1193 virtual void invalidatePaintOfSubtreesIfNeeded(const PaintInvalidationState&
childPaintInvalidationState); |
| 1194 virtual PaintInvalidationReason invalidatePaintIfNeeded(const PaintInvalidat
ionState&, const LayoutBoxModelObject& paintInvalidationContainer); | 1194 virtual PaintInvalidationReason invalidatePaintIfNeeded(const PaintInvalidat
ionState&, const LayoutBoxModelObject& paintInvalidationContainer); |
| 1195 | 1195 |
| 1196 // When this object is invalidated for paint, this method is called to inval
idate any DisplayItemClients | 1196 // When this object is invalidated for paint, this method is called to inval
idate any DisplayItemClients |
| 1197 // owned by this object, including the object itself, RenderText/LayoutInlin
e line boxes, scrollbars, etc., | 1197 // owned by this object, including the object itself, LayoutText/LayoutInlin
e line boxes, scrollbars, etc., |
| 1198 // not including children which will be invalidated normally during invalida
teTreeIfNeeded(). | 1198 // not including children which will be invalidated normally during invalida
teTreeIfNeeded(). |
| 1199 virtual void invalidateDisplayItemClients(DisplayItemList*) const; | 1199 virtual void invalidateDisplayItemClients(DisplayItemList*) const; |
| 1200 | 1200 |
| 1201 private: | 1201 private: |
| 1202 void setLayoutDidGetCalledSinceLastFrame() | 1202 void setLayoutDidGetCalledSinceLastFrame() |
| 1203 { | 1203 { |
| 1204 m_bitfields.setLayoutDidGetCalledSinceLastFrame(true); | 1204 m_bitfields.setLayoutDidGetCalledSinceLastFrame(true); |
| 1205 | 1205 |
| 1206 // Make sure our parent is marked as needing invalidation. | 1206 // Make sure our parent is marked as needing invalidation. |
| 1207 // This would be unneeded if we allowed sub-tree invalidation (akin to s
ub-tree layouts). | 1207 // This would be unneeded if we allowed sub-tree invalidation (akin to s
ub-tree layouts). |
| (...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1633 void showTree(const blink::LayoutObject*); | 1633 void showTree(const blink::LayoutObject*); |
| 1634 void showLineTree(const blink::LayoutObject*); | 1634 void showLineTree(const blink::LayoutObject*); |
| 1635 void showRenderTree(const blink::LayoutObject* object1); | 1635 void showRenderTree(const blink::LayoutObject* object1); |
| 1636 // We don't make object2 an optional parameter so that showRenderTree | 1636 // We don't make object2 an optional parameter so that showRenderTree |
| 1637 // can be called from gdb easily. | 1637 // can be called from gdb easily. |
| 1638 void showRenderTree(const blink::LayoutObject* object1, const blink::LayoutObjec
t* object2); | 1638 void showRenderTree(const blink::LayoutObject* object1, const blink::LayoutObjec
t* object2); |
| 1639 | 1639 |
| 1640 #endif | 1640 #endif |
| 1641 | 1641 |
| 1642 #endif // LayoutObject_h | 1642 #endif // LayoutObject_h |
| OLD | NEW |