Bug 226532

Summary: REGRESSION (r271651) Safari 14 won't repaint region after scroll
Product: WebKit Reporter: Chris B <chris.bannon>
Component: ScrollingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED DUPLICATE    
Severity: Critical CC: bfulgham, kdolan, simon.fraser, zalan
Priority: P1 Keywords: InRadar
Version: Safari 14   
Hardware: All   
OS: All   
URL: https://stackblitz.com/edit/safari-14-1-scroll-hack?file=index.ts
Attachments:
Description Flags
DataGrid cell is configured properly in DOM and CSS but not rendered after scrolling none

Description Chris B 2021-06-02 06:56:11 PDT
Created attachment 430343 [details]
DataGrid cell is configured properly in DOM and CSS but not rendered after scrolling

Hello, we develop and sell a JS DataGrid in a product called Wijmo. Apple (among many other big companies) are customers and rely heavily on our DataGrid in many browsers. This week we have been flooded with bug reports because of a rendering bug in Safari 14.1.

The issue happens when the viewport of our DataGrid is scrolled in Safari 14. Eventually, the grid cells disappear and are not repainted. 

Upon inspection of the DOM, all cells are configured properly and have visibility as well as correct layout and positioning. But they are not rendered on the screen. See attached image of inspected cell with DOM properties there, yet unrendered. 

Here is a demonstration and a (hack) workaround that forces repaint. I simply add a "fake" transform after the scroll event to the grid element to trick Safari into repainting it. We are putting this hack into our product, but I insist that this bug is fixed in Safari. It is awful for any customers who won't have the most up to date version of our library. Please feel free to ask for more information. 

https://stackblitz.com/edit/safari-14-1-scroll-hack?file=index.ts
Comment 1 Chris B 2021-06-02 06:57:48 PDT
Oh, I reported this to Apple about a week ago and have had ZERO response so far (https://feedbackassistant.apple.com/feedback/9121033). Hence me submitting this issue here.
Comment 2 Simon Fraser (smfr) 2021-06-02 09:27:47 PDT
<rdar://78569138>
Comment 3 Simon Fraser (smfr) 2021-06-02 09:28:28 PDT
I've been investigating this and am close to a fix.
Comment 4 Chris B 2021-06-02 10:43:37 PDT
(In reply to Simon Fraser (smfr) from comment #3)
> I've been investigating this and am close to a fix.

Thanks Simon, I look forward to that. I will be very curious of the root issue too.
Comment 5 Chris B 2021-06-28 07:05:27 PDT
Any updates on this issue? It is still a critical issue for us and our customers.
Comment 6 Simon Fraser (smfr) 2021-07-22 14:57:54 PDT
This was fixed via bug 220892.

*** This bug has been marked as a duplicate of bug 220892 ***