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

Side by Side Diff: Source/core/layout/LayoutView.cpp

Issue 1026823002: [S.P.] Don't draw frames of animated images that are offscreen (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed. 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv ed.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 if (doingFullPaintInvalidation() && !dirtyRect.isEmpty()) { 335 if (doingFullPaintInvalidation() && !dirtyRect.isEmpty()) {
336 const LayoutBoxModelObject* paintInvalidationContainer = &paintInvalidat ionState.paintInvalidationContainer(); 336 const LayoutBoxModelObject* paintInvalidationContainer = &paintInvalidat ionState.paintInvalidationContainer();
337 DeprecatedPaintLayer::mapRectToPaintInvalidationBacking(this, paintInval idationContainer, dirtyRect, &paintInvalidationState); 337 DeprecatedPaintLayer::mapRectToPaintInvalidationBacking(this, paintInval idationContainer, dirtyRect, &paintInvalidationState);
338 invalidatePaintUsingContainer(paintInvalidationContainer, dirtyRect, Pai ntInvalidationFull); 338 invalidatePaintUsingContainer(paintInvalidationContainer, dirtyRect, Pai ntInvalidationFull);
339 if (RuntimeEnabledFeatures::slimmingPaintEnabled()) 339 if (RuntimeEnabledFeatures::slimmingPaintEnabled())
340 invalidateDisplayItemClients(*paintInvalidationContainer); 340 invalidateDisplayItemClients(*paintInvalidationContainer);
341 } 341 }
342 LayoutBlock::invalidateTreeIfNeeded(paintInvalidationState); 342 LayoutBlock::invalidateTreeIfNeeded(paintInvalidationState);
343 } 343 }
344 344
345 void LayoutView::invalidatePaintForDelayedTargets()
346 {
347 for (auto& target : m_pendingDelayedPaintInvalidations)
348 target->setShouldDoFullPaintInvalidation(PaintInvalidationDelayedFull);
349 m_pendingDelayedPaintInvalidations.clear();
350 }
351
345 void LayoutView::invalidatePaintForRectangle(const LayoutRect& paintInvalidation Rect, PaintInvalidationReason invalidationReason) const 352 void LayoutView::invalidatePaintForRectangle(const LayoutRect& paintInvalidation Rect, PaintInvalidationReason invalidationReason) const
346 { 353 {
347 ASSERT(!paintInvalidationRect.isEmpty()); 354 ASSERT(!paintInvalidationRect.isEmpty());
348 355
349 if (document().printing() || !m_frameView) 356 if (document().printing() || !m_frameView)
350 return; 357 return;
351 358
352 ASSERT(layer()->compositingState() == PaintsIntoOwnBacking || !frame()->owne rLayoutObject()); 359 ASSERT(layer()->compositingState() == PaintsIntoOwnBacking || !frame()->owne rLayoutObject());
353 360
354 if (layer()->compositingState() == PaintsIntoOwnBacking) { 361 if (layer()->compositingState() == PaintsIntoOwnBacking) {
(...skipping 602 matching lines...) Expand 10 before | Expand all | Expand 10 after
957 return viewHeight(IncludeScrollbars) / scale; 964 return viewHeight(IncludeScrollbars) / scale;
958 } 965 }
959 966
960 void LayoutView::willBeDestroyed() 967 void LayoutView::willBeDestroyed()
961 { 968 {
962 LayoutBlockFlow::willBeDestroyed(); 969 LayoutBlockFlow::willBeDestroyed();
963 m_compositor.clear(); 970 m_compositor.clear();
964 } 971 }
965 972
966 } // namespace blink 973 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698