Bug 71550 - REGRESSION (r93614): Content remains despite parent element being scrolled off page using javascript.
Summary: REGRESSION (r93614): Content remains despite parent element being scrolled of...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P1 Normal
Assignee: Julien Chaffraix
URL: http://ec2-79-125-31-197.eu-west-1.co...
Keywords: HasReduction, Regression
: 71475 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-11-04 03:16 PDT by Matt Bee
Modified: 2011-11-09 12:35 PST (History)
5 users (show)

See Also:


Attachments
Screenshots of working page and incorrect rendering on subsequent navigation (1.45 MB, image/png)
2011-11-04 03:18 PDT, Matt Bee
no flags Details
Reduction, there should be no red on the page (1022 bytes, text/html)
2011-11-04 16:03 PDT, Julien Chaffraix
no flags Details
WIP fix 1: be more correct but keep the previous table optimization, needs some more testing. (29.91 KB, patch)
2011-11-07 18:21 PST, Julien Chaffraix
no flags Details | Formatted Diff | Diff
Fix 2: better table coverage, same code change, only Chromium-linux baseline. (37.88 KB, patch)
2011-11-08 14:54 PST, Julien Chaffraix
no flags Details | Formatted Diff | Diff
Patch for landing (37.97 KB, patch)
2011-11-09 12:01 PST, Julien Chaffraix
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Matt Bee 2011-11-04 03:16:42 PDT
Chrome Version       : 15.0.874.106
OS Version: OS X 10.7.2
URLs (if applicable) : http://ec2-79-125-31-197.eu-west-1.compute.amazonaws.com/
Other browsers tested:
  Add OK or FAIL after other browsers where you have tested this issue:
     Safari 5: OK
  Firefox 7.x: OK
     IE 7/8/9: OK
 Opera 11.51: OK

Bug replicated on chrome and as per Chromium report:
It seems that this is an Webkit issue because I can also reproduce it with the Latest Webkit r98912. Please file a report at https://bugs.webkit.org/ and post the webkit-bug-no here. Thanks in advance!
http://code.google.com/p/chromium/issues/detail?id=102471

What steps will reproduce the problem?
1. Visit http://ec2-79-125-31-197.eu-west-1.compute.amazonaws.com/ (qa site)
2. Click on The Fabric Offering (note title and content)
3. Click on the "Unified Customer Profile"

What is the expected result?
The Fabric offering content scrolls off screen using javascript

What happens instead?
Only some of the content scrolls off screen.  If the content is selected or mouseover occurs, the content is then revealed as it should be. Inspect element also reveals content as it should do.

Please provide any additional information below. Attach a screenshot if
possible.

UserAgentString: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.106 Safari/535.2
Comment 1 Matt Bee 2011-11-04 03:18:17 PDT
Created attachment 113641 [details]
Screenshots of working page and incorrect rendering on subsequent navigation
Comment 2 Alexey Proskuryakov 2011-11-04 13:25:22 PDT
Possibly a duplicate of bug 67100.
Comment 3 Julien Chaffraix 2011-11-04 14:22:38 PDT
(In reply to comment #2)
> Possibly a duplicate of bug 67100.

Difficult to say without knowing what's going on in the Reader. See also bug 71475.
Comment 4 Julien Chaffraix 2011-11-04 16:03:01 PDT
Created attachment 113725 [details]
Reduction, there should be no red on the page
Comment 5 Julien Chaffraix 2011-11-07 16:56:38 PST
*** Bug 71475 has been marked as a duplicate of this bug. ***
Comment 6 Julien Chaffraix 2011-11-07 18:21:44 PST
Created attachment 113972 [details]
WIP fix 1: be more correct but keep the previous table optimization, needs some more testing.
Comment 7 Julien Chaffraix 2011-11-08 14:54:50 PST
Created attachment 114158 [details]
Fix 2: better table coverage, same code change, only Chromium-linux baseline.
Comment 8 Simon Fraser (smfr) 2011-11-09 10:59:11 PST
Comment on attachment 114158 [details]
Fix 2: better table coverage, same code change, only Chromium-linux baseline.

View in context: https://bugs.webkit.org/attachment.cgi?id=114158&action=review

> Source/WebCore/rendering/RenderLayer.cpp:439
> +    if (flags & HasSeenFixedPositionedAncestor || renderer()->style()->position() == FixedPosition) {

Would prefer parens around flags & HasSeenFixedPositionedAncestor

> Source/WebCore/rendering/RenderLayer.cpp:448
> +    } else if (flags & HasSeenAncestorWithOverflowClip && !m_canSkipRepaintRectsUpdateOnScroll) {

Ditto

> Source/WebCore/rendering/RenderLayer.h:475
> +        HasSeenFixedPositionedAncestor = 1 << 1,
> +        HasSeenAncestorWithOverflowClip = 1 << 2

Should be 1 << 0 and 1 << 1
Comment 9 Julien Chaffraix 2011-11-09 12:01:25 PST
Created attachment 114336 [details]
Patch for landing
Comment 10 WebKit Review Bot 2011-11-09 12:35:40 PST
Comment on attachment 114336 [details]
Patch for landing

Clearing flags on attachment: 114336

Committed r99752: <http://trac.webkit.org/changeset/99752>
Comment 11 WebKit Review Bot 2011-11-09 12:35:48 PST
All reviewed patches have been landed.  Closing bug.