Changeset 172183 in webkit
- Timestamp:
- Aug 6, 2014, 4:05:34 PM (11 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 3 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/compositing/backing/backface-visibility-flip-expected.txt (added)
-
LayoutTests/compositing/backing/backface-visibility-flip.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/rendering/RenderLayerCompositor.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r172160 r172183 1 2014-08-06 Simon Fraser <simon.fraser@apple.com> 2 3 REGRESSION (r168119): Album flipping animation doesn’t work 4 https://bugs.webkit.org/show_bug.cgi?id=132801 5 6 Reviewed by Dean Jackson. 7 8 Test that starts a transform animation and dumps layers. 9 10 * compositing/backing/backface-visibility-flip-expected.txt: Added. 11 * compositing/backing/backface-visibility-flip.html: Added. 12 1 13 2014-08-06 Brent Fulgham <bfulgham@apple.com> 2 14 -
trunk/Source/WebCore/ChangeLog
r172182 r172183 1 2014-08-06 Simon Fraser <simon.fraser@apple.com> 2 3 REGRESSION (r168119): Album flipping animation doesn’t work 4 https://bugs.webkit.org/show_bug.cgi?id=132801 5 <rdar://problem/16878497>, <rdar://problem/17908085> 6 7 Reviewed by Dean Jackson. 8 9 In r168119 I avoided creating backing store for backface-visibility:hidden unless 10 some ancestor was 3d-transformed. However, when starting transitions or animations 11 that apply transforms, we don't do a layout, and therefore don't update the RenderLayer 12 flags that mark an ancestor as having a transform. This broke various content which 13 used backface-visibility:hidden for "flip" animations. 14 15 Make a low-risk fix that looks for the pattern of CSS properties used for flipping, 16 making a compositing layer for backface-visibility:hidden if the stacking context element 17 has transform-style: preserve-3d. 18 19 Test: compositing/backing/backface-visibility-flip.html 20 21 * rendering/RenderLayerCompositor.cpp: 22 (WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility): 23 1 24 2014-08-06 Brent Fulgham <bfulgham@apple.com> 2 25 -
trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp
r172179 r172183 2393 2393 return false; 2394 2394 2395 return renderer.style().backfaceVisibility() == BackfaceVisibilityHidden && renderer.layer()->has3DTransformedAncestor(); 2395 if (renderer.style().backfaceVisibility() != BackfaceVisibilityHidden) 2396 return false; 2397 2398 if (renderer.layer()->has3DTransformedAncestor()) 2399 return true; 2400 2401 // FIXME: workaround for webkit.org/b/132801 2402 RenderLayer* stackingContext = renderer.layer()->stackingContainer(); 2403 if (stackingContext && stackingContext->renderer().style().transformStyle3D() == TransformStyle3DPreserve3D) 2404 return true; 2405 2406 return false; 2396 2407 } 2397 2408
Note:
See TracChangeset
for help on using the changeset viewer.