| Index: Source/platform/graphics/CompositingReasons.h
|
| diff --git a/Source/platform/graphics/CompositingReasons.h b/Source/platform/graphics/CompositingReasons.h
|
| index 9f0bfd3c425915227ec6060417f2a2b46f7ceae7..b4aa6f895c2036b88b3ecf6a18e15c3124a1a990 100644
|
| --- a/Source/platform/graphics/CompositingReasons.h
|
| +++ b/Source/platform/graphics/CompositingReasons.h
|
| @@ -10,67 +10,73 @@
|
|
|
| namespace WebCore {
|
|
|
| -const uint64_t CompositingReasonNone = 0;
|
| -const uint64_t CompositingReasonAll = ~static_cast<uint64_t>(0);
|
| +const uint64_t CompositingReasonNone = 0;
|
| +const uint64_t CompositingReasonAll = ~static_cast<uint64_t>(0);
|
|
|
| // Intrinsic reasons that can be known right away by the layer
|
| -const uint64_t CompositingReason3DTransform = UINT64_C(1) << 0;
|
| -const uint64_t CompositingReasonVideo = UINT64_C(1) << 1;
|
| -const uint64_t CompositingReasonCanvas = UINT64_C(1) << 2;
|
| -const uint64_t CompositingReasonPlugin = UINT64_C(1) << 3;
|
| -const uint64_t CompositingReasonIFrame = UINT64_C(1) << 4;
|
| -const uint64_t CompositingReasonBackfaceVisibilityHidden = UINT64_C(1) << 5;
|
| -const uint64_t CompositingReasonActiveAnimation = UINT64_C(1) << 6;
|
| -const uint64_t CompositingReasonTransitionProperty = UINT64_C(1) << 7;
|
| -const uint64_t CompositingReasonFilters = UINT64_C(1) << 8;
|
| -const uint64_t CompositingReasonPositionFixed = UINT64_C(1) << 9;
|
| -// Bit 10 is available.
|
| -const uint64_t CompositingReasonOverflowScrollingTouch = UINT64_C(1) << 11;
|
| -const uint64_t CompositingReasonOverflowScrollingParent = UINT64_C(1) << 12;
|
| -const uint64_t CompositingReasonOutOfFlowClipping = UINT64_C(1) << 13;
|
| -const uint64_t CompositingReasonVideoOverlay = UINT64_C(1) << 14;
|
| -const uint64_t CompositingReasonWillChangeCompositingHint = UINT64_C(1) << 15;
|
| -// Bit 16 is available.
|
| +const uint64_t CompositingReason3DTransform = UINT64_C(1) << 0;
|
| +const uint64_t CompositingReasonVideo = UINT64_C(1) << 1;
|
| +const uint64_t CompositingReasonCanvas = UINT64_C(1) << 2;
|
| +const uint64_t CompositingReasonPlugin = UINT64_C(1) << 3;
|
| +const uint64_t CompositingReasonIFrame = UINT64_C(1) << 4;
|
| +const uint64_t CompositingReasonBackfaceVisibilityHidden = UINT64_C(1) << 5;
|
| +const uint64_t CompositingReasonActiveAnimation = UINT64_C(1) << 6;
|
| +const uint64_t CompositingReasonTransitionProperty = UINT64_C(1) << 7;
|
| +const uint64_t CompositingReasonFilters = UINT64_C(1) << 8;
|
| +const uint64_t CompositingReasonPositionFixed = UINT64_C(1) << 9;
|
| +const uint64_t CompositingReasonOverflowScrollingTouch = UINT64_C(1) << 10;
|
| +const uint64_t CompositingReasonOverflowScrollingParent = UINT64_C(1) << 11;
|
| +const uint64_t CompositingReasonOutOfFlowClipping = UINT64_C(1) << 12;
|
| +const uint64_t CompositingReasonVideoOverlay = UINT64_C(1) << 13;
|
| +const uint64_t CompositingReasonWillChangeCompositingHint = UINT64_C(1) << 14;
|
|
|
| // Overlap reasons that require knowing what's behind you in paint-order before knowing the answer
|
| -const uint64_t CompositingReasonAssumedOverlap = UINT64_C(1) << 17;
|
| -const uint64_t CompositingReasonOverlap = UINT64_C(1) << 18;
|
| -const uint64_t CompositingReasonNegativeZIndexChildren = UINT64_C(1) << 19;
|
| -const uint64_t CompositingReasonNoSquashingTargetFound = UINT64_C(1) << 20;
|
| +const uint64_t CompositingReasonAssumedOverlap = UINT64_C(1) << 15;
|
| +const uint64_t CompositingReasonOverlap = UINT64_C(1) << 16;
|
| +const uint64_t CompositingReasonNegativeZIndexChildren = UINT64_C(1) << 17;
|
| +const uint64_t CompositingReasonScrollsWithRespectToSquashingLayer = UINT64_C(1) << 18;
|
| +const uint64_t CompositingReasonSquashingSparsityExceeded = UINT64_C(1) << 19;
|
| +const uint64_t CompositingReasonSquashingClippingContainerMismatch = UINT64_C(1) << 20;
|
| +const uint64_t CompositingReasonSquashingOpacityAncestorMismatch = UINT64_C(1) << 21;
|
| +const uint64_t CompositingReasonSquashingTransformAncestorMismatch = UINT64_C(1) << 22;
|
| +const uint64_t CompositingReasonSquashingFilterAncestorMismatch = UINT64_C(1) << 23;
|
| +const uint64_t CompositingReasonSquashingWouldBreakPaintOrder = UINT64_C(1) << 24;
|
| +const uint64_t CompositingReasonSquashingVideoIsDisallowed = UINT64_C(1) << 25;
|
| +const uint64_t CompositingReasonSquashedLayerClipsCompositingDescendants = UINT64_C(1) << 26;
|
|
|
| // Subtree reasons that require knowing what the status of your subtree is before knowing the answer
|
| -const uint64_t CompositingReasonTransformWithCompositedDescendants = UINT64_C(1) << 21;
|
| -const uint64_t CompositingReasonOpacityWithCompositedDescendants = UINT64_C(1) << 22;
|
| -const uint64_t CompositingReasonMaskWithCompositedDescendants = UINT64_C(1) << 23;
|
| -const uint64_t CompositingReasonReflectionWithCompositedDescendants = UINT64_C(1) << 24;
|
| -const uint64_t CompositingReasonFilterWithCompositedDescendants = UINT64_C(1) << 25;
|
| -const uint64_t CompositingReasonBlendingWithCompositedDescendants = UINT64_C(1) << 26;
|
| -const uint64_t CompositingReasonClipsCompositingDescendants = UINT64_C(1) << 27;
|
| -const uint64_t CompositingReasonPerspectiveWith3DDescendants = UINT64_C(1) << 28;
|
| -const uint64_t CompositingReasonPreserve3DWith3DDescendants = UINT64_C(1) << 29;
|
| -const uint64_t CompositingReasonReflectionOfCompositedParent = UINT64_C(1) << 30;
|
| -const uint64_t CompositingReasonIsolateCompositedDescendants = UINT64_C(1) << 31;
|
| +const uint64_t CompositingReasonTransformWithCompositedDescendants = UINT64_C(1) << 27;
|
| +const uint64_t CompositingReasonOpacityWithCompositedDescendants = UINT64_C(1) << 28;
|
| +const uint64_t CompositingReasonMaskWithCompositedDescendants = UINT64_C(1) << 29;
|
| +const uint64_t CompositingReasonReflectionWithCompositedDescendants = UINT64_C(1) << 30;
|
| +const uint64_t CompositingReasonFilterWithCompositedDescendants = UINT64_C(1) << 31;
|
| +const uint64_t CompositingReasonBlendingWithCompositedDescendants = UINT64_C(1) << 32;
|
| +const uint64_t CompositingReasonClipsCompositingDescendants = UINT64_C(1) << 33;
|
| +const uint64_t CompositingReasonPerspectiveWith3DDescendants = UINT64_C(1) << 34;
|
| +const uint64_t CompositingReasonPreserve3DWith3DDescendants = UINT64_C(1) << 35;
|
| +const uint64_t CompositingReasonReflectionOfCompositedParent = UINT64_C(1) << 36;
|
| +const uint64_t CompositingReasonIsolateCompositedDescendants = UINT64_C(1) << 37;
|
|
|
| // The root layer is a special case that may be forced to be a layer, but also it needs to be
|
| // a layer if anything else in the subtree is composited.
|
| -const uint64_t CompositingReasonRoot = UINT64_C(1) << 32;
|
| +const uint64_t CompositingReasonRoot = UINT64_C(1) << 38;
|
|
|
| // CompositedLayerMapping internal hierarchy reasons
|
| -const uint64_t CompositingReasonLayerForAncestorClip = UINT64_C(1) << 33;
|
| -const uint64_t CompositingReasonLayerForDescendantClip = UINT64_C(1) << 34;
|
| -const uint64_t CompositingReasonLayerForPerspective = UINT64_C(1) << 35;
|
| -const uint64_t CompositingReasonLayerForHorizontalScrollbar = UINT64_C(1) << 36;
|
| -const uint64_t CompositingReasonLayerForVerticalScrollbar = UINT64_C(1) << 37;
|
| -const uint64_t CompositingReasonLayerForScrollCorner = UINT64_C(1) << 38;
|
| -const uint64_t CompositingReasonLayerForScrollingContents = UINT64_C(1) << 39;
|
| -const uint64_t CompositingReasonLayerForScrollingContainer = UINT64_C(1) << 40;
|
| -const uint64_t CompositingReasonLayerForSquashingContents = UINT64_C(1) << 41;
|
| -const uint64_t CompositingReasonLayerForSquashingContainer = UINT64_C(1) << 42;
|
| -const uint64_t CompositingReasonLayerForForeground = UINT64_C(1) << 43;
|
| -const uint64_t CompositingReasonLayerForBackground = UINT64_C(1) << 44;
|
| -const uint64_t CompositingReasonLayerForMask = UINT64_C(1) << 45;
|
| -const uint64_t CompositingReasonLayerForClippingMask = UINT64_C(1) << 46;
|
| -const uint64_t CompositingReasonLayerForScrollingBlockSelection = UINT64_C(1) << 47;
|
| +const uint64_t CompositingReasonLayerForAncestorClip = UINT64_C(1) << 39;
|
| +const uint64_t CompositingReasonLayerForDescendantClip = UINT64_C(1) << 40;
|
| +const uint64_t CompositingReasonLayerForPerspective = UINT64_C(1) << 41;
|
| +const uint64_t CompositingReasonLayerForHorizontalScrollbar = UINT64_C(1) << 42;
|
| +const uint64_t CompositingReasonLayerForVerticalScrollbar = UINT64_C(1) << 43;
|
| +const uint64_t CompositingReasonLayerForScrollCorner = UINT64_C(1) << 44;
|
| +const uint64_t CompositingReasonLayerForScrollingContents = UINT64_C(1) << 45;
|
| +const uint64_t CompositingReasonLayerForScrollingContainer = UINT64_C(1) << 46;
|
| +const uint64_t CompositingReasonLayerForSquashingContents = UINT64_C(1) << 47;
|
| +const uint64_t CompositingReasonLayerForSquashingContainer = UINT64_C(1) << 48;
|
| +const uint64_t CompositingReasonLayerForForeground = UINT64_C(1) << 49;
|
| +const uint64_t CompositingReasonLayerForBackground = UINT64_C(1) << 50;
|
| +const uint64_t CompositingReasonLayerForMask = UINT64_C(1) << 51;
|
| +const uint64_t CompositingReasonLayerForClippingMask = UINT64_C(1) << 52;
|
| +const uint64_t CompositingReasonLayerForScrollingBlockSelection = UINT64_C(1) << 53;
|
|
|
| // Various combinations of compositing reasons are defined here also, for more intutive and faster bitwise logic.
|
| const uint64_t CompositingReasonComboAllDirectReasons =
|
| @@ -103,7 +109,15 @@ const uint64_t CompositingReasonComboReasonsThatRequireOwnBacking =
|
| | CompositingReasonOverlap
|
| | CompositingReasonAssumedOverlap
|
| | CompositingReasonNegativeZIndexChildren
|
| - | CompositingReasonNoSquashingTargetFound
|
| + | CompositingReasonScrollsWithRespectToSquashingLayer
|
| + | CompositingReasonSquashingSparsityExceeded
|
| + | CompositingReasonSquashingClippingContainerMismatch
|
| + | CompositingReasonSquashingOpacityAncestorMismatch
|
| + | CompositingReasonSquashingTransformAncestorMismatch
|
| + | CompositingReasonSquashingFilterAncestorMismatch
|
| + | CompositingReasonSquashingWouldBreakPaintOrder
|
| + | CompositingReasonSquashingVideoIsDisallowed
|
| + | CompositingReasonSquashedLayerClipsCompositingDescendants
|
| | CompositingReasonTransformWithCompositedDescendants
|
| | CompositingReasonOpacityWithCompositedDescendants
|
| | CompositingReasonMaskWithCompositedDescendants
|
| @@ -199,9 +213,33 @@ static const CompositingReasonStringMap compositingReasonStringMap[] = {
|
| { CompositingReasonNegativeZIndexChildren,
|
| "negativeZIndexChildren",
|
| "Parent with composited negative z-index content" },
|
| - { CompositingReasonNoSquashingTargetFound,
|
| - "noSquashingTargetFound",
|
| - "Cannot be squashed due to no compatible squashing owner found" },
|
| + { CompositingReasonScrollsWithRespectToSquashingLayer,
|
| + "scrollsWithRespectToSquashingLayer",
|
| + "Cannot be squashed since this layer scrolls with respect to the squashing layer" },
|
| + { CompositingReasonSquashingSparsityExceeded,
|
| + "squashingSparsityExceeded",
|
| + "Cannot be squashed as the squashing layer would become too sparse" },
|
| + { CompositingReasonSquashingClippingContainerMismatch,
|
| + "squashingClippingContainerMismatch",
|
| + "Cannot be squashed because this layer has a different clipping container than the squashing layer" },
|
| + { CompositingReasonSquashingOpacityAncestorMismatch,
|
| + "squashingOpacityAncestorMismatch",
|
| + "Cannot be squashed because this layer has a different opacity ancestor than the squashing layer" },
|
| + { CompositingReasonSquashingTransformAncestorMismatch,
|
| + "squashingTransformAncestorMismatch",
|
| + "Cannot be squashed because this layer has a different transform ancestor than the squashing layer" },
|
| + { CompositingReasonSquashingFilterAncestorMismatch,
|
| + "squashingFilterAncestorMismatch",
|
| + "Cannot be squashed because this layer has a different filter ancestor than the squashing layer" },
|
| + { CompositingReasonSquashingWouldBreakPaintOrder,
|
| + "squashingWouldBreakPaintOrder",
|
| + "Cannot be squashed without breaking paint order" },
|
| + { CompositingReasonSquashingVideoIsDisallowed,
|
| + "squashingVideoIsDisallowed",
|
| + "Squashing video is not supported" },
|
| + { CompositingReasonSquashedLayerClipsCompositingDescendants,
|
| + "squashedLayerClipsCompositingDescendants",
|
| + "Squashing a layer that clips composited descendants is not supported." },
|
| { CompositingReasonTransformWithCompositedDescendants,
|
| "transformWithCompositedDescendants",
|
| "Has a transform that needs to be known by compositor because of composited descendants" },
|
|
|