Changeset 212499 in webkit
- Timestamp:
- Feb 16, 2017 4:56:33 PM (7 years ago)
- Location:
- branches/safari-603-branch
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-603-branch/LayoutTests/ChangeLog
r212498 r212499 1 2017-02-16 Matthew Hanson <matthew_hanson@apple.com> 2 3 Merge r212172. rdar://problem/30476807 4 5 2017-02-10 Simon Fraser <simon.fraser@apple.com> 6 7 REGRESSION (r211845): [ios-simulator] LayoutTest compositing/masks/solid-color-masked.html is a flaky failure 8 https://bugs.webkit.org/show_bug.cgi?id=168054 9 10 Reviewed by Tim Horton. 11 12 Make the timeout 10ms so the test consistently fails with the old code. 13 14 * compositing/masks/solid-color-masked.html: 15 1 16 2017-02-16 Matthew Hanson <matthew_hanson@apple.com> 2 17 -
branches/safari-603-branch/LayoutTests/compositing/masks/solid-color-masked.html
r170306 r212499 11 11 12 12 .composited { 13 -webkit-transform: translateZ(0);13 transform: translateZ(0); 14 14 } 15 15 … … 27 27 if (window.testRunner) 28 28 testRunner.notifyDone(); 29 }, 0);29 }, 10); 30 30 } 31 31 window.addEventListener('load', doTest, false); -
branches/safari-603-branch/Source/WebCore/ChangeLog
r212496 r212499 1 2017-02-16 Matthew Hanson <matthew_hanson@apple.com> 2 3 Merge r212172. rdar://problem/30476807 4 5 2017-02-10 Simon Fraser <simon.fraser@apple.com> 6 7 REGRESSION (r211845): [ios-simulator] LayoutTest compositing/masks/solid-color-masked.html is a flaky failure 8 https://bugs.webkit.org/show_bug.cgi?id=168054 9 10 Reviewed by Tim Horton. 11 12 When adding mask layers, there was an ordering dependency. There was a hack in GraphicsLayerCA::setVisibleAndCoverageRects() 13 to propagate m_intersectsCoverageRect to masks. However, if GraphicsLayerCA::setVisibleAndCoverageRects() 14 ran on the masked layer before the mask was added, nothing updated the "m_intersectsCoverageRect" state of the mask layer. 15 16 Fix by explicitly calling setVisibleAndCoverageRects() on the mask layer, passing the same rects and 17 viewport-constrained state as for its host layer (we already assume that their geometry matches). 18 19 Tested by compositing/masks/solid-color-masked.html 20 21 * platform/graphics/ca/GraphicsLayerCA.cpp: 22 (WebCore::GraphicsLayerCA::setVisibleAndCoverageRects): 23 (WebCore::GraphicsLayerCA::recursiveCommitChanges): 24 1 25 2017-02-16 Matthew Hanson <matthew_hanson@apple.com> 2 26 -
branches/safari-603-branch/Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp
r212489 r212499 1333 1333 m_uncommittedChanges |= CoverageRectChanged; 1334 1334 m_intersectsCoverageRect = intersectsCoverageRect; 1335 1336 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) {1337 maskLayer->m_uncommittedChanges |= CoverageRectChanged;1338 maskLayer->m_intersectsCoverageRect = intersectsCoverageRect;1339 }1340 1335 } 1341 1336 … … 1343 1338 m_uncommittedChanges |= CoverageRectChanged; 1344 1339 m_visibleRect = rects.visibleRect; 1345 1346 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) {1347 // FIXME: this assumes that the mask layer has the same geometry as this layer (which is currently always true).1348 maskLayer->m_uncommittedChanges |= CoverageRectChanged;1349 maskLayer->m_visibleRect = rects.visibleRect;1350 }1351 1340 } 1352 1341 … … 1354 1343 m_uncommittedChanges |= CoverageRectChanged; 1355 1344 m_coverageRect = rects.coverageRect; 1356 1357 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) {1358 maskLayer->m_uncommittedChanges |= CoverageRectChanged;1359 maskLayer->m_coverageRect = rects.coverageRect;1360 }1361 1345 } 1362 1346 } … … 1424 1408 childCommitState.ancestorIsViewportConstrained |= m_isViewportConstrained; 1425 1409 1426 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) 1410 if (GraphicsLayerCA* maskLayer = downcast<GraphicsLayerCA>(m_maskLayer)) { 1411 maskLayer->setVisibleAndCoverageRects(rects, m_isViewportConstrained || commitState.ancestorIsViewportConstrained); 1427 1412 maskLayer->commitLayerChangesBeforeSublayers(childCommitState, pageScaleFactor, baseRelativePosition); 1413 } 1428 1414 1429 1415 const Vector<GraphicsLayer*>& childLayers = children();
Note: See TracChangeset
for help on using the changeset viewer.