Bug 209899

Summary: Blank WebGL Canvas when element is shown after hiding (Safari)
Product: WebKit Reporter: Tom <tom.chan>
Component: CanvasAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: dino, justin_fan, mmaxfield, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari 13   
Hardware: All   
OS: All   
Attachments:
Description Flags
app showing safari webGL canvas drawing bug none

Description Tom 2020-04-02 02:35:05 PDT
Created attachment 395253 [details]
app showing safari webGL canvas drawing bug

When you reshow a WebGL canvas element, the contents are not always drawn and you sometimes just get a blank canvas.
This issue only seems to be present on Safari.

Reproduction steps:
1. Create a canvas element using WebGL to draw.
2. Hide that element using "display: none".
3. Reshow the element using "display: block".

Current Behaviour:
Repetitive trials indicate that the canvas content is only restored about 50% of the time.

Expected Behaviour:
The canvas element's content, i.e. what is drawn on the canvas, should be redrawn when the element is re-shown in all instances.


Other:
See attached zip for a simple app that demonstrates this.
Comment 1 Radar WebKit Bug Importer 2020-04-04 13:09:23 PDT
<rdar://problem/61301518>