| Differences between
and this patch
- a/Source/WebCore/ChangeLog +18 lines
Lines 1-5 a/Source/WebCore/ChangeLog_sec1
1
2014-04-02  Ion Rosca  <rosca@adobe.com>
1
2014-04-02  Ion Rosca  <rosca@adobe.com>
2
2
3
        [CSS Blending] Add compositing reason for isolation in RenderLayerCompositor.
4
        https://bugs.webkit.org/show_bug.cgi?id=131153
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        There are 2 reasons involving blend modes for a layer to be composited:
9
        1) the layer has blend mode and has composited descendants: CompositingReasonBlendingWithCompositedDescendants.
10
        2) the layer has to isolate composited blending descendants: CompositingReasonIsolatesCompositedBlendingDescendants
11
12
        No new tests required in WebCore, the reasons are ment to be used here for debug logging.
13
14
        * rendering/RenderLayerCompositor.cpp:
15
        (WebCore::RenderLayerCompositor::reasonsForCompositing): setting the correct reason for compositing.
16
        (WebCore::RenderLayerCompositor::logReasonsForCompositing):
17
        * rendering/RenderLayerCompositor.h: adding the new compositing reason.
18
19
2014-04-02  Ion Rosca  <rosca@adobe.com>
20
3
        [CSS Blending] Compositing requirements for blending are not computed correctly
21
        [CSS Blending] Compositing requirements for blending are not computed correctly
4
        https://bugs.webkit.org/show_bug.cgi?id=130664
22
        https://bugs.webkit.org/show_bug.cgi?id=130664
5
23
- a/Source/WebCore/rendering/RenderLayerCompositor.cpp -1 / +9 lines
Lines 2127-2132 CompositingReasons RenderLayerCompositor::reasonsForCompositing(const RenderLaye a/Source/WebCore/rendering/RenderLayerCompositor.cpp_sec1
2127
2127
2128
#if ENABLE(CSS_COMPOSITING)
2128
#if ENABLE(CSS_COMPOSITING)
2129
        if (layer.isolatesCompositedBlending())
2129
        if (layer.isolatesCompositedBlending())
2130
            reasons |= CompositingReasonIsolatesCompositedBlendingDescendants;
2131
2132
        if (layer.hasBlendMode())
2130
            reasons |= CompositingReasonBlendingWithCompositedDescendants;
2133
            reasons |= CompositingReasonBlendingWithCompositedDescendants;
2131
#endif
2134
#endif
2132
2135
Lines 2202-2211 const char* RenderLayerCompositor::logReasonsForCompositing(const RenderLayer& l a/Source/WebCore/rendering/RenderLayerCompositor.cpp_sec2
2202
2205
2203
    if (reasons & CompositingReasonFilterWithCompositedDescendants)
2206
    if (reasons & CompositingReasonFilterWithCompositedDescendants)
2204
        return "filter with composited descendants";
2207
        return "filter with composited descendants";
2205
            
2208
2209
#if ENABLE(CSS_COMPOSITING)
2206
    if (reasons & CompositingReasonBlendingWithCompositedDescendants)
2210
    if (reasons & CompositingReasonBlendingWithCompositedDescendants)
2207
        return "blending with composited descendants";
2211
        return "blending with composited descendants";
2208
2212
2213
    if (reasons & CompositingReasonIsolatesCompositedBlendingDescendants)
2214
        return "isolates composited blending descendants"
2215
#endif
2216
2209
    if (reasons & CompositingReasonPerspective)
2217
    if (reasons & CompositingReasonPerspective)
2210
        return "perspective";
2218
        return "perspective";
2211
2219
- a/Source/WebCore/rendering/RenderLayerCompositor.h -1 / +2 lines
Lines 80-86 enum { a/Source/WebCore/rendering/RenderLayerCompositor.h_sec1
80
    CompositingReasonBlendingWithCompositedDescendants      = 1 << 20,
80
    CompositingReasonBlendingWithCompositedDescendants      = 1 << 20,
81
    CompositingReasonPerspective                            = 1 << 21,
81
    CompositingReasonPerspective                            = 1 << 21,
82
    CompositingReasonPreserve3D                             = 1 << 22,
82
    CompositingReasonPreserve3D                             = 1 << 22,
83
    CompositingReasonRoot                                   = 1 << 23
83
    CompositingReasonRoot                                   = 1 << 23,
84
    CompositingReasonIsolatesCompositedBlendingDescendants  = 1 << 24,
84
};
85
};
85
typedef unsigned CompositingReasons;
86
typedef unsigned CompositingReasons;
86
87

Return to Bug 131153