1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CC_LAYERS_COMPOSITING_REASONS_H_ 6 #define CC_LAYERS_COMPOSITING_REASONS_H_ 7 8 #include "base/port.h" 9 10 namespace cc { 11 12 // This is a clone of CompositingReasons and WebCompositingReasons from Blink. 13 const uint64 kCompositingReasonUnknown = 0; 14 const uint64 kCompositingReason3DTransform = GG_UINT64_C(1) << 0; 15 const uint64 kCompositingReasonVideo = GG_UINT64_C(1) << 1; 16 const uint64 kCompositingReasonCanvas = GG_UINT64_C(1) << 2; 17 const uint64 kCompositingReasonPlugin = GG_UINT64_C(1) << 3; 18 const uint64 kCompositingReasonIFrame = GG_UINT64_C(1) << 4; 19 const uint64 kCompositingReasonBackfaceVisibilityHidden = GG_UINT64_C(1) << 5; 20 const uint64 kCompositingReasonAnimation = GG_UINT64_C(1) << 6; 21 const uint64 kCompositingReasonFilters = GG_UINT64_C(1) << 7; 22 const uint64 kCompositingReasonPositionFixed = GG_UINT64_C(1) << 8; 23 const uint64 kCompositingReasonPositionSticky = GG_UINT64_C(1) << 9; 24 const uint64 kCompositingReasonOverflowScrollingTouch = GG_UINT64_C(1) << 10; 25 const uint64 kCompositingReasonAssumedOverlap = GG_UINT64_C(1) << 12; 26 const uint64 kCompositingReasonOverlap = GG_UINT64_C(1) << 13; 27 const uint64 kCompositingReasonNegativeZIndexChildren = GG_UINT64_C(1) << 14; 28 const uint64 kCompositingReasonTransformWithCompositedDescendants = 29 GG_UINT64_C(1) << 15; 30 const uint64 kCompositingReasonOpacityWithCompositedDescendants = 31 GG_UINT64_C(1) << 16; 32 const uint64 kCompositingReasonMaskWithCompositedDescendants = 33 GG_UINT64_C(1) << 17; 34 const uint64 kCompositingReasonReflectionWithCompositedDescendants = 35 GG_UINT64_C(1) << 18; 36 const uint64 kCompositingReasonFilterWithCompositedDescendants = 37 GG_UINT64_C(1) << 19; 38 const uint64 kCompositingReasonBlendingWithCompositedDescendants = 39 GG_UINT64_C(1) << 20; 40 const uint64 kCompositingReasonClipsCompositingDescendants = 41 GG_UINT64_C(1) << 21; 42 const uint64 kCompositingReasonPerspective = GG_UINT64_C(1) << 22; 43 const uint64 kCompositingReasonPreserve3D = GG_UINT64_C(1) << 23; 44 const uint64 kCompositingReasonReflectionOfCompositedParent = 45 GG_UINT64_C(1) << 24; 46 const uint64 kCompositingReasonRoot = GG_UINT64_C(1) << 25; 47 const uint64 kCompositingReasonLayerForClip = GG_UINT64_C(1) << 26; 48 const uint64 kCompositingReasonLayerForScrollbar = GG_UINT64_C(1) << 27; 49 const uint64 kCompositingReasonLayerForScrollingContainer = 50 GG_UINT64_C(1) << 28; 51 const uint64 kCompositingReasonLayerForForeground = GG_UINT64_C(1) << 29; 52 const uint64 kCompositingReasonLayerForBackground = GG_UINT64_C(1) << 30; 53 const uint64 kCompositingReasonLayerForMask = GG_UINT64_C(1) << 31; 54 const uint64 kCompositingReasonOverflowScrollingParent = GG_UINT64_C(1) << 32; 55 const uint64 kCompositingReasonOutOfFlowClipping = GG_UINT64_C(1) << 33; 56 const uint64 kCompositingReasonIsolateCompositedDescendants = 57 GG_UINT64_C(1) << 35; 58 59 typedef uint64 CompositingReasons; 60 61 } // namespace cc 62 63 #endif // CC_LAYERS_COMPOSITING_REASONS_H_ 64