[Webkit-unassigned] [Bug 231163] REGRESSION (iOS 15): Canvas Rendering feature leads to strange resize behaviour

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Dec 14 22:13:04 PST 2021


https://bugs.webkit.org/show_bug.cgi?id=231163

Cameron McCormack (:heycam) <heycam at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |heycam at apple.com

--- Comment #3 from Cameron McCormack (:heycam) <heycam at apple.com> ---
Thanks for filing the bug report!

When the resizer is dragged, the touch event handler changes the size of the canvases (assigning to their width and height properties, although the width of each canvas remains the same), and then calls requestAnimationFrame to schedule a repaint of the canvases. The touch event handler can be called multiple times before the rAF callback.

Attaching a test that I think reproduces the same problem.  The test uses setInterval(..., 1) in place of the touch events.  In the setInterval handler, it changes the size of the canvas and then calls requestAnimationFrame to schedule a paint, which just does a single fillRect.  The checkbox controls whether we also redundantly set the width of the canvas.  That seems to be key to causing the flickering problem.

I haven't been able to reproduce the problem on macOS, only iOS.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20211215/4376af22/attachment-0001.htm>


More information about the webkit-unassigned mailing list