Gmail has an enormous component alpha layer

RESOLVED FIXED in mozilla19

Status

()

Core
Layout
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: mattwoodrow, Unassigned)

Tracking

(Blocks: 1 bug)

unspecified
mozilla19
x86
Mac OS X
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments, 1 obsolete attachment)

(Reporter)

Description

5 years ago
Created attachment 681300 [details] [diff] [review]
Make overflow:hidden documents inactive initially

Gmail has a position:fixed white div between the background and content. This is causing us to put the entirety of the content in a component alpha layer.

The attached patch makes the root content scrollframe inactive initially if it is overflow:hidden. If it ever gets scrolled, then we make it active from then on.
Attachment #681300 - Flags: review?(roc)
(Reporter)

Comment 1

5 years ago
https://tbpl.mozilla.org/?tree=Try&rev=98175550e15c

(I also added a comment to the header).
Comment on attachment 681300 [details] [diff] [review]
Make overflow:hidden documents inactive initially

Review of attachment 681300 [details] [diff] [review]:
-----------------------------------------------------------------

::: layout/generic/nsGfxScrollFrame.cpp
@@ +1694,5 @@
> +  // Unless this is the root scrollframe for a non-chrome document 
> +  // which is the direct child of a chrome document, we default to not
> +  // being "active".
> +  // XXX maybe we should extend this so that IFRAMEs which fill the
> +  // entire viewport (like GMail used to!) are always active

Delete this XXX comment since it no longer applies to GMail!
Attachment #681300 - Flags: review?(roc) → review+
(Reporter)

Comment 3

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/24c0c55af0ed

Comment 4

5 years ago
(In reply to Matt Woodrow (:mattwoodrow) from comment #3)
> https://hg.mozilla.org/integration/mozilla-inbound/rev/24c0c55af0ed

fyi, the try build is roughly 2x the perf on gmail tab switch. Good work!

Comment 5

5 years ago
https://hg.mozilla.org/mozilla-central/rev/24c0c55af0ed
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla19

Updated

5 years ago
Depends on: 812107

Updated

5 years ago
No longer depends on: 812107
(Reporter)

Comment 6

5 years ago
Created attachment 682271 [details] [diff] [review]
Followup -  allow the scroll layer to become active again

Looks like this made overflow:hidden pages end up permanently inactive.
Attachment #682271 - Flags: review?(roc)
Comment on attachment 682271 [details] [diff] [review]
Followup -  allow the scroll layer to become active again

Review of attachment 682271 [details] [diff] [review]:
-----------------------------------------------------------------

I think the correct fix here is simply to have nsGfxScrollFrameInner::MarkActive unconditionally set mScrollingActive = true; before calling IsAlwaysActive.
Attachment #682271 - Flags: review?(roc) → review+
Comment on attachment 682271 [details] [diff] [review]
Followup -  allow the scroll layer to become active again

Review of attachment 682271 [details] [diff] [review]:
-----------------------------------------------------------------

Sorry, I meant to r- that
Attachment #682271 - Flags: review+ → review-
(Reporter)

Comment 9

5 years ago
Created attachment 682512 [details] [diff] [review]
Followup - allow the scroll layer to become active again v2
Attachment #682271 - Attachment is obsolete: true
Attachment #682512 - Flags: review?(roc)
Attachment #682512 - Flags: review?(roc) → review+

Comment 10

5 years ago
Marked as fixed, but there is a followup not committed yet?
(Reporter)

Comment 11

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/3a057b8667fb
https://hg.mozilla.org/mozilla-central/rev/3a057b8667fb
Comment on attachment 681300 [details] [diff] [review]
Make overflow:hidden documents inactive initially

[Approval Request Comment]
Bug caused by (feature/regressing bug #): None
User impact if declined: GMail considerably slower than necessary for six weeks
Testing completed (on m-c, etc.): 10 days on m-c
Risk to taking this patch (and alternatives if risky): Pretty low risk. Simple patches and we're just messing with some performance heuristics.
String or UUID changes made by this patch: None.

The followup patch in this bug needs approval as well.
Attachment #681300 - Flags: approval-mozilla-aurora?
Comment on attachment 681300 [details] [diff] [review]
Make overflow:hidden documents inactive initially

Oops, this is already on Aurora since it landed before the uplift.
Attachment #681300 - Flags: approval-mozilla-aurora?

Updated

5 years ago
Depends on: 820496

Updated

5 years ago
No longer depends on: 820496
You need to log in before you can comment on or make changes to this bug.