Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 Copyright (C) 1997 Martin Jones (mjones@kde.org) | 2 Copyright (C) 1997 Martin Jones (mjones@kde.org) |
| 3 (C) 1998 Waldo Bastian (bastian@kde.org) | 3 (C) 1998 Waldo Bastian (bastian@kde.org) |
| 4 (C) 1998, 1999 Torben Weis (weis@kde.org) | 4 (C) 1998, 1999 Torben Weis (weis@kde.org) |
| 5 (C) 1999 Lars Knoll (knoll@kde.org) | 5 (C) 1999 Lars Knoll (knoll@kde.org) |
| 6 (C) 1999 Antti Koivisto (koivisto@kde.org) | 6 (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 7 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights | 7 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights |
| 8 reserved. | 8 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 13 matching lines...) Expand all Loading... | |
| 24 */ | 24 */ |
| 25 | 25 |
| 26 #ifndef FrameView_h | 26 #ifndef FrameView_h |
| 27 #define FrameView_h | 27 #define FrameView_h |
| 28 | 28 |
| 29 #include "core/CoreExport.h" | 29 #include "core/CoreExport.h" |
| 30 #include "core/dom/DocumentLifecycle.h" | 30 #include "core/dom/DocumentLifecycle.h" |
| 31 #include "core/frame/FrameViewAutoSizeInfo.h" | 31 #include "core/frame/FrameViewAutoSizeInfo.h" |
| 32 #include "core/frame/LayoutSubtreeRootList.h" | 32 #include "core/frame/LayoutSubtreeRootList.h" |
| 33 #include "core/frame/RootFrameViewport.h" | 33 #include "core/frame/RootFrameViewport.h" |
| 34 #include "core/layout/MapCoordinatesFlags.h" | |
| 34 #include "core/layout/ScrollAnchor.h" | 35 #include "core/layout/ScrollAnchor.h" |
| 35 #include "core/paint/FirstMeaningfulPaintDetector.h" | 36 #include "core/paint/FirstMeaningfulPaintDetector.h" |
| 36 #include "core/paint/ObjectPaintProperties.h" | 37 #include "core/paint/ObjectPaintProperties.h" |
| 37 #include "core/paint/PaintInvalidationCapableScrollableArea.h" | 38 #include "core/paint/PaintInvalidationCapableScrollableArea.h" |
| 38 #include "core/paint/PaintPhase.h" | 39 #include "core/paint/PaintPhase.h" |
| 39 #include "core/paint/ScrollbarManager.h" | 40 #include "core/paint/ScrollbarManager.h" |
| 40 #include "platform/RuntimeEnabledFeatures.h" | 41 #include "platform/RuntimeEnabledFeatures.h" |
| 41 #include "platform/Widget.h" | 42 #include "platform/Widget.h" |
| 42 #include "platform/geometry/IntRect.h" | 43 #include "platform/geometry/IntRect.h" |
| 43 #include "platform/geometry/LayoutRect.h" | 44 #include "platform/geometry/LayoutRect.h" |
| (...skipping 716 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 760 void enqueueScrollAnchoringAdjustment(ScrollableArea*); | 761 void enqueueScrollAnchoringAdjustment(ScrollableArea*); |
| 761 void performScrollAnchoringAdjustments(); | 762 void performScrollAnchoringAdjustments(); |
| 762 | 763 |
| 763 // For PaintInvalidator temporarily. TODO(wangxianzhu): Move into | 764 // For PaintInvalidator temporarily. TODO(wangxianzhu): Move into |
| 764 // PaintInvalidator. | 765 // PaintInvalidator. |
| 765 void invalidatePaintIfNeeded(const PaintInvalidationState&); | 766 void invalidatePaintIfNeeded(const PaintInvalidationState&); |
| 766 | 767 |
| 767 // Only for SPv2. | 768 // Only for SPv2. |
| 768 std::unique_ptr<JSONObject> compositedLayersAsJSON(LayerTreeFlags); | 769 std::unique_ptr<JSONObject> compositedLayersAsJSON(LayerTreeFlags); |
| 769 | 770 |
| 771 // Called on a view for a LocalFrame with a RemoteFrame parent. This makes | |
| 772 // viewport intersection available that accounts for remote ancestor frames | |
| 773 // and their respective scroll positions, clips, etc. | |
| 774 void setViewportIntersectionFromParent(const IntRect&); | |
| 775 IntRect remoteViewportIntersection(); | |
| 776 | |
| 777 void mapQuadToAncestorFrameIncludingScrollOffset( | |
|
szager1
2016/12/16 03:42:34
Please put a comment here about why this is necess
kenrb
2016/12/16 16:17:35
Done.
| |
| 778 LayoutRect&, | |
| 779 const LayoutObject* descendant, | |
| 780 const LayoutView* ancestor, | |
| 781 MapCoordinatesFlags mode); | |
| 782 | |
| 770 protected: | 783 protected: |
| 771 // Scroll the content via the compositor. | 784 // Scroll the content via the compositor. |
| 772 bool scrollContentsFastPath(const IntSize& scrollDelta); | 785 bool scrollContentsFastPath(const IntSize& scrollDelta); |
| 773 | 786 |
| 774 // Scroll the content by invalidating everything. | 787 // Scroll the content by invalidating everything. |
| 775 void scrollContentsSlowPath(); | 788 void scrollContentsSlowPath(); |
| 776 | 789 |
| 777 ScrollBehavior scrollBehaviorStyle() const override; | 790 ScrollBehavior scrollBehaviorStyle() const override; |
| 778 | 791 |
| 779 void scrollContentsIfNeeded(); | 792 void scrollContentsIfNeeded(); |
| (...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1114 | 1127 |
| 1115 // ScrollbarManager holds the Scrollbar instances. | 1128 // ScrollbarManager holds the Scrollbar instances. |
| 1116 ScrollbarManager m_scrollbarManager; | 1129 ScrollbarManager m_scrollbarManager; |
| 1117 | 1130 |
| 1118 bool m_needsScrollbarsUpdate; | 1131 bool m_needsScrollbarsUpdate; |
| 1119 bool m_suppressAdjustViewSize; | 1132 bool m_suppressAdjustViewSize; |
| 1120 bool m_allowsLayoutInvalidationAfterLayoutClean; | 1133 bool m_allowsLayoutInvalidationAfterLayoutClean; |
| 1121 | 1134 |
| 1122 Member<ElementVisibilityObserver> m_visibilityObserver; | 1135 Member<ElementVisibilityObserver> m_visibilityObserver; |
| 1123 | 1136 |
| 1137 IntRect m_remoteViewportIntersection; | |
| 1138 | |
| 1124 // For testing. | 1139 // For testing. |
| 1125 struct ObjectPaintInvalidation { | 1140 struct ObjectPaintInvalidation { |
| 1126 String name; | 1141 String name; |
| 1127 PaintInvalidationReason reason; | 1142 PaintInvalidationReason reason; |
| 1128 }; | 1143 }; |
| 1129 std::unique_ptr<Vector<ObjectPaintInvalidation>> | 1144 std::unique_ptr<Vector<ObjectPaintInvalidation>> |
| 1130 m_trackedObjectPaintInvalidations; | 1145 m_trackedObjectPaintInvalidations; |
| 1131 | 1146 |
| 1132 // For Slimming Paint v2 only. | 1147 // For Slimming Paint v2 only. |
| 1133 std::unique_ptr<PaintController> m_paintController; | 1148 std::unique_ptr<PaintController> m_paintController; |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1165 widget.isFrameView()); | 1180 widget.isFrameView()); |
| 1166 DEFINE_TYPE_CASTS(FrameView, | 1181 DEFINE_TYPE_CASTS(FrameView, |
| 1167 ScrollableArea, | 1182 ScrollableArea, |
| 1168 scrollableArea, | 1183 scrollableArea, |
| 1169 scrollableArea->isFrameView(), | 1184 scrollableArea->isFrameView(), |
| 1170 scrollableArea.isFrameView()); | 1185 scrollableArea.isFrameView()); |
| 1171 | 1186 |
| 1172 } // namespace blink | 1187 } // namespace blink |
| 1173 | 1188 |
| 1174 #endif // FrameView_h | 1189 #endif // FrameView_h |
| OLD | NEW |