Bug 99806

Summary: Use tile caches in place of CATiledLayer
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: New BugsAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: adele, dino, eric, ian, simon.fraser, thorton, webkit-bug-importer, webkit.review.bot
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch thorton: review+

Description Simon Fraser (smfr) 2012-10-18 22:26:52 PDT
Use tile caches in place of CATiledLayer
Comment 1 Simon Fraser (smfr) 2012-10-18 22:41:50 PDT
Created attachment 169548 [details]
Patch
Comment 2 Simon Fraser (smfr) 2012-10-18 22:42:33 PDT
<rdar://problem/6474145>
Comment 3 Ian Henderson 2012-10-19 00:23:21 PDT
Nice!  Have we considered using tile caches for layers below the 2000px threshold as well?  That way we could avoid allocating memory for offscreen layers.
Comment 4 Simon Fraser (smfr) 2012-10-19 08:30:10 PDT
Possibly; or we could use this visible rect to just avoid allocating backing store for offscreen normal layers.
Comment 5 Tim Horton 2012-10-19 13:23:05 PDT
Comment on attachment 169548 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=169548&action=review

> Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:1561
> +    float leftEdgeDelta = paddingMultiplier * (m_visibleRect.x() - oldVisibleRect.x());

We should consider doing this for the main tile cache too.

> Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:-2504
> -    m_layer = PlatformCALayer::create(useTiledLayer ? PlatformCALayer::LayerTypeWebTiledLayer : PlatformCALayer::LayerTypeWebLayer, this);

Can we disappear LayerTypeWebTiledLayer entirely?
Comment 6 Simon Fraser (smfr) 2012-10-19 13:44:11 PDT
http://trac.webkit.org/changeset/131940