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

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

Issue 1407543003: Preliminary paint property walk implementation for SPv2 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address some of the comments. Created 5 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) 1998, 1999 Torben Weis <weis@kde.org> 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org>
3 * 1999 Lars Knoll <knoll@kde.org> 3 * 1999 Lars Knoll <knoll@kde.org>
4 * 1999 Antti Koivisto <koivisto@kde.org> 4 * 1999 Antti Koivisto <koivisto@kde.org>
5 * 2000 Dirk Mueller <mueller@kde.org> 5 * 2000 Dirk Mueller <mueller@kde.org>
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com)
8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com)
9 * Copyright (C) 2009 Google Inc. All rights reserved. 9 * Copyright (C) 2009 Google Inc. All rights reserved.
10 * 10 *
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 #include "core/loader/FrameLoader.h" 70 #include "core/loader/FrameLoader.h"
71 #include "core/loader/FrameLoaderClient.h" 71 #include "core/loader/FrameLoaderClient.h"
72 #include "core/page/AutoscrollController.h" 72 #include "core/page/AutoscrollController.h"
73 #include "core/page/ChromeClient.h" 73 #include "core/page/ChromeClient.h"
74 #include "core/page/FocusController.h" 74 #include "core/page/FocusController.h"
75 #include "core/page/FrameTree.h" 75 #include "core/page/FrameTree.h"
76 #include "core/page/Page.h" 76 #include "core/page/Page.h"
77 #include "core/page/scrolling/ScrollingCoordinator.h" 77 #include "core/page/scrolling/ScrollingCoordinator.h"
78 #include "core/paint/FramePainter.h" 78 #include "core/paint/FramePainter.h"
79 #include "core/paint/PaintLayer.h" 79 #include "core/paint/PaintLayer.h"
80 #include "core/paint/PaintPropertyTreeBuilder.h"
80 #include "core/style/ComputedStyle.h" 81 #include "core/style/ComputedStyle.h"
81 #include "core/svg/SVGDocumentExtensions.h" 82 #include "core/svg/SVGDocumentExtensions.h"
82 #include "core/svg/SVGSVGElement.h" 83 #include "core/svg/SVGSVGElement.h"
83 #include "platform/HostWindow.h" 84 #include "platform/HostWindow.h"
84 #include "platform/RuntimeEnabledFeatures.h" 85 #include "platform/RuntimeEnabledFeatures.h"
85 #include "platform/ScriptForbiddenScope.h" 86 #include "platform/ScriptForbiddenScope.h"
86 #include "platform/TraceEvent.h" 87 #include "platform/TraceEvent.h"
87 #include "platform/TracedValue.h" 88 #include "platform/TracedValue.h"
88 #include "platform/fonts/FontCache.h" 89 #include "platform/fonts/FontCache.h"
89 #include "platform/geometry/DoubleRect.h" 90 #include "platform/geometry/DoubleRect.h"
(...skipping 2357 matching lines...) Expand 10 before | Expand all | Expand 10 after
2447 || (RuntimeEnabledFeatures::slimmingPaintSynchronizedPaintingEna bled() && lifecycle().state() == DocumentLifecycle::PaintClean)); 2448 || (RuntimeEnabledFeatures::slimmingPaintSynchronizedPaintingEna bled() && lifecycle().state() == DocumentLifecycle::PaintClean));
2448 } 2449 }
2449 } 2450 }
2450 } 2451 }
2451 2452
2452 void FrameView::updatePaintProperties() 2453 void FrameView::updatePaintProperties()
2453 { 2454 {
2454 ASSERT(RuntimeEnabledFeatures::slimmingPaintV2Enabled()); 2455 ASSERT(RuntimeEnabledFeatures::slimmingPaintV2Enabled());
2455 2456
2456 lifecycle().advanceTo(DocumentLifecycle::InUpdatePaintProperties); 2457 lifecycle().advanceTo(DocumentLifecycle::InUpdatePaintProperties);
2457 // TODO(pdr): Calculate the paint properties by walking the layout tree. 2458 PaintPropertyTreeBuilder().buildPropertyTrees(*this);
2458 lifecycle().advanceTo(DocumentLifecycle::UpdatePaintPropertiesClean); 2459 lifecycle().advanceTo(DocumentLifecycle::UpdatePaintPropertiesClean);
2459 } 2460 }
2460 2461
2461 void FrameView::synchronizedPaint(const LayoutRect& interestRect) 2462 void FrameView::synchronizedPaint(const LayoutRect& interestRect)
2462 { 2463 {
2463 ASSERT(RuntimeEnabledFeatures::slimmingPaintSynchronizedPaintingEnabled()); 2464 ASSERT(RuntimeEnabledFeatures::slimmingPaintSynchronizedPaintingEnabled());
2464 ASSERT(frame() == page()->mainFrame() || (!frame().tree().parent()->isLocalF rame())); 2465 ASSERT(frame() == page()->mainFrame() || (!frame().tree().parent()->isLocalF rame()));
2465 2466
2466 LayoutView* view = layoutView(); 2467 LayoutView* view = layoutView();
2467 ASSERT(view); 2468 ASSERT(view);
(...skipping 1470 matching lines...) Expand 10 before | Expand all | Expand 10 after
3938 3939
3939 if (!graphicsLayer) 3940 if (!graphicsLayer)
3940 return; 3941 return;
3941 3942
3942 PaintLayer::mapRectToPaintInvalidationBacking(localFrame->contentLayoutObjec t(), paintInvalidationContainer, viewRect); 3943 PaintLayer::mapRectToPaintInvalidationBacking(localFrame->contentLayoutObjec t(), paintInvalidationContainer, viewRect);
3943 3944
3944 graphicsLayerTimingRequests.add(graphicsLayer, Vector<std::pair<int64_t, Web Rect>>()).storedValue->value.append(std::make_pair(m_frame->frameID(), enclosing IntRect(viewRect))); 3945 graphicsLayerTimingRequests.add(graphicsLayer, Vector<std::pair<int64_t, Web Rect>>()).storedValue->value.append(std::make_pair(m_frame->frameID(), enclosing IntRect(viewRect)));
3945 } 3946 }
3946 3947
3947 } // namespace blink 3948 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698