[chromium] Implement ImageBufferSkia::draw on the GPU when possible
Created attachment 66560 [details] Patch
Comment on attachment 66560 [details] Patch We've discussed this offline, but in the multisampling case you definitely do not want to reallocate the color texture into which the blit occurs each frame, so releaseBackingTexture() is unneeded. Also, getBackingTexture() needs to be called each time we want to display the up-to-date content in the multisampling case, so it should probably be named getUpToDateBackingTexture() or similar.
Created attachment 66572 [details] Patch
Good point. Removed the release..() function and renamed the getter getRenderingResultsAsTexture(), which hopefully conveys that the returned texture gets the current rendering results.
Comment on attachment 66572 [details] Patch This looks better but I noticed one more thing; sorry. View in context: https://bugs.webkit.org/attachment.cgi?id=66572&action=prettypatch > WebCore/html/canvas/CanvasRenderingContext2D.cpp:1286 > + if (!isAccelerated() || !sourceContext || !sourceContext->isAccelerated()) For the time being, this needs a more specific check to make sure the source context is 2D. This won't work for the WebGL code path right now.
Created attachment 66573 [details] adds a check that the source canvas is 2d before going down the accelerated path
Comment on attachment 66573 [details] adds a check that the source canvas is 2d before going down the accelerated path Looks good to me.
Landed at r66785 with a slightly-mismerged ChangeLog.
Comment on attachment 66573 [details] adds a check that the source canvas is 2d before going down the accelerated path Clearing flags, patch has landed.