[Canvas 2D] canvas transformation is ignored when drawing from accelerated to unaccelerated canvas |
|||
Issue descriptionThis issue is a follow-up issue of https://bugs.chromium.org/p/chromium/issues/detail?id=806066. That issue exposes an existing bug in canvas drawImage. Repro Fiddle: https://jsfiddle.net/53fhq5w6/ Expected: the small canvas should be a vertically flipped version of the large canvas. Actual: Image is not flipped Based on analysis written in https://bugs.chromium.org/p/chromium/issues/detail?id=806066, the major problem here is that when an unaccelerated canvas tries to drawImage from an accelerated canvas (that already has CanvasResourceProvider created), it will ignore the existing transformation. Note that in this case, the small canvas will get promoted to accelerated 2d and a new Canvas2DLayerBridge will get created.
,
Feb 1 2018
,
Feb 1 2018
Can someone help me track down the boundraies between hw accell and not? I Need to hotfix the problem in live apps that have broken transformation because of this bug. Should i make minimum canvas size of 512x512 to avoid the bug?
,
Feb 2 2018
andreabogazzi79@gmail.com: there is a fix coming in that hides this problem back, you might want to track https://bugs.chromium.org/p/chromium/issues/detail?id=806066 instead of this issue.
,
May 3 2018
This jsfiddle is now working correctly. I did a reverse bisecting and found that it is fixed by https://chromium-review.googlesource.com/c/chromium/src/+/899962. |
|||
►
Sign in to add a comment |
|||
Comment 1 by xlai@chromium.org
, Feb 1 2018