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

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

Issue 2028523002: Attribute Stuff to Frames with FrameBlamer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: UTC201606010826 Created 4 years, 6 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 2575 matching lines...) Expand 10 before | Expand all | Expand 10 after
2586 { 2586 {
2587 SCOPED_BLINK_UMA_HISTOGRAM_TIMER("Blink.StyleAndLayout.UpdateTime"); 2587 SCOPED_BLINK_UMA_HISTOGRAM_TIMER("Blink.StyleAndLayout.UpdateTime");
2588 updateStyleAndLayoutIfNeededRecursiveInternal(); 2588 updateStyleAndLayoutIfNeededRecursiveInternal();
2589 } 2589 }
2590 2590
2591 void FrameView::updateStyleAndLayoutIfNeededRecursiveInternal() 2591 void FrameView::updateStyleAndLayoutIfNeededRecursiveInternal()
2592 { 2592 {
2593 if (shouldThrottleRendering()) 2593 if (shouldThrottleRendering())
2594 return; 2594 return;
2595 2595
2596 ScopedFrameBlamer frameBlamer(m_frame.get());
2597 TRACE_EVENT0("blink", "FrameView::updateStyleAndLayoutIfNeededRecursive");
2598
2596 // We have to crawl our entire subtree looking for any FrameViews that need 2599 // We have to crawl our entire subtree looking for any FrameViews that need
2597 // layout and make sure they are up to date. 2600 // layout and make sure they are up to date.
2598 // Mac actually tests for intersection with the dirty region and tries not t o 2601 // Mac actually tests for intersection with the dirty region and tries not t o
2599 // update layout for frames that are outside the dirty region. Not only doe s this seem 2602 // update layout for frames that are outside the dirty region. Not only doe s this seem
2600 // pointless (since those frames will have set a zero timer to layout anyway ), but 2603 // pointless (since those frames will have set a zero timer to layout anyway ), but
2601 // it is also incorrect, since if two frames overlap, the first could be exc luded from the dirty 2604 // it is also incorrect, since if two frames overlap, the first could be exc luded from the dirty
2602 // region but then become included later by the second frame adding rects to the dirty region 2605 // region but then become included later by the second frame adding rects to the dirty region
2603 // when it lays out. 2606 // when it lays out.
2604 2607
2605 m_frame->document()->updateStyleAndLayoutTree(); 2608 m_frame->document()->updateStyleAndLayoutTree();
(...skipping 1529 matching lines...) Expand 10 before | Expand all | Expand 10 after
4135 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling); 4138 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling);
4136 } 4139 }
4137 4140
4138 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const 4141 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const
4139 { 4142 {
4140 ASSERT(!layoutViewItem().isNull()); 4143 ASSERT(!layoutViewItem().isNull());
4141 return *layoutView(); 4144 return *layoutView();
4142 } 4145 }
4143 4146
4144 } // namespace blink 4147 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698