[webkit-reviews] review granted: [Bug 123043] Remote Layer Tree: Double-buffering and minimization of repaints : [Attachment 214611] patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Oct 18 16:36:45 PDT 2013
Simon Fraser (smfr) <simon.fraser at apple.com> has granted Tim Horton
<thorton at apple.com>'s request for review:
Bug 123043: Remote Layer Tree: Double-buffering and minimization of repaints
https://bugs.webkit.org/show_bug.cgi?id=123043
Attachment 214611: patch
https://bugs.webkit.org/attachment.cgi?id=214611&action=review
------- Additional Comments from Simon Fraser (smfr) <simon.fraser at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=214611&action=review
> Source/WebCore/platform/graphics/mac/WebLayer.mm:64
> + bool isTiledLayer = [layer isKindOfClass:[CATiledLayer class]];
Move this down.
> Source/WebCore/platform/graphics/mac/WebLayer.mm:117
> + // If we have no dirty rects, repaint the whole layer.
Comment is the reverse of the immediately following statement which is
confusing.
> Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:124
> + Region cleanRegion(layerBounds);
> + cleanRegion.subtract(m_dirtyRegion);
> +
> + RetainPtr<CGImageRef> frontImage = m_frontBuffer->makeCGImage();
> +
> + for (const auto& rect : cleanRegion.rects())
> + context->drawNativeImage(frontImage.get(),
m_frontBuffer->size(), ColorSpaceDeviceRGB, rect, rect);
Seems like this could be much slower than copying over the entire layer in many
cases.
More information about the webkit-reviews
mailing list