Bug 88366

Summary: Changing flexbox justify/alignment doesn't update their positioning
Product: WebKit Reporter: Eric <ericbidelman>
Component: Layout and RenderingAssignee: Tony Chang <tony>
Status: RESOLVED FIXED    
Severity: Normal CC: eric, ojan, tony, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 62048    
Attachments:
Description Flags
Test case
none
Patch none

Eric
Reported 2012-06-05 14:57:15 PDT
The attached test case demonstrates this. The buttons update the justify/alignment properties of the flex container, but the items are not repositioned correctly. Toggling off the original style set on the flex contain (via the inspector) works. It appears a repaint is happening. I'm on 536.5 (@118056)
Attachments
Test case (1.18 KB, text/html)
2012-06-05 14:59 PDT, Eric
no flags
Patch (5.45 KB, patch)
2012-06-05 17:35 PDT, Tony Chang
no flags
Eric
Comment 1 2012-06-05 14:59:46 PDT
Created attachment 145875 [details] Test case
Tony Chang
Comment 2 2012-06-05 15:10:28 PDT
I don't have time to investigate this right now, but I suspect that the bug is that in RenderStyle::diff, we don't compare the new values on rareNonInheritedData. Previously, we would compare rareNonInheritedData->m_flexibleBox against each other, but moving the values to rareNonInheritedData doesn't automatically do this. Once we realize that the style has changed, we'll probably re-layout properly. The fix is probably around line RenderStyle.cpp:376.
Tony Chang
Comment 3 2012-06-05 17:35:03 PDT
Tony Chang
Comment 4 2012-06-05 17:35:27 PDT
I wasn't making progress on my other bug, so I decided to fix this :)
WebKit Review Bot
Comment 5 2012-06-05 23:45:40 PDT
Comment on attachment 145903 [details] Patch Clearing flags on attachment: 145903 Committed r119564: <http://trac.webkit.org/changeset/119564>
WebKit Review Bot
Comment 6 2012-06-05 23:45:50 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.