Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Side by Side Diff: third_party/WebKit/Source/core/frame/FrameView.h

Issue 2380683006: SPv2: Add support for tracking raster paint invalidations in testing. (Closed)
Patch Set: none Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 22 matching lines...) Expand all
33 #include "core/layout/ScrollAnchor.h" 33 #include "core/layout/ScrollAnchor.h"
34 #include "core/paint/FirstMeaningfulPaintDetector.h" 34 #include "core/paint/FirstMeaningfulPaintDetector.h"
35 #include "core/paint/ObjectPaintProperties.h" 35 #include "core/paint/ObjectPaintProperties.h"
36 #include "core/paint/PaintInvalidationCapableScrollableArea.h" 36 #include "core/paint/PaintInvalidationCapableScrollableArea.h"
37 #include "core/paint/PaintPhase.h" 37 #include "core/paint/PaintPhase.h"
38 #include "platform/RuntimeEnabledFeatures.h" 38 #include "platform/RuntimeEnabledFeatures.h"
39 #include "platform/Widget.h" 39 #include "platform/Widget.h"
40 #include "platform/geometry/IntRect.h" 40 #include "platform/geometry/IntRect.h"
41 #include "platform/geometry/LayoutRect.h" 41 #include "platform/geometry/LayoutRect.h"
42 #include "platform/graphics/Color.h" 42 #include "platform/graphics/Color.h"
43 #include "platform/graphics/GraphicsLayerClient.h"
43 #include "platform/scroll/ScrollTypes.h" 44 #include "platform/scroll/ScrollTypes.h"
44 #include "platform/scroll/Scrollbar.h" 45 #include "platform/scroll/Scrollbar.h"
45 #include "public/platform/WebDisplayMode.h" 46 #include "public/platform/WebDisplayMode.h"
46 #include "public/platform/WebRect.h" 47 #include "public/platform/WebRect.h"
47 #include "wtf/Allocator.h" 48 #include "wtf/Allocator.h"
48 #include "wtf/AutoReset.h" 49 #include "wtf/AutoReset.h"
49 #include "wtf/Forward.h" 50 #include "wtf/Forward.h"
50 #include "wtf/HashSet.h" 51 #include "wtf/HashSet.h"
51 #include "wtf/ListHashSet.h" 52 #include "wtf/ListHashSet.h"
52 #include "wtf/text/WTFString.h" 53 #include "wtf/text/WTFString.h"
53 #include <memory> 54 #include <memory>
54 55
55 namespace blink { 56 namespace blink {
56 57
57 class AXObjectCache; 58 class AXObjectCache;
58 class CancellableTaskFactory; 59 class CancellableTaskFactory;
59 class ComputedStyle; 60 class ComputedStyle;
60 class DocumentLifecycle; 61 class DocumentLifecycle;
61 class Cursor; 62 class Cursor;
62 class Element; 63 class Element;
63 class FloatSize; 64 class FloatSize;
64 class HTMLFrameOwnerElement; 65 class HTMLFrameOwnerElement;
65 class JSONArray; 66 class JSONArray;
67 class JSONObject;
66 class LayoutViewItem; 68 class LayoutViewItem;
67 class LayoutPart; 69 class LayoutPart;
68 class LocalFrame; 70 class LocalFrame;
69 class KURL; 71 class KURL;
70 class Node; 72 class Node;
71 class LayoutAnalyzer; 73 class LayoutAnalyzer;
72 class LayoutBox; 74 class LayoutBox;
73 class LayoutEmbeddedObject; 75 class LayoutEmbeddedObject;
74 class LayoutObject; 76 class LayoutObject;
75 class LayoutReplaced; 77 class LayoutReplaced;
(...skipping 542 matching lines...) Expand 10 before | Expand all | Expand 10 after
618 // Viewport size that should be used for viewport units (i.e. 'vh'/'vw'). 620 // Viewport size that should be used for viewport units (i.e. 'vh'/'vw').
619 FloatSize viewportSizeForViewportUnits() const; 621 FloatSize viewportSizeForViewportUnits() const;
620 622
621 ScrollAnchor* scrollAnchor() override { return &m_scrollAnchor; } 623 ScrollAnchor* scrollAnchor() override { return &m_scrollAnchor; }
622 void clearScrollAnchor(); 624 void clearScrollAnchor();
623 bool shouldPerformScrollAnchoring() const override; 625 bool shouldPerformScrollAnchoring() const override;
624 626
625 // For PaintInvalidator temporarily. TODO(wangxianzhu): Move into PaintInval idator. 627 // For PaintInvalidator temporarily. TODO(wangxianzhu): Move into PaintInval idator.
626 void invalidatePaintIfNeeded(const PaintInvalidationState&); 628 void invalidatePaintIfNeeded(const PaintInvalidationState&);
627 629
630 // Only for SPv2.
631 std::unique_ptr<JSONObject> compositedLayersAsJSON(LayerTreeFlags);
632
628 protected: 633 protected:
629 // Scroll the content via the compositor. 634 // Scroll the content via the compositor.
630 bool scrollContentsFastPath(const IntSize& scrollDelta); 635 bool scrollContentsFastPath(const IntSize& scrollDelta);
631 636
632 // Scroll the content by invalidating everything. 637 // Scroll the content by invalidating everything.
633 void scrollContentsSlowPath(); 638 void scrollContentsSlowPath();
634 639
635 // These functions are used to create/destroy scrollbars. 640 // These functions are used to create/destroy scrollbars.
636 void setHasHorizontalScrollbar(bool); 641 void setHasHorizontalScrollbar(bool);
637 void setHasVerticalScrollbar(bool); 642 void setHasVerticalScrollbar(bool);
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after
972 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) 977 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold)
973 setIsVisuallyNonEmpty(); 978 setIsVisuallyNonEmpty();
974 } 979 }
975 980
976 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView()); 981 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView());
977 DEFINE_TYPE_CASTS(FrameView, ScrollableArea, scrollableArea, scrollableArea->isF rameView(), scrollableArea.isFrameView()); 982 DEFINE_TYPE_CASTS(FrameView, ScrollableArea, scrollableArea, scrollableArea->isF rameView(), scrollableArea.isFrameView());
978 983
979 } // namespace blink 984 } // namespace blink
980 985
981 #endif // FrameView_h 986 #endif // FrameView_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698