Bug 107734

Summary: Introduce the "stacking container" concept.
Product: WebKit Reporter: vollick
Component: WebKit Misc.Assignee: vollick
Status: RESOLVED FIXED    
Severity: Normal CC: eric, noam, ojan.autocc, simon.fraser, webkit.review.bot, zeno
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 106142    
Attachments:
Description Flags
Patch none

Description vollick 2013-01-23 14:06:04 PST
A stacking container is treated just like a stacking context. That is, it has z-order lists, it and its descendants are stacked as a unit, and when the RenderLayerCompositor does its overlap testing, the composited regions for all layer lists take effect only once the stacking container is done being processed.

This patch also adds the function RenderLayer::isStackingContainer(). Currently, this is equivalent to RenderLayer::isStackingContext(), but in future, the definition of stacking container will be broadened to encompass more than just stacking contexts.

Other than the addition of this extra function, the patch is mostly comprised of name changes. Any code that used to refer to the stacking context concept, but didn't necessarily require a stacking context in the strict, CSS-sense, was switched to refer to stacking container. No functionality was changed.
Comment 1 vollick 2013-01-23 14:08:46 PST
Created attachment 184307 [details]
Patch
Comment 2 Simon Fraser (smfr) 2013-01-23 15:46:39 PST
Comment on attachment 184307 [details]
Patch

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

> Source/WebCore/rendering/RenderLayer.h:434
> +    // A stacking container can have z-order lists. All stacking contexts are
> +    // stacking containers, but the converse is not true.

I presume you'll amend this comment to say when it's not true, later.
Comment 3 vollick 2013-01-23 17:03:49 PST
Comment on attachment 184307 [details]
Patch

(In reply to comment #2)
> (From update of attachment 184307 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=184307&action=review
> 
> > Source/WebCore/rendering/RenderLayer.h:434
> > +    // A stacking container can have z-order lists. All stacking contexts are
> > +    // stacking containers, but the converse is not true.
> 
> I presume you'll amend this comment to say when it's not true, later.

Yes. When I broaden the definition of stacking container in the next patch, I will make this comment more specific.
Comment 4 WebKit Review Bot 2013-01-23 17:43:38 PST
Comment on attachment 184307 [details]
Patch

Clearing flags on attachment: 184307

Committed r140620: <http://trac.webkit.org/changeset/140620>
Comment 5 WebKit Review Bot 2013-01-23 17:43:42 PST
All reviewed patches have been landed.  Closing bug.