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

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: Unittest 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
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 581 matching lines...) Expand 10 before | Expand all | Expand 10 after
592 : m_scope(view->m_inUpdateScrollbars, true) 592 : m_scope(view->m_inUpdateScrollbars, true)
593 { } 593 { }
594 private: 594 private:
595 TemporaryChange<bool> m_scope; 595 TemporaryChange<bool> m_scope;
596 }; 596 };
597 597
598 // Only for LayoutPart to traverse into sub frames during paint invalidation . 598 // Only for LayoutPart to traverse into sub frames during paint invalidation .
599 void invalidateTreeIfNeeded(PaintInvalidationState&); 599 void invalidateTreeIfNeeded(PaintInvalidationState&);
600 600
601 private: 601 private:
602 friend class DisplayItemListPaintTestForSlimmingPaintV2;
603 friend class LayoutPart;
chrishtr 2015/08/27 04:29:48 What is LayoutPart a friend for? Does this deserve
Xianzhu 2015/08/27 16:38:02 Done.
604
602 explicit FrameView(LocalFrame*); 605 explicit FrameView(LocalFrame*);
603 606
604 void setScrollOffset(const IntPoint&, ScrollType) override; 607 void setScrollOffset(const IntPoint&, ScrollType) override;
605 void setScrollOffset(const DoublePoint&, ScrollType) override; 608 void setScrollOffset(const DoublePoint&, ScrollType) override;
606 609
607 enum LifeCycleUpdateOption { 610 enum LifeCycleUpdateOption {
608 AllPhases, 611 AllPhases,
609 OnlyUpToCompositingCleanPlusScrolling, 612 OnlyUpToCompositingCleanPlusScrolling,
613 OnlyUpToPaintForSlimmingPaintV2Clean,
610 }; 614 };
611 615
612 void updateLifecyclePhasesInternal(LifeCycleUpdateOption); 616 void updateLifecyclePhasesInternal(LifeCycleUpdateOption);
613 void invalidateTreeIfNeededRecursive(); 617 void invalidateTreeIfNeededRecursive();
614 void scrollContentsIfNeededRecursive(); 618 void scrollContentsIfNeededRecursive();
615 void updateStyleAndLayoutIfNeededRecursive(); 619 void updateStyleAndLayoutIfNeededRecursive();
616 void paintForSlimmingPaintV2(); 620 void paintForSlimmingPaintV2();
617 void compositeForSlimmingPaintV2(); 621 void compositeForSlimmingPaintV2();
618 622
619 void reset(); 623 void reset();
620 void init(); 624 void init();
621 625
622 void clearLayoutSubtreeRootsAndMarkContainingBlocks(); 626 void clearLayoutSubtreeRootsAndMarkContainingBlocks();
623 627
624 // Called when our frame rect changes (or the rect/scroll position of an anc estor changes). 628 // Called when our frame rect changes (or the rect/scroll position of an anc estor changes).
625 void frameRectsChanged() override; 629 void frameRectsChanged() override;
626 630
627 friend class LayoutPart;
628
629 bool contentsInCompositedLayer() const; 631 bool contentsInCompositedLayer() const;
630 632
631 void applyOverflowToViewport(LayoutObject*, ScrollbarMode& hMode, ScrollbarM ode& vMode); 633 void applyOverflowToViewport(LayoutObject*, ScrollbarMode& hMode, ScrollbarM ode& vMode);
632 634
633 void updateCounters(); 635 void updateCounters();
634 void forceLayoutParentViewIfNeeded(); 636 void forceLayoutParentViewIfNeeded();
635 void performPreLayoutTasks(); 637 void performPreLayoutTasks();
636 void performLayout(bool inSubtreeLayout); 638 void performLayout(bool inSubtreeLayout);
637 void scheduleOrPerformPostLayoutTasks(); 639 void scheduleOrPerformPostLayoutTasks();
638 void performPostLayoutTasks(); 640 void performPostLayoutTasks();
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
861 static const unsigned visualPixelThreshold = 32 * 32; 863 static const unsigned visualPixelThreshold = 32 * 32;
862 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) 864 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold)
863 setIsVisuallyNonEmpty(); 865 setIsVisuallyNonEmpty();
864 } 866 }
865 867
866 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView()); 868 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView());
867 869
868 } // namespace blink 870 } // namespace blink
869 871
870 #endif // FrameView_h 872 #endif // FrameView_h
OLDNEW
« no previous file with comments | « no previous file | Source/core/frame/FrameView.cpp » ('j') | Source/core/paint/DeprecatedPaintLayer.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698