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. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. |
7 * All rights reserved. | 7 * All rights reserved. |
8 * Copyright (C) 2009 Google Inc. All rights reserved. | 8 * Copyright (C) 2009 Google Inc. All rights reserved. |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 15 matching lines...) Expand all Loading... |
26 | 26 |
27 #ifndef LayoutObject_h | 27 #ifndef LayoutObject_h |
28 #define LayoutObject_h | 28 #define LayoutObject_h |
29 | 29 |
30 #include "core/CoreExport.h" | 30 #include "core/CoreExport.h" |
31 #include "core/dom/Document.h" | 31 #include "core/dom/Document.h" |
32 #include "core/dom/DocumentLifecycle.h" | 32 #include "core/dom/DocumentLifecycle.h" |
33 #include "core/editing/PositionWithAffinity.h" | 33 #include "core/editing/PositionWithAffinity.h" |
34 #include "core/fetch/ImageResourceObserver.h" | 34 #include "core/fetch/ImageResourceObserver.h" |
35 #include "core/layout/LayoutObjectChildList.h" | 35 #include "core/layout/LayoutObjectChildList.h" |
| 36 #include "core/layout/MapCoordinatesFlags.h" |
36 #include "core/layout/PaintInvalidationState.h" | 37 #include "core/layout/PaintInvalidationState.h" |
37 #include "core/layout/ScrollAlignment.h" | 38 #include "core/layout/ScrollAlignment.h" |
38 #include "core/layout/SubtreeLayoutScope.h" | 39 #include "core/layout/SubtreeLayoutScope.h" |
39 #include "core/layout/api/HitTestAction.h" | 40 #include "core/layout/api/HitTestAction.h" |
40 #include "core/layout/api/SelectionState.h" | 41 #include "core/layout/api/SelectionState.h" |
41 #include "core/layout/compositing/CompositingState.h" | 42 #include "core/layout/compositing/CompositingState.h" |
42 #include "core/paint/PaintPhase.h" | 43 #include "core/paint/PaintPhase.h" |
43 #include "core/style/ComputedStyle.h" | 44 #include "core/style/ComputedStyle.h" |
44 #include "platform/geometry/FloatQuad.h" | 45 #include "platform/geometry/FloatQuad.h" |
45 #include "platform/geometry/LayoutRect.h" | 46 #include "platform/geometry/LayoutRect.h" |
(...skipping 27 matching lines...) Expand all Loading... |
73 | 74 |
74 enum CursorDirective { SetCursorBasedOnStyle, SetCursor, DoNotSetCursor }; | 75 enum CursorDirective { SetCursorBasedOnStyle, SetCursor, DoNotSetCursor }; |
75 | 76 |
76 enum HitTestFilter { HitTestAll, HitTestSelf, HitTestDescendants }; | 77 enum HitTestFilter { HitTestAll, HitTestSelf, HitTestDescendants }; |
77 | 78 |
78 enum MarkingBehavior { | 79 enum MarkingBehavior { |
79 MarkOnlyThis, | 80 MarkOnlyThis, |
80 MarkContainerChain, | 81 MarkContainerChain, |
81 }; | 82 }; |
82 | 83 |
83 enum MapCoordinatesMode { | |
84 IsFixed = 1 << 0, | |
85 UseTransforms = 1 << 1, | |
86 | |
87 // When walking up the containing block chain, applies a container flip for | |
88 // the first element found, if any, for which isFlippedBlocksWritingMode is | |
89 // true. This option should generally be used when mapping a source rect in | |
90 // the "physical coordinates with flipped block-flow" coordinate space (see | |
91 // LayoutBoxModelObject.h) to one in a physical destination space. | |
92 ApplyContainerFlip = 1 << 2, | |
93 TraverseDocumentBoundaries = 1 << 3, | |
94 | |
95 // Applies to LayoutView::mapLocalToAncestor() and LayoutView:: | |
96 // mapToVisualRectInAncestorSpace() only, to indicate the input point or rect | |
97 // is in frame coordinates instead of frame contents coordinates. This | |
98 // disables view clipping and scroll offset adjustment. | |
99 // TODO(wangxianzhu): Remove this when root-layer-scrolls launches. | |
100 InputIsInFrameCoordinates = 1 << 4, | |
101 }; | |
102 typedef unsigned MapCoordinatesFlags; | |
103 | |
104 enum ScheduleRelayoutBehavior { ScheduleRelayout, DontScheduleRelayout }; | 84 enum ScheduleRelayoutBehavior { ScheduleRelayout, DontScheduleRelayout }; |
105 | 85 |
106 const LayoutUnit& caretWidth(); | 86 const LayoutUnit& caretWidth(); |
107 | 87 |
108 struct AnnotatedRegionValue { | 88 struct AnnotatedRegionValue { |
109 DISALLOW_NEW_EXCEPT_PLACEMENT_NEW(); | 89 DISALLOW_NEW_EXCEPT_PLACEMENT_NEW(); |
110 bool operator==(const AnnotatedRegionValue& o) const { | 90 bool operator==(const AnnotatedRegionValue& o) const { |
111 return draggable == o.draggable && bounds == o.bounds; | 91 return draggable == o.draggable && bounds == o.bounds; |
112 } | 92 } |
113 | 93 |
(...skipping 2482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2596 CORE_EXPORT void showLineTree(const blink::LayoutObject*); | 2576 CORE_EXPORT void showLineTree(const blink::LayoutObject*); |
2597 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); | 2577 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); |
2598 // We don't make object2 an optional parameter so that showLayoutTree | 2578 // We don't make object2 an optional parameter so that showLayoutTree |
2599 // can be called from gdb easily. | 2579 // can be called from gdb easily. |
2600 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, | 2580 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, |
2601 const blink::LayoutObject* object2); | 2581 const blink::LayoutObject* object2); |
2602 | 2582 |
2603 #endif | 2583 #endif |
2604 | 2584 |
2605 #endif // LayoutObject_h | 2585 #endif // LayoutObject_h |
OLD | NEW |