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 reserv
ed. | 7 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. |
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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 class LocalFrame; | 72 class LocalFrame; |
73 class KURL; | 73 class KURL; |
74 class Node; | 74 class Node; |
75 class LayoutAnalyzer; | 75 class LayoutAnalyzer; |
76 class LayoutBox; | 76 class LayoutBox; |
77 class LayoutEmbeddedObject; | 77 class LayoutEmbeddedObject; |
78 class LayoutObject; | 78 class LayoutObject; |
79 class LayoutReplaced; | 79 class LayoutReplaced; |
80 class LayoutScrollbarPart; | 80 class LayoutScrollbarPart; |
81 class LayoutView; | 81 class LayoutView; |
| 82 class PaintController; |
82 class PaintInvalidationState; | 83 class PaintInvalidationState; |
83 class Page; | 84 class Page; |
84 class ScrollingCoordinator; | 85 class ScrollingCoordinator; |
85 class TracedValue; | 86 class TracedValue; |
86 struct AnnotatedRegionValue; | 87 struct AnnotatedRegionValue; |
87 struct CompositedSelection; | 88 struct CompositedSelection; |
88 | 89 |
89 typedef unsigned long long DOMTimeStamp; | 90 typedef unsigned long long DOMTimeStamp; |
90 | 91 |
91 class CORE_EXPORT FrameView final : public Widget, public PaintInvalidationCapab
leScrollableArea { | 92 class CORE_EXPORT FrameView final : public Widget, public PaintInvalidationCapab
leScrollableArea { |
(...skipping 693 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
785 void updateViewportIntersectionIfNeeded(); | 786 void updateViewportIntersectionIfNeeded(); |
786 void notifyRenderThrottlingObservers(); | 787 void notifyRenderThrottlingObservers(); |
787 void updateThrottlingStatus(); | 788 void updateThrottlingStatus(); |
788 void notifyResizeObservers(); | 789 void notifyResizeObservers(); |
789 | 790 |
790 // PaintInvalidationCapableScrollableArea | 791 // PaintInvalidationCapableScrollableArea |
791 LayoutScrollbarPart* resizer() const override { return nullptr; } | 792 LayoutScrollbarPart* resizer() const override { return nullptr; } |
792 | 793 |
793 bool checkLayoutInvalidationIsAllowed() const; | 794 bool checkLayoutInvalidationIsAllowed() const; |
794 | 795 |
| 796 PaintController* paintController() { return m_paintController.get(); } |
| 797 |
795 LayoutSize m_size; | 798 LayoutSize m_size; |
796 | 799 |
797 typedef HashSet<RefPtr<LayoutEmbeddedObject>> EmbeddedObjectSet; | 800 typedef HashSet<RefPtr<LayoutEmbeddedObject>> EmbeddedObjectSet; |
798 EmbeddedObjectSet m_partUpdateSet; | 801 EmbeddedObjectSet m_partUpdateSet; |
799 | 802 |
800 // FIXME: These are just "children" of the FrameView and should be Member<Wi
dget> instead. | 803 // FIXME: These are just "children" of the FrameView and should be Member<Wi
dget> instead. |
801 HashSet<RefPtr<LayoutPart>> m_parts; | 804 HashSet<RefPtr<LayoutPart>> m_parts; |
802 | 805 |
803 // The RefPtr cycle between LocalFrame and FrameView is broken | 806 // The RefPtr cycle between LocalFrame and FrameView is broken |
804 // when a LocalFrame is detached by LocalFrame::detach(). | 807 // when a LocalFrame is detached by LocalFrame::detach(). |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
944 bool m_needsScrollbarsUpdate; | 947 bool m_needsScrollbarsUpdate; |
945 bool m_suppressAdjustViewSize; | 948 bool m_suppressAdjustViewSize; |
946 bool m_allowsLayoutInvalidationAfterLayoutClean; | 949 bool m_allowsLayoutInvalidationAfterLayoutClean; |
947 | 950 |
948 // For testing. | 951 // For testing. |
949 struct ObjectPaintInvalidation { | 952 struct ObjectPaintInvalidation { |
950 String name; | 953 String name; |
951 PaintInvalidationReason reason; | 954 PaintInvalidationReason reason; |
952 }; | 955 }; |
953 std::unique_ptr<Vector<ObjectPaintInvalidation>> m_trackedObjectPaintInvalid
ations; | 956 std::unique_ptr<Vector<ObjectPaintInvalidation>> m_trackedObjectPaintInvalid
ations; |
| 957 |
| 958 // For Slimming Paint v2 only. |
| 959 std::unique_ptr<PaintController> m_paintController; |
954 }; | 960 }; |
955 | 961 |
956 inline void FrameView::incrementVisuallyNonEmptyCharacterCount(unsigned count) | 962 inline void FrameView::incrementVisuallyNonEmptyCharacterCount(unsigned count) |
957 { | 963 { |
958 if (m_isVisuallyNonEmpty) | 964 if (m_isVisuallyNonEmpty) |
959 return; | 965 return; |
960 m_visuallyNonEmptyCharacterCount += count; | 966 m_visuallyNonEmptyCharacterCount += count; |
961 // Use a threshold value to prevent very small amounts of visible content fr
om triggering didMeaningfulLayout. | 967 // Use a threshold value to prevent very small amounts of visible content fr
om triggering didMeaningfulLayout. |
962 // The first few hundred characters rarely contain the interesting content o
f the page. | 968 // The first few hundred characters rarely contain the interesting content o
f the page. |
963 static const unsigned visualCharacterThreshold = 200; | 969 static const unsigned visualCharacterThreshold = 200; |
(...skipping 11 matching lines...) Expand all Loading... |
975 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) | 981 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) |
976 setIsVisuallyNonEmpty(); | 982 setIsVisuallyNonEmpty(); |
977 } | 983 } |
978 | 984 |
979 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra
meView()); | 985 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra
meView()); |
980 DEFINE_TYPE_CASTS(FrameView, ScrollableArea, scrollableArea, scrollableArea->isF
rameView(), scrollableArea.isFrameView()); | 986 DEFINE_TYPE_CASTS(FrameView, ScrollableArea, scrollableArea, scrollableArea->isF
rameView(), scrollableArea.isFrameView()); |
981 | 987 |
982 } // namespace blink | 988 } // namespace blink |
983 | 989 |
984 #endif // FrameView_h | 990 #endif // FrameView_h |
OLD | NEW |