Bug 126991 - Text with simple line layout not getting pushed below float when there is not enough space for it
Summary: Text with simple line layout not getting pushed below float when there is not...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL: http://www.theverge.com/2014/1/2/5264...
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2014-01-14 10:26 PST by Ralph T
Modified: 2014-05-11 02:43 PDT (History)
8 users (show)

See Also:


Attachments
Screenshot of bad overlapping layout (305.53 KB, image/png)
2014-01-14 10:31 PST, Ralph T
no flags Details
reduced test case (720 bytes, text/html)
2014-01-20 20:47 PST, zalan
no flags Details
patch (12.14 KB, patch)
2014-05-11 01:51 PDT, Antti Koivisto
kling: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ralph T 2014-01-14 10:26:34 PST
This page uses an unaccelerated CSS animation (of width, with height set to auto) to grow "float: right" (class "zm right zoom") boxes containing images on hover.

If you scroll to "SAPPHIRE" and hover the image on the right then at the end of the animation the text overlaps the image. With simple line layout disabled the text does not overlap the image.
Comment 1 Ralph T 2014-01-14 10:31:57 PST
Created attachment 221177 [details]
Screenshot of bad overlapping layout

I see this with a build I made using r161903 from yesterday on an elderly macbook air.
Comment 2 Ralph T 2014-01-20 17:16:20 PST
I thought this might have been fixed after Zalan's change r162340, but it still persists. Layout is fine with SimpleLineLayout disabled (I just change canUse() to always return false), so I'm pretty sure this is a SimpleLineLayout bug.
Comment 3 zalan 2014-01-20 20:47:42 PST
Created attachment 221718 [details]
reduced test case

This is definitely a layout issue and not paint coordinates snapping (what my patch addressed)
Comment 4 Antti Koivisto 2014-01-21 07:19:41 PST
SimpeLineLayout::canUseFor had code to disable the path for constrained float cases like this. I suspect the cached canUseFor is just not cleared after dynamic style change here. Or the existing test is just insufficient.
Comment 5 Antti Koivisto 2014-05-11 01:51:19 PDT
Created attachment 231258 [details]
patch
Comment 6 Antti Koivisto 2014-05-11 01:51:39 PDT
<rdar://problem/16843257>
Comment 7 Antti Koivisto 2014-05-11 02:43:35 PDT
https://trac.webkit.org/r168598