LEFT | RIGHT |
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 564 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
575 | 575 |
576 bool hitTest(const HitTestRequest&, HitTestResult&, const HitTestLocation& l
ocationInContainer, const LayoutPoint& accumulatedOffset, HitTestFilter = HitTes
tAll); | 576 bool hitTest(const HitTestRequest&, HitTestResult&, const HitTestLocation& l
ocationInContainer, const LayoutPoint& accumulatedOffset, HitTestFilter = HitTes
tAll); |
577 virtual void updateHitTestResult(HitTestResult&, const LayoutPoint&); | 577 virtual void updateHitTestResult(HitTestResult&, const LayoutPoint&); |
578 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes
tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct
ion); | 578 virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTes
tLocation& locationInContainer, const LayoutPoint& accumulatedOffset, HitTestAct
ion); |
579 | 579 |
580 virtual Position positionForPoint(const LayoutPoint&); | 580 virtual Position positionForPoint(const LayoutPoint&); |
581 virtual VisiblePosition positionForPoint(const LayoutPoint&, const RenderFra
gmentContainer*); | 581 virtual VisiblePosition positionForPoint(const LayoutPoint&, const RenderFra
gmentContainer*); |
582 VisiblePosition createVisiblePosition(int offset, EAffinity) const; | 582 VisiblePosition createVisiblePosition(int offset, EAffinity) const; |
583 VisiblePosition createVisiblePosition(const Position&) const; | 583 VisiblePosition createVisiblePosition(const Position&) const; |
584 | 584 |
585 // Returns the containing block level element for this element. | 585 // returns the containing block level element for this element. |
586 WEBCORE_EXPORT RenderBlock* containingBlock() const; | 586 WEBCORE_EXPORT RenderBlock* containingBlock() const; |
587 RenderBlock* containingBlockForObjectInFlow() const; | 587 RenderBlock* containingBlockForObjectInFlow() const; |
588 | 588 |
589 // Convert the given local point to absolute coordinates. If MapCoordinatesF
lags includes UseTransforms, take transforms into account. | 589 // Convert the given local point to absolute coordinates. If MapCoordinatesF
lags includes UseTransforms, take transforms into account. |
590 WEBCORE_EXPORT FloatPoint localToAbsolute(const FloatPoint& localPoint = Flo
atPoint(), MapCoordinatesFlags = 0, bool* wasFixed = nullptr) const; | 590 WEBCORE_EXPORT FloatPoint localToAbsolute(const FloatPoint& localPoint = Flo
atPoint(), MapCoordinatesFlags = 0, bool* wasFixed = nullptr) const; |
591 FloatPoint absoluteToLocal(const FloatPoint&, MapCoordinatesFlags = 0) const
; | 591 FloatPoint absoluteToLocal(const FloatPoint&, MapCoordinatesFlags = 0) const
; |
592 | 592 |
593 // Convert a local quad to absolute coordinates, taking transforms into acco
unt. | 593 // Convert a local quad to absolute coordinates, taking transforms into acco
unt. |
594 FloatQuad localToAbsoluteQuad(const FloatQuad& quad, MapCoordinatesFlags mod
e = UseTransforms, bool* wasFixed = nullptr) const | 594 FloatQuad localToAbsoluteQuad(const FloatQuad& quad, MapCoordinatesFlags mod
e = UseTransforms, bool* wasFixed = nullptr) const |
595 { | 595 { |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
672 | 672 |
673 // Given a rect in the object's coordinate space, compute a rect suitable fo
r repainting | 673 // Given a rect in the object's coordinate space, compute a rect suitable fo
r repainting |
674 // that rect in view coordinates. | 674 // that rect in view coordinates. |
675 LayoutRect computeAbsoluteRepaintRect(const LayoutRect& r, bool fixed = fals
e) const | 675 LayoutRect computeAbsoluteRepaintRect(const LayoutRect& r, bool fixed = fals
e) const |
676 { | 676 { |
677 return computeRectForRepaint(r, nullptr, { fixed, false }); | 677 return computeRectForRepaint(r, nullptr, { fixed, false }); |
678 } | 678 } |
679 // Given a rect in the object's coordinate space, compute a rect suitable fo
r repainting | 679 // Given a rect in the object's coordinate space, compute a rect suitable fo
r repainting |
680 // that rect in the coordinate space of repaintContainer. | 680 // that rect in the coordinate space of repaintContainer. |
681 struct RepaintContext { | 681 struct RepaintContext { |
682 RepaintContext(bool hasPositionFixedDescendant = false, bool dirtyRectIs
Flipped = false) | 682 RepaintContext(bool hasPositionFixedDescendant = false, bool dirtyRectIs
Flipped = false, bool useInclusiveIntersection = false, bool* intersects = nullp
tr) |
683 : m_hasPositionFixedDescendant(hasPositionFixedDescendant) | 683 : m_hasPositionFixedDescendant(hasPositionFixedDescendant) |
684 , m_dirtyRectIsFlipped(dirtyRectIsFlipped) | 684 , m_dirtyRectIsFlipped(dirtyRectIsFlipped) |
| 685 , m_useInclusiveIntersection(useInclusiveIntersection) |
| 686 , m_intersects(intersects) |
685 { | 687 { |
686 } | 688 } |
687 bool m_hasPositionFixedDescendant; | 689 bool m_hasPositionFixedDescendant; |
688 bool m_dirtyRectIsFlipped; | 690 bool m_dirtyRectIsFlipped; |
| 691 bool m_useInclusiveIntersection; |
| 692 bool* m_intersects; |
689 }; | 693 }; |
690 virtual LayoutRect computeRectForRepaint(const LayoutRect&, const RenderLaye
rModelObject* repaintContainer, RepaintContext = { }) const; | 694 virtual LayoutRect computeRectForRepaint(const LayoutRect&, const RenderLaye
rModelObject* repaintContainer, RepaintContext = { }) const; |
691 virtual FloatRect computeFloatRectForRepaint(const FloatRect&, const RenderL
ayerModelObject* repaintContainer, bool fixed = false) const; | 695 virtual FloatRect computeFloatRectForRepaint(const FloatRect&, const RenderL
ayerModelObject* repaintContainer, bool fixed = false, bool useInclusiveIntersec
tion = false, bool* intersects = nullptr) const; |
692 | 696 |
693 virtual unsigned int length() const { return 1; } | 697 virtual unsigned int length() const { return 1; } |
694 | 698 |
695 bool isFloatingOrOutOfFlowPositioned() const { return (isFloating() || isOut
OfFlowPositioned()); } | 699 bool isFloatingOrOutOfFlowPositioned() const { return (isFloating() || isOut
OfFlowPositioned()); } |
696 | 700 |
697 enum SelectionState { | 701 enum SelectionState { |
698 SelectionNone, // The object is not selected. | 702 SelectionNone, // The object is not selected. |
699 SelectionStart, // The object either contains the start of a selection r
un or is the start of a run | 703 SelectionStart, // The object either contains the start of a selection r
un or is the start of a run |
700 SelectionInside, // The object is fully encompassed by a selection run | 704 SelectionInside, // The object is fully encompassed by a selection run |
701 SelectionEnd, // The object either contains the end of a selection run o
r is the end of a run | 705 SelectionEnd, // The object either contains the end of a selection run o
r is the end of a run |
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1112 SPECIALIZE_TYPE_TRAITS_BEGIN(WebCore::ToValueTypeName) \ | 1116 SPECIALIZE_TYPE_TRAITS_BEGIN(WebCore::ToValueTypeName) \ |
1113 static bool isType(const WebCore::RenderObject& renderer) { return renderer.
predicate; } \ | 1117 static bool isType(const WebCore::RenderObject& renderer) { return renderer.
predicate; } \ |
1114 SPECIALIZE_TYPE_TRAITS_END() | 1118 SPECIALIZE_TYPE_TRAITS_END() |
1115 | 1119 |
1116 #if ENABLE(TREE_DEBUGGING) | 1120 #if ENABLE(TREE_DEBUGGING) |
1117 // Outside the WebCore namespace for ease of invocation from the debugger. | 1121 // Outside the WebCore namespace for ease of invocation from the debugger. |
1118 void showNodeTree(const WebCore::RenderObject*); | 1122 void showNodeTree(const WebCore::RenderObject*); |
1119 void showLineTree(const WebCore::RenderObject*); | 1123 void showLineTree(const WebCore::RenderObject*); |
1120 void showRenderTree(const WebCore::RenderObject*); | 1124 void showRenderTree(const WebCore::RenderObject*); |
1121 #endif | 1125 #endif |
LEFT | RIGHT |