Bug 20885

Summary: Use m_everHadLayout in RenderObject::checkForRepaintDuringLayout()
Product: WebKit Reporter: mitz
Component: Layout and RenderingAssignee: Eric Seidel (no email) <eric>
Status: RESOLVED FIXED    
Severity: Minor CC: bdakin, dglazkov, eric, hyatt, simon.fraser, webkit.review.bot
Priority: P3    
Version: 528+ (Nightly build)   
Hardware: Mac   
OS: OS X 10.5   
Bug Depends on:    
Bug Blocks: 92800    
Attachments:
Description Flags
wip, I expect the cr-ews will see some pixel failures
none
Archive of layout-test-results from gce-cr-linux-03
none
Should fix SVG, but may have other bugs
none
Archive of layout-test-results from gce-cr-linux-07
none
Patch
none
Archive of layout-test-results from gce-cr-linux-03
none
Patch including more updated pixel results none

Description mitz 2008-09-16 10:39:12 PDT
RenderBlock suppresses repainting during layout if m_everHadLayout is false. As the FIXME in RenderObject::checkForRepaintDuringLayout() says, this should be generalized to all RenderObjects.
Comment 1 Eric Seidel (no email) 2012-08-02 01:16:35 PDT
Created attachment 156001 [details]
wip, I expect the cr-ews will see some pixel failures
Comment 2 WebKit Review Bot 2012-08-02 01:51:45 PDT
Comment on attachment 156001 [details]
wip, I expect the cr-ews will see some pixel failures

Attachment 156001 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13424131

New failing tests:
svg/hixie/perf/004.xml
svg/hixie/perf/005.xml
svg/custom/js-late-marker-creation.svg
svg/carto.net/window.svg
svg/custom/use-detach.svg
svg/custom/js-late-clipPath-and-object-creation.svg
svg/custom/js-late-mask-creation.svg
svg/hixie/perf/006.xml
svg/custom/js-late-mask-and-object-creation.svg
svg/custom/js-late-clipPath-creation.svg
Comment 3 WebKit Review Bot 2012-08-02 01:51:48 PDT
Created attachment 156007 [details]
Archive of layout-test-results from gce-cr-linux-03

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: gce-cr-linux-03  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.39-gcg-201203291735-x86_64-with-Ubuntu-10.04-lucid
Comment 4 Eric Seidel (no email) 2012-08-02 02:16:29 PDT
Very interesting.  I'll look into the failures more in the morning, but these look identical to failures seen in bug 92800.  I believe SVG just isn't ready for this optimization as I think this optimization depends on parents telling their children to do a full repaint when they do their first layout, but I'm not yet sure.
Comment 5 Eric Seidel (no email) 2012-08-06 16:23:50 PDT
Created attachment 156786 [details]
Should fix SVG, but may have other bugs
Comment 6 WebKit Review Bot 2012-08-06 19:48:29 PDT
Comment on attachment 156786 [details]
Should fix SVG, but may have other bugs

Attachment 156786 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13452100

New failing tests:
svg/custom/use-detach.svg
Comment 7 WebKit Review Bot 2012-08-06 19:48:33 PDT
Created attachment 156841 [details]
Archive of layout-test-results from gce-cr-linux-07

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: gce-cr-linux-07  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.39-gcg-201203291735-x86_64-with-Ubuntu-10.04-lucid
Comment 8 Eric Seidel (no email) 2012-08-06 21:24:02 PDT
Perfect!  That one appears to be a progression.  I'll upload a patch for real review shortly.
Comment 9 Eric Seidel (no email) 2012-08-06 23:53:22 PDT
Created attachment 156880 [details]
Patch
Comment 10 WebKit Review Bot 2012-08-07 03:29:52 PDT
Comment on attachment 156880 [details]
Patch

Attachment 156880 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13452225

New failing tests:
svg/custom/use-detach.svg
Comment 11 WebKit Review Bot 2012-08-07 03:29:56 PDT
Created attachment 156905 [details]
Archive of layout-test-results from gce-cr-linux-03

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: gce-cr-linux-03  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.39-gcg-201203291735-x86_64-with-Ubuntu-10.04-lucid
Comment 12 Eric Seidel (no email) 2012-08-07 12:38:56 PDT
Created attachment 156976 [details]
Patch including more updated pixel results
Comment 13 Eric Seidel (no email) 2012-08-08 12:52:39 PDT
Any thoughts?
Comment 14 Eric Seidel (no email) 2012-08-09 00:26:51 PDT
Comment on attachment 156976 [details]
Patch including more updated pixel results

Thanks mitz!
Comment 15 WebKit Review Bot 2012-08-09 00:59:06 PDT
Comment on attachment 156976 [details]
Patch including more updated pixel results

Clearing flags on attachment: 156976

Committed r125160: <http://trac.webkit.org/changeset/125160>
Comment 16 WebKit Review Bot 2012-08-09 00:59:11 PDT
All reviewed patches have been landed.  Closing bug.