Closed Bug 724352 Opened 13 years ago Closed 13 years ago

Extra scrollbar on overflow:auto blog post

Categories

(Core :: Layout, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla14
Tracking Status
firefox11 --- unaffected
firefox12 + fixed
firefox13 + verified

People

(Reporter: jruderman, Assigned: MatsPalmgren_bugz)

References

()

Details

(Keywords: regression, testcase, Whiteboard: [qa+])

Attachments

(5 files, 1 obsolete file)

Nightly (13) and Aurora (12) show an extra scrollbar around the main text of http://blog.wolfram.com/2009/05/14/7-years-of-nksand-its-first-killer-app/. Beta (11) does not. div.post has "overflow: auto" set, but since its height is (default) auto, I do not expect it to merit a scrollbar. I've been seeing similar behavior in Google Reader occasionally for the last week or two of using Nightly.
Last good nightly: 2012-01-17 First bad nightly: 2012-01-18 Pushlog: http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=34572943a3e4&tochange=f4049f65efc6 Guessing regression from bug 665597.
OS: Mac OS X → All
Hardware: x86_64 → All
Attached file Reduced testcase
Looks like it's an issue with lists with negative margins and overflow:auto.
Attached file Reference testcase
Hopefully enough for reftests.
Flags: in-testsuite?
Attached file another html (obsolete) —
Keywords: testcase
Attachment #594556 - Attachment is obsolete: true
Novel regression in firefox12, with impact on a pretty standard piece of CSS -> tracking-firefox12+
Roc/Mats - should we be backing out the offending patch, or do you have an alternate remedy in mind?
I think we should try to fix this. I think for nsBlockFrames whose bottom margin was carried out, we should not add their bottom margins to their overflow areas. Mats, what do you think?
(In reply to Robert O'Callahan (:roc) (Mozilla Corporation) from comment #9) > I think we should try to fix this. > > I think for nsBlockFrames whose bottom margin was carried out, we should not > add their bottom margins to their overflow areas. Mats, what do you think? Now that FF12 is on beta, we should more strongly consider a backout at this point.
Backing out 665597 is very hard. I don't think fixing this bug is hard. Hopefully Mats can do this (soon).
(In reply to Robert O'Callahan (:roc) (Mozilla Corporation) from comment #11) > Backing out 665597 is very hard. Of the seven changesets only two (905ef8691d96 7f8cf8e934a5) require moderate effort.
We'd also have to back out bug 524925, which would cause performance regressions.
I did not back out any of bug 524925's six changesets.
Attached file Simpler testcase
I think the reported problem is less serious than the problems that bug 665597 fixed, so I don't think we should backout. This margin-collapsing problem was discussed in bug 665597 and everyone accepted the tradeoff. That said, I'll take a look at the code and try to come up with a solution.
(In reply to Mats Palmgren [:mats] from comment #17) > I think the reported problem is less serious than the problems that bug > 665597 > fixed, so I don't think we should backout. This margin-collapsing problem > was > discussed in bug 665597 and everyone accepted the tradeoff. > That said, I'll take a look at the code and try to come up with a solution. My concern comes from this note in the description, and the possibility that even more sites may regress: > I've been seeing similar behavior in Google Reader occasionally for the last > week or two of using Nightly. We should really line up a fix for FF12.
Attached patch fix+testsSplinter Review
We don't need to add vertical margins here after reflow since that has already been added to the child bounds, ie aBottomEdgeOfChildren arg to nsBlockFrame::ComputeOverflowAreas, calculated by nsBlockFrame::ComputeFinalSize here: http://mxr.mozilla.org/mozilla-central/source/layout/generic/nsBlockFrame.cpp#1351 (we will need it later though when doing UpdateOverflow correctly, ie bug 719177, bug 725664, bug 720987)
Attachment #611821 - Flags: review?(roc)
This just decrements the assertion counts for some tests that have huge margins and triggered bug 575011 with the old code.
Attachment #611825 - Flags: review?(roc)
Comment on attachment 611821 [details] [diff] [review] fix+tests Review of attachment 611821 [details] [diff] [review]: ----------------------------------------------------------------- Kind of a hack, but the comment covers it.
Attachment #611821 - Flags: review?(roc) → review+
Comment on attachment 611821 [details] [diff] [review] fix+tests [Approval Request Comment] Regression caused by (bug #): bug 665597 User impact if declined: a vertical scrollbar might appear on pages where negative margins are involved in margin-collapsing inside overflow:auto blocks Testing completed (on m-c, etc.): baked on trunk since 2012-04-06 Risk to taking this patch (and alternatives if risky): low risk String changes made by this patch: none
Attachment #611821 - Flags: approval-mozilla-beta?
Attachment #611821 - Flags: approval-mozilla-aurora?
Comment on attachment 611821 [details] [diff] [review] fix+tests [Triage Comment] Low risk fix for a web regression in FF12. Approved for Aurora and Beta.
Attachment #611821 - Flags: approval-mozilla-beta?
Attachment #611821 - Flags: approval-mozilla-beta+
Attachment #611821 - Flags: approval-mozilla-aurora?
Attachment #611821 - Flags: approval-mozilla-aurora+
(In reply to Boris Zbarsky (:bz) from comment #26) > http://hg.mozilla.org/releases/mozilla-aurora/rev/40e45c33965c philor pointed out on IRC that this seems to be missing one of the hunks from attachment 611825 [details] [diff] [review] (the last). Was that intentional?
Yes. It's missing the last hunk, which doesn't apply on beta/aurora because it's changing the manifest annotations for tests that aren't present on those branches, as far as I can tell.
It looks to me like the last chunk applies on aurora (but not beta). philor mentioned something about it causing a new perma-orange on aurora, it looks like that's the case: https://tbpl.mozilla.org/?tree=Mozilla-Aurora
Hmm... It didn't apply for me, but maybe I messed it up somehow. I'll take a look.
Ah, it failed to apply for a different reason. Pushed http://hg.mozilla.org/releases/mozilla-aurora/rev/6456a42e0c97
Whiteboard: [qa+]
Verified that no extra scrollbars are shown on Firefox 13 beta 3. Verified on Windows 7, Ubuntu 12.04 and Mac OS X 10.6 using the test cases attached in Comment 3 and Comment 5. Mozilla/5.0 (Windows NT 6.1; rv:13.0) Gecko/20100101 Firefox/13.0 Mozilla/5.0 (X11; Linux i686; rv:13.0) Gecko/20100101 Firefox/13.0 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:13.0) Gecko/20100101 Firefox/13.0
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: