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

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

Issue 2366853002: Invalidate paint of FrameView before invalidating the layout tree (Closed)
Patch Set: NeedsRebaseline Created 4 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 1125 matching lines...) Expand 10 before | Expand all | Expand 10 after
1136 return; 1136 return;
1137 1137
1138 lifecycle().advanceTo(DocumentLifecycle::InPaintInvalidation); 1138 lifecycle().advanceTo(DocumentLifecycle::InPaintInvalidation);
1139 1139
1140 RELEASE_ASSERT(!layoutViewItem().isNull()); 1140 RELEASE_ASSERT(!layoutViewItem().isNull());
1141 LayoutViewItem rootForPaintInvalidation = layoutViewItem(); 1141 LayoutViewItem rootForPaintInvalidation = layoutViewItem();
1142 ASSERT(!rootForPaintInvalidation.needsLayout()); 1142 ASSERT(!rootForPaintInvalidation.needsLayout());
1143 1143
1144 TRACE_EVENT1("blink", "FrameView::invalidateTree", "root", rootForPaintInval idation.debugName().ascii()); 1144 TRACE_EVENT1("blink", "FrameView::invalidateTree", "root", rootForPaintInval idation.debugName().ascii());
1145 1145
1146 invalidatePaintIfNeeded(paintInvalidationState);
1146 rootForPaintInvalidation.invalidateTreeIfNeeded(paintInvalidationState); 1147 rootForPaintInvalidation.invalidateTreeIfNeeded(paintInvalidationState);
1147 invalidatePaintIfNeeded(paintInvalidationState);
1148 1148
1149 #if ENABLE(ASSERT) 1149 #if ENABLE(ASSERT)
1150 layoutView()->assertSubtreeClearedPaintInvalidationFlags(); 1150 layoutView()->assertSubtreeClearedPaintInvalidationFlags();
1151 #endif 1151 #endif
1152 1152
1153 lifecycle().advanceTo(DocumentLifecycle::PaintInvalidationClean); 1153 lifecycle().advanceTo(DocumentLifecycle::PaintInvalidationClean);
1154 } 1154 }
1155 1155
1156 void FrameView::invalidatePaintIfNeeded(const PaintInvalidationState& paintInval idationState) 1156 void FrameView::invalidatePaintIfNeeded(const PaintInvalidationState& paintInval idationState)
1157 { 1157 {
(...skipping 3255 matching lines...) Expand 10 before | Expand all | Expand 10 after
4413 } 4413 }
4414 4414
4415 bool FrameView::canThrottleRendering() const 4415 bool FrameView::canThrottleRendering() const
4416 { 4416 {
4417 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled()) 4417 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled())
4418 return false; 4418 return false;
4419 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling); 4419 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling);
4420 } 4420 }
4421 4421
4422 } // namespace blink 4422 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698