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

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

Issue 1294233004: Subtree caching implementation in blink-core (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Don't mark non-self-painting layers for needsRepaint Created 5 years, 3 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 class Page; 70 class Page;
71 class ScrollingCoordinator; 71 class ScrollingCoordinator;
72 class TracedValue; 72 class TracedValue;
73 struct AnnotatedRegionValue; 73 struct AnnotatedRegionValue;
74 struct CompositedSelection; 74 struct CompositedSelection;
75 75
76 typedef unsigned long long DOMTimeStamp; 76 typedef unsigned long long DOMTimeStamp;
77 77
78 class CORE_EXPORT FrameView final : public Widget, public ScrollableArea { 78 class CORE_EXPORT FrameView final : public Widget, public ScrollableArea {
79 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(FrameView); 79 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(FrameView);
80
81 friend class DisplayItemListPaintTestForSlimmingPaintV2;
82 friend class Internals;
83 friend class LayoutPart; // for invalidateTreeIfNeeded
84 friend class LayoutView; // for contentRectangleForPaintInvalidation
85
80 public: 86 public:
81 friend class LayoutView;
82 friend class Internals;
83
84 static PassRefPtrWillBeRawPtr<FrameView> create(LocalFrame*); 87 static PassRefPtrWillBeRawPtr<FrameView> create(LocalFrame*);
85 static PassRefPtrWillBeRawPtr<FrameView> create(LocalFrame*, const IntSize& initialSize); 88 static PassRefPtrWillBeRawPtr<FrameView> create(LocalFrame*, const IntSize& initialSize);
86 89
87 ~FrameView() override; 90 ~FrameView() override;
88 91
89 void invalidateRect(const IntRect&) override; 92 void invalidateRect(const IntRect&) override;
90 void setFrameRect(const IntRect&) override; 93 void setFrameRect(const IntRect&) override;
91 94
92 LocalFrame& frame() const 95 LocalFrame& frame() const
93 { 96 {
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
617 void compositeForSlimmingPaintV2(); 620 void compositeForSlimmingPaintV2();
618 621
619 void reset(); 622 void reset();
620 void init(); 623 void init();
621 624
622 void clearLayoutSubtreeRootsAndMarkContainingBlocks(); 625 void clearLayoutSubtreeRootsAndMarkContainingBlocks();
623 626
624 // Called when our frame rect changes (or the rect/scroll position of an anc estor changes). 627 // Called when our frame rect changes (or the rect/scroll position of an anc estor changes).
625 void frameRectsChanged() override; 628 void frameRectsChanged() override;
626 629
627 friend class LayoutPart;
628
629 bool contentsInCompositedLayer() const; 630 bool contentsInCompositedLayer() const;
630 631
631 void applyOverflowToViewport(LayoutObject*, ScrollbarMode& hMode, ScrollbarM ode& vMode); 632 void applyOverflowToViewport(LayoutObject*, ScrollbarMode& hMode, ScrollbarM ode& vMode);
632 633
633 void updateCounters(); 634 void updateCounters();
634 void forceLayoutParentViewIfNeeded(); 635 void forceLayoutParentViewIfNeeded();
635 void performPreLayoutTasks(); 636 void performPreLayoutTasks();
636 void performLayout(bool inSubtreeLayout); 637 void performLayout(bool inSubtreeLayout);
637 void scheduleOrPerformPostLayoutTasks(); 638 void scheduleOrPerformPostLayoutTasks();
638 void performPostLayoutTasks(); 639 void performPostLayoutTasks();
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
861 static const unsigned visualPixelThreshold = 32 * 32; 862 static const unsigned visualPixelThreshold = 32 * 32;
862 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) 863 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold)
863 setIsVisuallyNonEmpty(); 864 setIsVisuallyNonEmpty();
864 } 865 }
865 866
866 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView()); 867 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView());
867 868
868 } // namespace blink 869 } // namespace blink
869 870
870 #endif // FrameView_h 871 #endif // FrameView_h
OLDNEW
« no previous file with comments | « no previous file | Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698