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

Side by Side Diff: third_party/WebKit/Source/core/paint/PaintLayer.cpp

Issue 2365673002: Fix assertions related to floats and z-order lists when compositing opaque scrollers (Closed)
Patch Set: 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
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
5 * 5 *
6 * Other contributors: 6 * Other contributors:
7 * Robert O'Callahan <roc+@cs.cmu.edu> 7 * Robert O'Callahan <roc+@cs.cmu.edu>
8 * David Baron <dbaron@fas.harvard.edu> 8 * David Baron <dbaron@fas.harvard.edu>
9 * Christian Biesinger <cbiesinger@web.de> 9 * Christian Biesinger <cbiesinger@web.de>
10 * Randall Jesup <rjesup@wgate.com> 10 * Randall Jesup <rjesup@wgate.com>
(...skipping 2348 matching lines...) Expand 10 before | Expand all | Expand 10 after
2359 return 0; 2359 return 0;
2360 case PaintsIntoGroupedBacking: 2360 case PaintsIntoGroupedBacking:
2361 return groupedMapping()->squashingLayer(); 2361 return groupedMapping()->squashingLayer();
2362 default: 2362 default:
2363 return compositedLayerMapping()->scrollingContentsLayer() ? compositedLa yerMapping()->scrollingContentsLayer() : compositedLayerMapping()->mainGraphicsL ayer(); 2363 return compositedLayerMapping()->scrollingContentsLayer() ? compositedLa yerMapping()->scrollingContentsLayer() : compositedLayerMapping()->mainGraphicsL ayer();
2364 } 2364 }
2365 } 2365 }
2366 2366
2367 bool PaintLayer::canPaintBackgroundOntoScrollingContentsLayer() const 2367 bool PaintLayer::canPaintBackgroundOntoScrollingContentsLayer() const
2368 { 2368 {
2369 return !isRootLayer() 2369 if (isRootLayer() || !scrollsOverflow() || !layoutObject()->hasLocalEquivale ntBackground())
2370 && scrollsOverflow() 2370 return false;
2371 && layoutObject()->hasLocalEquivalentBackground() 2371
2372 && !stackingNode()->hasNegativeZOrderList(); 2372 m_stackingNode->updateLayerListsIfNeeded();
2373 return !m_stackingNode->hasNegativeZOrderList();
2373 } 2374 }
2374 2375
2375 void PaintLayer::ensureCompositedLayerMapping() 2376 void PaintLayer::ensureCompositedLayerMapping()
2376 { 2377 {
2377 if (m_rareData && m_rareData->compositedLayerMapping) 2378 if (m_rareData && m_rareData->compositedLayerMapping)
2378 return; 2379 return;
2379 2380
2380 ensureRareData().compositedLayerMapping = wrapUnique(new CompositedLayerMapp ing(*this)); 2381 ensureRareData().compositedLayerMapping = wrapUnique(new CompositedLayerMapp ing(*this));
2381 m_rareData->compositedLayerMapping->setNeedsGraphicsLayerUpdate(GraphicsLaye rUpdateSubtree); 2382 m_rareData->compositedLayerMapping->setNeedsGraphicsLayerUpdate(GraphicsLaye rUpdateSubtree);
2382 2383
(...skipping 623 matching lines...) Expand 10 before | Expand all | Expand 10 after
3006 3007
3007 void showLayerTree(const blink::LayoutObject* layoutObject) 3008 void showLayerTree(const blink::LayoutObject* layoutObject)
3008 { 3009 {
3009 if (!layoutObject) { 3010 if (!layoutObject) {
3010 fprintf(stderr, "Cannot showLayerTree. Root is (nil)\n"); 3011 fprintf(stderr, "Cannot showLayerTree. Root is (nil)\n");
3011 return; 3012 return;
3012 } 3013 }
3013 showLayerTree(layoutObject->enclosingLayer()); 3014 showLayerTree(layoutObject->enclosingLayer());
3014 } 3015 }
3015 #endif 3016 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698