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

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: s/setSelfNeedsRepaint/setNeedsRepaint/ Created 5 years, 4 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 583 matching lines...) Expand 10 before | Expand all | Expand 10 after
594 : m_scope(view->m_inUpdateScrollbars, true) 594 : m_scope(view->m_inUpdateScrollbars, true)
595 { } 595 { }
596 private: 596 private:
597 TemporaryChange<bool> m_scope; 597 TemporaryChange<bool> m_scope;
598 }; 598 };
599 599
600 // Only for LayoutPart to traverse into sub frames during paint invalidation . 600 // Only for LayoutPart to traverse into sub frames during paint invalidation .
601 void invalidateTreeIfNeeded(PaintInvalidationState&); 601 void invalidateTreeIfNeeded(PaintInvalidationState&);
602 602
603 private: 603 private:
604 friend class DisplayItemListPaintTestForSlimmingPaintV2;
605 friend class LayoutPart;
606
604 explicit FrameView(LocalFrame*); 607 explicit FrameView(LocalFrame*);
605 608
606 void setScrollOffset(const IntPoint&, ScrollType) override; 609 void setScrollOffset(const IntPoint&, ScrollType) override;
607 void setScrollOffset(const DoublePoint&, ScrollType) override; 610 void setScrollOffset(const DoublePoint&, ScrollType) override;
608 611
609 enum LifeCycleUpdateOption { 612 enum LifeCycleUpdateOption {
610 AllPhases, 613 AllPhases,
611 OnlyUpToCompositingCleanPlusScrolling, 614 OnlyUpToCompositingCleanPlusScrolling,
615 OnlyUpToPaintForSlimmingPaintV2Clean,
612 }; 616 };
613 617
614 void updateLifecyclePhasesInternal(LifeCycleUpdateOption); 618 void updateLifecyclePhasesInternal(LifeCycleUpdateOption);
615 void invalidateTreeIfNeededRecursive(); 619 void invalidateTreeIfNeededRecursive();
616 void scrollContentsIfNeededRecursive(); 620 void scrollContentsIfNeededRecursive();
617 void updateStyleAndLayoutIfNeededRecursive(); 621 void updateStyleAndLayoutIfNeededRecursive();
618 void paintForSlimmingPaintV2(); 622 void paintForSlimmingPaintV2();
619 void compositeForSlimmingPaintV2(); 623 void compositeForSlimmingPaintV2();
620 624
621 void reset(); 625 void reset();
622 void init(); 626 void init();
623 627
624 void clearLayoutSubtreeRootsAndMarkContainingBlocks(); 628 void clearLayoutSubtreeRootsAndMarkContainingBlocks();
625 629
626 // Called when our frame rect changes (or the rect/scroll position of an anc estor changes). 630 // Called when our frame rect changes (or the rect/scroll position of an anc estor changes).
627 void frameRectsChanged() override; 631 void frameRectsChanged() override;
628 632
629 friend class LayoutPart;
630
631 bool contentsInCompositedLayer() const; 633 bool contentsInCompositedLayer() const;
632 634
633 void applyOverflowToViewport(LayoutObject*, ScrollbarMode& hMode, ScrollbarM ode& vMode); 635 void applyOverflowToViewport(LayoutObject*, ScrollbarMode& hMode, ScrollbarM ode& vMode);
634 636
635 void updateCounters(); 637 void updateCounters();
636 void forceLayoutParentViewIfNeeded(); 638 void forceLayoutParentViewIfNeeded();
637 void performPreLayoutTasks(); 639 void performPreLayoutTasks();
638 void performLayout(bool inSubtreeLayout); 640 void performLayout(bool inSubtreeLayout);
639 void scheduleOrPerformPostLayoutTasks(); 641 void scheduleOrPerformPostLayoutTasks();
640 void performPostLayoutTasks(); 642 void performPostLayoutTasks();
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
864 static const unsigned visualPixelThreshold = 32 * 32; 866 static const unsigned visualPixelThreshold = 32 * 32;
865 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) 867 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold)
866 setIsVisuallyNonEmpty(); 868 setIsVisuallyNonEmpty();
867 } 869 }
868 870
869 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView()); 871 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView());
870 872
871 } // namespace blink 873 } // namespace blink
872 874
873 #endif // FrameView_h 875 #endif // FrameView_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698