| 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 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 150 int layoutCount() const { return m_layoutCount; } | 150 int layoutCount() const { return m_layoutCount; } |
| 151 | 151 |
| 152 void countObjectsNeedingLayout(unsigned& needsLayoutObjects, | 152 void countObjectsNeedingLayout(unsigned& needsLayoutObjects, |
| 153 unsigned& totalObjects, | 153 unsigned& totalObjects, |
| 154 bool& isPartial); | 154 bool& isPartial); |
| 155 | 155 |
| 156 bool needsLayout() const; | 156 bool needsLayout() const; |
| 157 bool checkDoesNotNeedLayout() const; | 157 bool checkDoesNotNeedLayout() const; |
| 158 void setNeedsLayout(); | 158 void setNeedsLayout(); |
| 159 | 159 |
| 160 void setNeedsUpdateWidgetGeometries() { | 160 void setNeedsUpdateGeometries() { m_needsUpdateGeometries = true; } |
| 161 m_needsUpdateWidgetGeometries = true; | |
| 162 } | |
| 163 | 161 |
| 164 // Methods for getting/setting the size Blink should use to layout the | 162 // Methods for getting/setting the size Blink should use to layout the |
| 165 // contents. | 163 // contents. |
| 166 // NOTE: Scrollbar exclusion is based on the FrameView's scrollbars. To | 164 // NOTE: Scrollbar exclusion is based on the FrameView's scrollbars. To |
| 167 // exclude scrollbars on the root PaintLayer, use LayoutView::layoutSize. | 165 // exclude scrollbars on the root PaintLayer, use LayoutView::layoutSize. |
| 168 IntSize layoutSize(IncludeScrollbarsInRect = ExcludeScrollbars) const; | 166 IntSize layoutSize(IncludeScrollbarsInRect = ExcludeScrollbars) const; |
| 169 void setLayoutSize(const IntSize&); | 167 void setLayoutSize(const IntSize&); |
| 170 | 168 |
| 171 // If this is set to false, the layout size will need to be explicitly set by | 169 // If this is set to false, the layout size will need to be explicitly set by |
| 172 // the owner. E.g. WebViewImpl sets its mainFrame's layout size manually | 170 // the owner. E.g. WebViewImpl sets its mainFrame's layout size manually |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 bool safeToPropagateScrollToParent() const { | 260 bool safeToPropagateScrollToParent() const { |
| 263 return m_safeToPropagateScrollToParent; | 261 return m_safeToPropagateScrollToParent; |
| 264 } | 262 } |
| 265 void setSafeToPropagateScrollToParent(bool isSafe) { | 263 void setSafeToPropagateScrollToParent(bool isSafe) { |
| 266 m_safeToPropagateScrollToParent = isSafe; | 264 m_safeToPropagateScrollToParent = isSafe; |
| 267 } | 265 } |
| 268 | 266 |
| 269 void addPart(LayoutPart*); | 267 void addPart(LayoutPart*); |
| 270 void removePart(LayoutPart*); | 268 void removePart(LayoutPart*); |
| 271 | 269 |
| 272 void updateWidgetGeometries(); | 270 void updateGeometries(); |
| 273 | 271 |
| 274 void addPartToUpdate(LayoutEmbeddedObject&); | 272 void addPartToUpdate(LayoutEmbeddedObject&); |
| 275 | 273 |
| 276 Color documentBackgroundColor() const; | 274 Color documentBackgroundColor() const; |
| 277 | 275 |
| 278 // Run all needed lifecycle stages. After calling this method, all frames will | 276 // Run all needed lifecycle stages. After calling this method, all frames will |
| 279 // be in the lifecycle state PaintInvalidationClean. If lifecycle throttling | 277 // be in the lifecycle state PaintInvalidationClean. If lifecycle throttling |
| 280 // is allowed (see DocumentLifecycle::AllowThrottlingScope), some frames may | 278 // is allowed (see DocumentLifecycle::AllowThrottlingScope), some frames may |
| 281 // skip the lifecycle update (e.g., based on visibility) and will not end up | 279 // skip the lifecycle update (e.g., based on visibility) and will not end up |
| 282 // being PaintInvalidationClean. | 280 // being PaintInvalidationClean. |
| (...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 453 | 451 |
| 454 LayoutRect scrollIntoView(const LayoutRect& rectInContent, | 452 LayoutRect scrollIntoView(const LayoutRect& rectInContent, |
| 455 const ScrollAlignment& alignX, | 453 const ScrollAlignment& alignX, |
| 456 const ScrollAlignment& alignY, | 454 const ScrollAlignment& alignY, |
| 457 ScrollType = ProgrammaticScroll) override; | 455 ScrollType = ProgrammaticScroll) override; |
| 458 | 456 |
| 459 // The window that hosts the FrameView. The FrameView will communicate scrolls | 457 // The window that hosts the FrameView. The FrameView will communicate scrolls |
| 460 // and repaints to the host window in the window's coordinate space. | 458 // and repaints to the host window in the window's coordinate space. |
| 461 HostWindow* getHostWindow() const; | 459 HostWindow* getHostWindow() const; |
| 462 | 460 |
| 463 typedef HeapHashSet<Member<FrameViewBase>> ChildrenWidgetSet; | 461 typedef HeapHashSet<Member<FrameViewBase>> ChildrenFrameViewBaseSet; |
| 464 | 462 |
| 465 // Functions for child manipulation and inspection. | 463 // Functions for child manipulation and inspection. |
| 466 void setParent(FrameViewBase*) override; | 464 void setParent(FrameViewBase*) override; |
| 467 void removeChild(FrameViewBase*); | 465 void removeChild(FrameViewBase*); |
| 468 void addChild(FrameViewBase*); | 466 void addChild(FrameViewBase*); |
| 469 const ChildrenWidgetSet* children() const { return &m_children; } | 467 const ChildrenFrameViewBaseSet* children() const { return &m_children; } |
| 470 | 468 |
| 471 // If the scroll view does not use a native widget, then it will have | 469 // If the scroll view does not use a native widget, then it will have |
| 472 // cross-platform Scrollbars. These functions can be used to obtain those | 470 // cross-platform Scrollbars. These functions can be used to obtain those |
| 473 // scrollbars. | 471 // scrollbars. |
| 474 Scrollbar* horizontalScrollbar() const override { | 472 Scrollbar* horizontalScrollbar() const override { |
| 475 return m_scrollbarManager.horizontalScrollbar(); | 473 return m_scrollbarManager.horizontalScrollbar(); |
| 476 } | 474 } |
| 477 Scrollbar* verticalScrollbar() const override { | 475 Scrollbar* verticalScrollbar() const override { |
| 478 return m_scrollbarManager.verticalScrollbar(); | 476 return m_scrollbarManager.verticalScrollbar(); |
| 479 } | 477 } |
| (...skipping 476 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 956 | 954 |
| 957 // Override FrameViewBase methods to do point conversion via layoutObjects, in | 955 // Override FrameViewBase methods to do point conversion via layoutObjects, in |
| 958 // order to take transforms into account. | 956 // order to take transforms into account. |
| 959 IntRect convertToContainingFrameViewBase(const IntRect&) const override; | 957 IntRect convertToContainingFrameViewBase(const IntRect&) const override; |
| 960 IntRect convertFromContainingFrameViewBase(const IntRect&) const override; | 958 IntRect convertFromContainingFrameViewBase(const IntRect&) const override; |
| 961 IntPoint convertToContainingFrameViewBase(const IntPoint&) const override; | 959 IntPoint convertToContainingFrameViewBase(const IntPoint&) const override; |
| 962 IntPoint convertFromContainingFrameViewBase(const IntPoint&) const override; | 960 IntPoint convertFromContainingFrameViewBase(const IntPoint&) const override; |
| 963 | 961 |
| 964 void didChangeGlobalRootScroller() override; | 962 void didChangeGlobalRootScroller() override; |
| 965 | 963 |
| 966 void updateWidgetGeometriesIfNeeded(); | 964 void updateGeometriesIfNeeded(); |
| 967 | 965 |
| 968 bool wasViewportResized(); | 966 bool wasViewportResized(); |
| 969 void sendResizeEventIfNeeded(); | 967 void sendResizeEventIfNeeded(); |
| 970 | 968 |
| 971 void updateParentScrollableAreaSet(); | 969 void updateParentScrollableAreaSet(); |
| 972 | 970 |
| 973 void scheduleUpdateWidgetsIfNecessary(); | 971 void scheduleUpdateFrameViewBasesIfNecessary(); |
| 974 void updateWidgetsTimerFired(TimerBase*); | 972 void updateFrameViewBasesTimerFired(TimerBase*); |
| 975 bool updateWidgets(); | 973 bool updateFrameViewBases(); |
| 976 | 974 |
| 977 bool processUrlFragmentHelper(const String&, UrlFragmentBehavior); | 975 bool processUrlFragmentHelper(const String&, UrlFragmentBehavior); |
| 978 void setFragmentAnchor(Node*); | 976 void setFragmentAnchor(Node*); |
| 979 void scrollToFragmentAnchor(); | 977 void scrollToFragmentAnchor(); |
| 980 void didScrollTimerFired(TimerBase*); | 978 void didScrollTimerFired(TimerBase*); |
| 981 | 979 |
| 982 void updateLayersAndCompositingAfterScrollIfNeeded(); | 980 void updateLayersAndCompositingAfterScrollIfNeeded(); |
| 983 | 981 |
| 984 static bool computeCompositedSelection(LocalFrame&, CompositedSelection&); | 982 static bool computeCompositedSelection(LocalFrame&, CompositedSelection&); |
| 985 void updateCompositedSelectionIfNeeded(); | 983 void updateCompositedSelectionIfNeeded(); |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1070 | 1068 |
| 1071 bool m_hasPendingLayout; | 1069 bool m_hasPendingLayout; |
| 1072 LayoutSubtreeRootList m_layoutSubtreeRootList; | 1070 LayoutSubtreeRootList m_layoutSubtreeRootList; |
| 1073 DepthOrderedLayoutObjectList m_orthogonalWritingModeRootList; | 1071 DepthOrderedLayoutObjectList m_orthogonalWritingModeRootList; |
| 1074 | 1072 |
| 1075 bool m_layoutSchedulingEnabled; | 1073 bool m_layoutSchedulingEnabled; |
| 1076 bool m_inSynchronousPostLayout; | 1074 bool m_inSynchronousPostLayout; |
| 1077 int m_layoutCount; | 1075 int m_layoutCount; |
| 1078 unsigned m_nestedLayoutCount; | 1076 unsigned m_nestedLayoutCount; |
| 1079 TaskRunnerTimer<FrameView> m_postLayoutTasksTimer; | 1077 TaskRunnerTimer<FrameView> m_postLayoutTasksTimer; |
| 1080 TaskRunnerTimer<FrameView> m_updateWidgetsTimer; | 1078 TaskRunnerTimer<FrameView> m_updateFrameViewBasesTimer; |
| 1081 | 1079 |
| 1082 bool m_firstLayout; | 1080 bool m_firstLayout; |
| 1083 bool m_isTransparent; | 1081 bool m_isTransparent; |
| 1084 Color m_baseBackgroundColor; | 1082 Color m_baseBackgroundColor; |
| 1085 IntSize m_lastViewportSize; | 1083 IntSize m_lastViewportSize; |
| 1086 float m_lastZoomFactor; | 1084 float m_lastZoomFactor; |
| 1087 | 1085 |
| 1088 AtomicString m_mediaType; | 1086 AtomicString m_mediaType; |
| 1089 AtomicString m_mediaTypeWhenNotPrinting; | 1087 AtomicString m_mediaTypeWhenNotPrinting; |
| 1090 | 1088 |
| (...skipping 21 matching lines...) Expand all Loading... |
| 1112 float m_inputEventsScaleFactorForEmulation; | 1110 float m_inputEventsScaleFactorForEmulation; |
| 1113 | 1111 |
| 1114 IntSize m_layoutSize; | 1112 IntSize m_layoutSize; |
| 1115 IntSize m_initialViewportSize; | 1113 IntSize m_initialViewportSize; |
| 1116 bool m_layoutSizeFixedToFrameSize; | 1114 bool m_layoutSizeFixedToFrameSize; |
| 1117 | 1115 |
| 1118 TaskRunnerTimer<FrameView> m_didScrollTimer; | 1116 TaskRunnerTimer<FrameView> m_didScrollTimer; |
| 1119 | 1117 |
| 1120 Vector<IntRect> m_tickmarks; | 1118 Vector<IntRect> m_tickmarks; |
| 1121 | 1119 |
| 1122 bool m_needsUpdateWidgetGeometries; | 1120 bool m_needsUpdateGeometries; |
| 1123 | 1121 |
| 1124 #if DCHECK_IS_ON() | 1122 #if DCHECK_IS_ON() |
| 1125 // Verified when finalizing. | 1123 // Verified when finalizing. |
| 1126 bool m_hasBeenDisposed = false; | 1124 bool m_hasBeenDisposed = false; |
| 1127 #endif | 1125 #endif |
| 1128 | 1126 |
| 1129 ScrollbarMode m_horizontalScrollbarMode; | 1127 ScrollbarMode m_horizontalScrollbarMode; |
| 1130 ScrollbarMode m_verticalScrollbarMode; | 1128 ScrollbarMode m_verticalScrollbarMode; |
| 1131 | 1129 |
| 1132 bool m_horizontalScrollbarLock; | 1130 bool m_horizontalScrollbarLock; |
| 1133 bool m_verticalScrollbarLock; | 1131 bool m_verticalScrollbarLock; |
| 1134 | 1132 |
| 1135 ChildrenWidgetSet m_children; | 1133 ChildrenFrameViewBaseSet m_children; |
| 1136 | 1134 |
| 1137 ScrollOffset m_pendingScrollDelta; | 1135 ScrollOffset m_pendingScrollDelta; |
| 1138 ScrollOffset m_scrollOffset; | 1136 ScrollOffset m_scrollOffset; |
| 1139 IntSize m_contentsSize; | 1137 IntSize m_contentsSize; |
| 1140 | 1138 |
| 1141 bool m_scrollbarsSuppressed; | 1139 bool m_scrollbarsSuppressed; |
| 1142 | 1140 |
| 1143 bool m_inUpdateScrollbars; | 1141 bool m_inUpdateScrollbars; |
| 1144 | 1142 |
| 1145 std::unique_ptr<LayoutAnalyzer> m_analyzer; | 1143 std::unique_ptr<LayoutAnalyzer> m_analyzer; |
| (...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1262 frameViewBase.isFrameView()); | 1260 frameViewBase.isFrameView()); |
| 1263 DEFINE_TYPE_CASTS(FrameView, | 1261 DEFINE_TYPE_CASTS(FrameView, |
| 1264 ScrollableArea, | 1262 ScrollableArea, |
| 1265 scrollableArea, | 1263 scrollableArea, |
| 1266 scrollableArea->isFrameView(), | 1264 scrollableArea->isFrameView(), |
| 1267 scrollableArea.isFrameView()); | 1265 scrollableArea.isFrameView()); |
| 1268 | 1266 |
| 1269 } // namespace blink | 1267 } // namespace blink |
| 1270 | 1268 |
| 1271 #endif // FrameView_h | 1269 #endif // FrameView_h |
| OLD | NEW |