Changeset 184421 in webkit
- Timestamp:
- May 15, 2015, 4:29:29 PM (11 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 4 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/compositing/visible-rect/backing-change-height-from-zero-expected.txt (added)
-
LayoutTests/compositing/visible-rect/backing-change-height-from-zero.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp (modified) (2 diffs)
-
Source/WebCore/rendering/RenderLayerBacking.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r184420 r184421 1 2015-05-15 Simon Fraser <simon.fraser@apple.com> 2 3 REGRESSION (r183300): Background missing on top links on apple.com 4 https://bugs.webkit.org/show_bug.cgi?id=145079 5 rdar://problem/20914252 6 7 Reviewed by Tim Horton. 8 9 Composited box that toggles to a non-zero height and dumps layers. 10 11 * compositing/visible-rect/backing-change-height-from-zero-expected.txt: Added. 12 * compositing/visible-rect/backing-change-height-from-zero.html: Added. 13 1 14 2015-05-15 Sam Weinig <sam@webkit.org> 2 15 -
trunk/Source/WebCore/ChangeLog
r184420 r184421 1 2015-05-15 Simon Fraser <simon.fraser@apple.com> 2 3 REGRESSION (r183300): Background missing on top links on apple.com 4 https://bugs.webkit.org/show_bug.cgi?id=145079 5 rdar://problem/20914252 6 7 Reviewed by Tim Horton. 8 9 GraphicsLayerCA::setVisibleAndCoverageRects() only set the m_intersectsCoverageRect 10 flag if the coverage rect changed, but it doesn't if you simply change the size of 11 the layer. 12 13 Instead, always re-evaluate the intersection, and set the CoverageRectChanged bit 14 if it changes. 15 16 Test: compositing/visible-rect/backing-change-height-from-zero.html 17 18 * platform/graphics/ca/GraphicsLayerCA.cpp: 19 (WebCore::GraphicsLayerCA::setVisibleAndCoverageRects): 20 * rendering/RenderLayerBacking.cpp: 21 (WebCore::RenderLayerBacking::shouldSkipLayerInDump): Don't skip any layers in a 22 debug layer dump, to assist debugging. 23 1 24 2015-05-15 Sam Weinig <sam@webkit.org> 2 25 -
trunk/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp
r183970 r184421 1261 1261 return; 1262 1262 1263 // FIXME: we need to take reflections into account when determining whether this layer intersects the coverage rect. 1264 bool intersectsCoverageRect = !allowBackingStoreDetachment || m_coverageRect.intersects(FloatRect(m_boundsOrigin, size())); 1265 if (intersectsCoverageRect != m_intersectsCoverageRect) { 1266 m_uncommittedChanges |= CoverageRectChanged; 1267 m_intersectsCoverageRect = intersectsCoverageRect; 1268 } 1269 1263 1270 if (visibleRectChanged) { 1264 1271 m_uncommittedChanges |= CoverageRectChanged; 1265 1272 m_visibleRect = rects.visibleRect; 1266 1273 1267 1274 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) { 1268 1275 // FIXME: this assumes that the mask layer has the same geometry as this layer (which is currently always true). … … 1275 1282 m_uncommittedChanges |= CoverageRectChanged; 1276 1283 m_coverageRect = rects.coverageRect; 1277 1278 // FIXME: we need to take reflections into account when determining whether this layer intersects the coverage rect.1279 m_intersectsCoverageRect = !allowBackingStoreDetachment || m_coverageRect.intersects(FloatRect(m_boundsOrigin, size()));1280 1284 1281 1285 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) { -
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
r184395 r184421 2394 2394 } 2395 2395 2396 bool RenderLayerBacking::shouldSkipLayerInDump(const GraphicsLayer* layer, LayerTreeAsTextBehavior) const 2397 { 2396 bool RenderLayerBacking::shouldSkipLayerInDump(const GraphicsLayer* layer, LayerTreeAsTextBehavior behavior) const 2397 { 2398 if (behavior & LayerTreeAsTextDebug) 2399 return false; 2400 2398 2401 // Skip the root tile cache's flattening layer. 2399 2402 return m_isMainFrameRenderViewLayer && layer && layer == m_childContainmentLayer.get();
Note:
See TracChangeset
for help on using the changeset viewer.