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

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

Issue 908453003: Blink changes to record interest rects for http://w3c.github.io/frame-timing/ (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Code review comments, plus update Render events to get finishTime as well. Created 5 years, 7 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 21 matching lines...) Expand all
32 #include "core/paint/PaintPhase.h" 32 #include "core/paint/PaintPhase.h"
33 #include "platform/RuntimeEnabledFeatures.h" 33 #include "platform/RuntimeEnabledFeatures.h"
34 #include "platform/Widget.h" 34 #include "platform/Widget.h"
35 #include "platform/geometry/IntRect.h" 35 #include "platform/geometry/IntRect.h"
36 #include "platform/geometry/LayoutRect.h" 36 #include "platform/geometry/LayoutRect.h"
37 #include "platform/graphics/Color.h" 37 #include "platform/graphics/Color.h"
38 #include "platform/scroll/ScrollTypes.h" 38 #include "platform/scroll/ScrollTypes.h"
39 #include "platform/scroll/ScrollableArea.h" 39 #include "platform/scroll/ScrollableArea.h"
40 #include "platform/scroll/Scrollbar.h" 40 #include "platform/scroll/Scrollbar.h"
41 #include "public/platform/WebDisplayMode.h" 41 #include "public/platform/WebDisplayMode.h"
42 #include "public/platform/WebRect.h"
42 #include "wtf/Forward.h" 43 #include "wtf/Forward.h"
43 #include "wtf/HashSet.h" 44 #include "wtf/HashSet.h"
44 #include "wtf/OwnPtr.h" 45 #include "wtf/OwnPtr.h"
45 #include "wtf/TemporaryChange.h" 46 #include "wtf/TemporaryChange.h"
46 #include "wtf/text/WTFString.h" 47 #include "wtf/text/WTFString.h"
47 48
48 namespace blink { 49 namespace blink {
49 50
50 class AXObjectCache; 51 class AXObjectCache;
51 class DocumentLifecycle; 52 class DocumentLifecycle;
(...skipping 659 matching lines...) Expand 10 before | Expand all | Expand 10 after
711 bool isFrameViewScrollbar(const Widget* child) const { return horizontalScro llbar() == child || verticalScrollbar() == child; } 712 bool isFrameViewScrollbar(const Widget* child) const { return horizontalScro llbar() == child || verticalScrollbar() == child; }
712 713
713 ScrollingCoordinator* scrollingCoordinator(); 714 ScrollingCoordinator* scrollingCoordinator();
714 715
715 void prepareLayoutAnalyzer(); 716 void prepareLayoutAnalyzer();
716 PassRefPtr<TracedValue> analyzerCounters(); 717 PassRefPtr<TracedValue> analyzerCounters();
717 718
718 // LayoutObject for the viewport-defining element (see Document::viewportDef iningElement). 719 // LayoutObject for the viewport-defining element (see Document::viewportDef iningElement).
719 LayoutObject* viewportLayoutObject(); 720 LayoutObject* viewportLayoutObject();
720 721
722 typedef WTF::HashMap <const GraphicsLayer*, std::vector<std::pair<int64_t, W ebRect>>> GraphicsLayerFrameTimingRequests;
723 void updateFrameTimingRequestsIfNeeded();
724 void collectFrameTimingRequests(GraphicsLayerFrameTimingRequests&);
725 void collectFrameTimingRequestsRecursive(GraphicsLayerFrameTimingRequests&);
726
721 LayoutSize m_size; 727 LayoutSize m_size;
722 728
723 typedef HashSet<RefPtr<LayoutEmbeddedObject>> EmbeddedObjectSet; 729 typedef HashSet<RefPtr<LayoutEmbeddedObject>> EmbeddedObjectSet;
724 EmbeddedObjectSet m_partUpdateSet; 730 EmbeddedObjectSet m_partUpdateSet;
725 731
726 // FIXME: These are just "children" of the FrameView and should be RefPtrWil lBeMember<Widget> instead. 732 // FIXME: These are just "children" of the FrameView and should be RefPtrWil lBeMember<Widget> instead.
727 HashSet<RefPtr<LayoutPart>> m_parts; 733 HashSet<RefPtr<LayoutPart>> m_parts;
728 734
729 // The RefPtr cycle between LocalFrame and FrameView is broken 735 // The RefPtr cycle between LocalFrame and FrameView is broken
730 // when a LocalFrame is detached by FrameLoader::detachFromParent(). 736 // when a LocalFrame is detached by FrameLoader::detachFromParent().
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
876 static const unsigned visualPixelThreshold = 32 * 32; 882 static const unsigned visualPixelThreshold = 32 * 32;
877 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold) 883 if (m_visuallyNonEmptyPixelCount > visualPixelThreshold)
878 setIsVisuallyNonEmpty(); 884 setIsVisuallyNonEmpty();
879 } 885 }
880 886
881 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView()); 887 DEFINE_TYPE_CASTS(FrameView, Widget, widget, widget->isFrameView(), widget.isFra meView());
882 888
883 } // namespace blink 889 } // namespace blink
884 890
885 #endif // FrameView_h 891 #endif // FrameView_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698