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

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

Issue 2212183004: Log to UMA when x-origin frames (1) are created and (2) become visible (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix histogram description Created 4 years, 3 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 4252 matching lines...) Expand 10 before | Expand all | Expand 10 after
4263 void FrameView::notifyRenderThrottlingObserversForTesting() 4263 void FrameView::notifyRenderThrottlingObserversForTesting()
4264 { 4264 {
4265 DCHECK(m_renderThrottlingObserverNotificationFactory->isPending()); 4265 DCHECK(m_renderThrottlingObserverNotificationFactory->isPending());
4266 notifyRenderThrottlingObservers(); 4266 notifyRenderThrottlingObservers();
4267 } 4267 }
4268 4268
4269 void FrameView::notifyRenderThrottlingObservers() 4269 void FrameView::notifyRenderThrottlingObservers()
4270 { 4270 {
4271 TRACE_EVENT0("blink", "FrameView::notifyRenderThrottlingObservers"); 4271 TRACE_EVENT0("blink", "FrameView::notifyRenderThrottlingObservers");
4272 DCHECK(!isInPerformLayout()); 4272 DCHECK(!isInPerformLayout());
4273 DCHECK(!m_frame->document() || !m_frame->document()->inStyleRecalc()); 4273 DCHECK(frame().document());
4274 DCHECK(!frame().document()->inStyleRecalc());
4274 bool wasThrottled = canThrottleRendering(); 4275 bool wasThrottled = canThrottleRendering();
4275 4276
4276 updateThrottlingStatus(); 4277 updateThrottlingStatus();
4277 4278
4279 frame().document()->onVisibilityMaybeChanged(!m_hiddenForThrottling);
4280
4278 bool becameThrottled = !wasThrottled && canThrottleRendering(); 4281 bool becameThrottled = !wasThrottled && canThrottleRendering();
4279 bool becameUnthrottled = wasThrottled && !canThrottleRendering(); 4282 bool becameUnthrottled = wasThrottled && !canThrottleRendering();
4280 ScrollingCoordinator* scrollingCoordinator = this->scrollingCoordinator(); 4283 ScrollingCoordinator* scrollingCoordinator = this->scrollingCoordinator();
4281 if (becameThrottled) { 4284 if (becameThrottled) {
4282 // If this FrameView became throttled, we must make sure all of its 4285 // If this FrameView became throttled, we must make sure all of its
4283 // children become throttled at the same time. Otherwise we might 4286 // children become throttled at the same time. Otherwise we might
4284 // attempt to paint one of the children with an out-of-date layout 4287 // attempt to paint one of the children with an out-of-date layout
4285 // before |notifyRenderThrottlingObservers| has made it throttled. 4288 // before |notifyRenderThrottlingObservers| has made it throttled.
4286 forAllNonThrottledFrameViews([](FrameView& frameView) { 4289 forAllNonThrottledFrameViews([](FrameView& frameView) {
4287 frameView.m_subtreeThrottled = true; 4290 frameView.m_subtreeThrottled = true;
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
4323 } 4326 }
4324 4327
4325 bool FrameView::canThrottleRendering() const 4328 bool FrameView::canThrottleRendering() const
4326 { 4329 {
4327 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled()) 4330 if (!RuntimeEnabledFeatures::renderingPipelineThrottlingEnabled())
4328 return false; 4331 return false;
4329 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling); 4332 return m_subtreeThrottled || (m_hiddenForThrottling && m_crossOriginForThrot tling);
4330 } 4333 }
4331 4334
4332 } // namespace blink 4335 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/dom/Document.cpp ('k') | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698