Bug 32449 - Child elements disappear, then get doubled, when changing -webkit-transform-style
Summary: Child elements disappear, then get doubled, when changing -webkit-transform-s...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Windows 7
: P2 Normal
Assignee: Chris Marrin
URL: http://webkit.org/blog-files/3d-trans...
Keywords: InRadar, PlatformOnly
Depends on:
Blocks:
 
Reported: 2009-12-11 14:07 PST by Adam Roben (:aroben)
Modified: 2010-03-18 16:03 PDT (History)
1 user (show)

See Also:


Attachments
Patch (5.86 KB, patch)
2010-03-17 16:58 PDT, Chris Marrin
no flags Details | Formatted Diff | Diff
replacement patch (7.18 KB, patch)
2010-03-18 14:46 PDT, Chris Marrin
simon.fraser: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Roben (:aroben) 2009-12-11 14:07:06 PST
To reproduce:

1. Go to http://webkit.org/blog-files/3d-transforms/transform-style.html
2. Hover over the box with the blue border
3. Move your mouse out of the box with the blue border

After step 2, the yellow and green rectangles disappear, but should instead be rendered flattened into the purple rectangle. After step 3, the yellow and green rectangles appear *both* flattened and unflattened, but should only appear unflattened.
Comment 1 mitz 2009-12-11 14:09:46 PST
<rdar://problem/7465615>
Comment 2 Chris Marrin 2010-03-17 16:58:59 PDT
Created attachment 50972 [details]
Patch
Comment 3 Chris Marrin 2010-03-18 14:46:06 PDT
Created attachment 51097 [details]
replacement patch

This separates the removeFromSuperLayer loop from the insertSublayer loop in the setSublayers method. This is safer to avoid mutating the array while traversing it.
Comment 4 Simon Fraser (smfr) 2010-03-18 14:49:53 PDT
Comment on attachment 51097 [details]
replacement patch

r=me but this needs a layout test (written to assume that pixel and/or layer dumping is available in future).
Comment 5 Chris Marrin 2010-03-18 16:01:40 PDT
Landed in http://trac.webkit.org/changeset/56200
Comment 6 Chris Marrin 2010-03-18 16:03:47 PDT
I am working on printing the layer tree from DRT. When I land that, I will land a test for this bug as a proof of concept