Changeset 216688 in webkit


Ignore:
Timestamp:
May 11, 2017 11:49:30 AM (7 years ago)
Author:
commit-queue@webkit.org
Message:

Unify hasTouchScrollableOverflow/needsCompositedScrolling concepts
https://bugs.webkit.org/show_bug.cgi?id=171974

Patch by Frederic Wang <fwang@igalia.com> on 2017-05-11
Reviewed by Simon Fraser.

This commit moves the following pattern in a single RenderLayer::usesAcceleratedScrolling function:
#if PLATFORM(IOS)
...hasTouchScrollableOverflow()...
#else
...needsCompositedScrolling()...
#endif

No new tests, behavior unchanged.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::usesAcceleratedScrolling): Introduce helper function.

  • rendering/RenderLayer.h: Declare the function.
  • rendering/RenderLayerBacking.cpp:

(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling): Use the new function.
(WebCore::RenderLayerBacking::updateConfiguration): Ditto.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::useCoordinatedScrollingForLayer): Ditto.

Location:
trunk/Source/WebCore
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r216686 r216688  
     12017-05-11  Frederic Wang  <fwang@igalia.com>
     2
     3        Unify hasTouchScrollableOverflow/needsCompositedScrolling concepts
     4        https://bugs.webkit.org/show_bug.cgi?id=171974
     5
     6        Reviewed by Simon Fraser.
     7
     8        This commit moves the following pattern in a single RenderLayer::usesAcceleratedScrolling function:
     9        #if PLATFORM(IOS)
     10        ...hasTouchScrollableOverflow()...
     11        #else
     12        ...needsCompositedScrolling()...
     13        #endif
     14
     15        No new tests, behavior unchanged.
     16
     17        * rendering/RenderLayer.cpp:
     18        (WebCore::RenderLayer::usesAcceleratedScrolling): Introduce helper function.
     19        * rendering/RenderLayer.h: Declare the function.
     20        * rendering/RenderLayerBacking.cpp:
     21        (WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling): Use the new function.
     22        (WebCore::RenderLayerBacking::updateConfiguration): Ditto.
     23        * rendering/RenderLayerCompositor.cpp:
     24        (WebCore::useCoordinatedScrollingForLayer): Ditto.
     25
    1262017-05-11  Romain Bellessort  <romain.bellessort@crf.canon.fr>
    227
  • trunk/Source/WebCore/rendering/RenderLayer.cpp

    r216541 r216688  
    21892189#endif // PLATFORM(IOS)
    21902190
     2191bool RenderLayer::usesAcceleratedScrolling() const
     2192{
     2193#if PLATFORM(IOS)
     2194    return hasTouchScrollableOverflow();
     2195#else
     2196    return needsCompositedScrolling();
     2197#endif
     2198}
     2199
    21912200#if ENABLE(IOS_TOUCH_EVENTS)
    21922201void RenderLayer::registerAsTouchEventListenerForScrolling()
  • trunk/Source/WebCore/rendering/RenderLayer.h

    r216541 r216688  
    266266    bool hasTouchScrollableOverflow() const { return false; }
    267267#endif
     268    bool usesAcceleratedScrolling() const;
    268269
    269270    int verticalScrollbarWidth(OverlayScrollbarSizeRelevancy = IgnoreOverlayScrollbarSize) const;
  • trunk/Source/WebCore/rendering/RenderLayerBacking.cpp

    r216535 r216688  
    547547}
    548548
    549 // FIXME: the hasAcceleratedTouchScrolling()/needsCompositedScrolling() concepts need to be merged.
    550549static bool layerOrAncestorIsTransformedOrUsingCompositedScrolling(RenderLayer& layer)
    551550{
    552551    for (RenderLayer* curr = &layer; curr; curr = curr->parent()) {
    553         if (curr->hasTransform()
    554 #if PLATFORM(IOS)
    555             || curr->hasTouchScrollableOverflow()
    556 #else
    557             || curr->needsCompositedScrolling()
    558 #endif
    559             )
     552        if (curr->hasTransform() || curr->usesAcceleratedScrolling())
    560553            return true;
    561554    }
     
    683676
    684677    if (!renderer().view().needsLayout()) {
    685         bool usesCompositedScrolling;
    686 #if PLATFORM(IOS)
    687         usesCompositedScrolling = m_owningLayer.hasTouchScrollableOverflow();
    688 #else
    689         usesCompositedScrolling = m_owningLayer.needsCompositedScrolling();
    690 #endif
     678        bool usesCompositedScrolling = m_owningLayer.usesAcceleratedScrolling();
     679
    691680        // Our scrolling layer will clip.
    692681        if (usesCompositedScrolling)
  • trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp

    r216643 r216688  
    27242724        return true;
    27252725
    2726 #if PLATFORM(IOS)
    2727     return layer.hasTouchScrollableOverflow();
    2728 #else
    2729     return layer.needsCompositedScrolling();
    2730 #endif
     2726    return layer.usesAcceleratedScrolling();
    27312727}
    27322728
Note: See TracChangeset for help on using the changeset viewer.