Skip to content
  • timothy_horton@apple.com's avatar
    Make TileController create the appropriate PlatformCALayer subclasses · a63fb723
    timothy_horton@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=123418
    
    Reviewed by Simon Fraser.
    
    Add PlatformCALayer::createCompatibleLayer, which is overridden in
    each of the subclasses to create a PlatformCALayer instance of the same
    subclass. This is used in TileController to make bare PlatformCALayers
    of the correct type (Mac, Win, or Remote).
    
    * platform/graphics/ca/PlatformCALayer.h:
    * platform/graphics/ca/mac/PlatformCALayerMac.h:
    * platform/graphics/ca/mac/PlatformCALayerMac.mm:
    (PlatformCALayerMac::createCompatibleLayer):
    * platform/graphics/ca/win/PlatformCALayerWin.cpp:
    (PlatformCALayerWin::createCompatibleLayer):
    * platform/graphics/ca/win/PlatformCALayerWin.h:
    Add createCompatibleLayer and implement it in the subclasses.
    
    * platform/graphics/ca/mac/TileController.mm:
    (WebCore::TileController::TileController):
    (WebCore::TileController::tiledScrollingIndicatorLayer):
    (WebCore::TileController::createTileLayer):
    Make use of createCompatibleLayer when creating PlatformCALayers.
    
    * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
    (PlatformCALayerRemote::createCompatibleLayer):
    * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
    Add createCompatibleLayer and implement it in the subclasses.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@158160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    a63fb723