⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 238523 in webkit


Ignore:
Timestamp:
Nov 26, 2018, 2:22:07 PM (8 years ago)
Author:
Truitt Savell
Message:

Unreviewed, rolling out r238357.

Casued three css tests to fail and crash on ios sim

Reverted changeset:

"Avoid triggering compositing updates when only the root layer
is composited"
https://bugs.webkit.org/show_bug.cgi?id=191813
https://trac.webkit.org/changeset/238357

Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r238522 r238523  
     12018-11-26  Truitt Savell  <tsavell@apple.com>
     2
     3        Unreviewed, rolling out r238357.
     4
     5        Casued three css tests to fail and crash on ios sim
     6
     7        Reverted changeset:
     8
     9        "Avoid triggering compositing updates when only the root layer
     10        is composited"
     11        https://bugs.webkit.org/show_bug.cgi?id=191813
     12        https://trac.webkit.org/changeset/238357
     13
    1142018-11-26  Daniel Bates  <dabates@apple.com>
    215
  • trunk/Source/WebCore/rendering/RenderLayer.cpp

    r238463 r238523  
    406406        setAncestorChainHasSelfPaintingLayerDescendant();
    407407
    408     if (compositor().hasContentCompositingLayers())
     408    if (compositor().usesCompositing())
    409409        setDescendantsNeedCompositingRequirementsTraversal();
    410410
     
    452452        dirtyAncestorChainHasSelfPaintingLayerDescendantStatus();
    453453
    454     if (compositor().hasContentCompositingLayers())
     454    if (compositor().usesCompositing())
    455455        setDescendantsNeedCompositingRequirementsTraversal();
    456456
     
    15781578    setLocation(localPoint);
    15791579   
    1580     if (positionOrOffsetChanged && compositor().hasContentCompositingLayers()) {
     1580    if (positionOrOffsetChanged && compositor().usesCompositing()) {
    15811581        if (isComposited())
    15821582            setNeedsCompositingGeometryUpdate();
     
    24312431
    24322432    bool requiresRepaint = true;
    2433     if (usesCompositedScrolling()) {
     2433    if (compositor().usesCompositing() && usesCompositedScrolling()) {
    24342434        setNeedsCompositingGeometryUpdate();
    24352435        setDescendantsNeedUpdateBackingAndHierarchyTraversal();
     
    25812581void RenderLayer::updateCompositingLayersAfterScroll()
    25822582{
    2583     if (compositor().hasContentCompositingLayers()) {
     2583    if (compositor().usesCompositing()) {
    25842584        // Our stacking container is guaranteed to contain all of our descendants that may need
    25852585        // repositioning, so update compositing layers from there.
     
    66446644{
    66456645    stream.nextLine();
    6646     stream << "(S)tacking Context, (N)ormal flow only, (O)verflow clip, (A)lpha (opacity or mask), has (B)lend mode, (I)solates blending, (T)ransform-ish, (F)ilter, Fi(X)ed position, (C)omposited, (c)omposited descendant\n"
     6646    stream << "(S)tacking Context, (N)ormal flow only, (O)verflow clip, (A)lpha (opacity or mask), has (B)lend mode, (I)solates blending, (T)ransform-ish, (F)ilter, Fi(X)ed position, (C)omposited\n"
    66476647        "Dirty (z)-lists, Dirty (n)ormal flow lists\n"
    66486648        "Descendant needs overlap (t)raversal, Descendant needs (b)acking or hierarchy update, All descendants need (r)equirements traversal, All (s)ubsequent layers need requirements traversal, All descendants need (h)ierarchy traversal\n"
     
    66716671    stream << (layer.renderer().isFixedPositioned() ? "X" : "-");
    66726672    stream << (layer.isComposited() ? "C" : "-");
    6673     stream << (layer.hasCompositingDescendant() ? "c" : "-");
    66746673
    66756674    stream << " ";
  • trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp

    r238357 r238523  
    11711171    Vector<Ref<GraphicsLayer>> layerChildren;
    11721172    auto& childList = layerBacking ? layerChildren : childLayersOfEnclosingLayer;
    1173 
    1174     bool requireDescendantTraversal = layer.hasDescendantNeedingUpdateBackingOrHierarchyTraversal()
    1175         || (layer.hasCompositingDescendant() && (!layerBacking || layer.needsCompositingLayerConnection() || !updateLevel.isEmpty()));
     1173    // FIXME: why the !layerBacking check?
     1174    bool requireDescendantTraversal = !layerBacking || layer.needsCompositingLayerConnection() || layer.hasDescendantNeedingUpdateBackingOrHierarchyTraversal() || !updateLevel.isEmpty();
    11761175
    11771176#if !ASSERT_DISABLED
     
    11791178#endif
    11801179   
    1181     auto appendForegroundLayerIfNecessary = [&] {
    1182         // If a negative z-order child is compositing, we get a foreground layer which needs to get parented.
     1180    if (requireDescendantTraversal) {
     1181        for (auto* renderLayer : layer.negativeZOrderLayers())
     1182            updateBackingAndHierarchy(*renderLayer, childList, updateLevel, depth + 1);
     1183
     1184            // If a negative z-order child is compositing, we get a foreground layer which needs to get parented.
    11831185        if (layer.negativeZOrderLayers().size()) {
    11841186            if (layerBacking && layerBacking->foregroundLayer())
    11851187                childList.append(*layerBacking->foregroundLayer());
    11861188        }
    1187     };
    1188 
    1189     if (requireDescendantTraversal) {
    1190         for (auto* renderLayer : layer.negativeZOrderLayers())
    1191             updateBackingAndHierarchy(*renderLayer, childList, updateLevel, depth + 1);
    1192 
    1193         appendForegroundLayerIfNecessary();
    11941189
    11951190        for (auto* renderLayer : layer.normalFlowLayers())
     
    11981193        for (auto* renderLayer : layer.positiveZOrderLayers())
    11991194            updateBackingAndHierarchy(*renderLayer, childList, updateLevel, depth + 1);
    1200     } else
    1201         appendForegroundLayerIfNecessary();
     1195    }
    12021196
    12031197    if (layerBacking) {
     
    13771371        layer.setNeedsPostLayoutCompositingUpdate();
    13781372
    1379     if (diff >= StyleDifference::LayoutPositionedMovementOnly && hasContentCompositingLayers()) {
     1373    if (diff >= StyleDifference::LayoutPositionedMovementOnly && usesCompositing()) {
    13801374        layer.setNeedsPostLayoutCompositingUpdate();
    13811375        layer.setNeedsCompositingGeometryUpdate();
Note: See TracChangeset for help on using the changeset viewer.