UIProcess' background task expiration handler may get called after the app is foreground again. When this happens, we already have a foreground assertion on behalf of the WebContent process, and the view is visible. We would send the WillSuspendImminently IPC to the WebContent process, which would freeze its layers, even though it is visible on screen.
<rdar://problem/49762471>
Created attachment 370951 [details] Patch
Comment on attachment 370951 [details] Patch r=me
Comment on attachment 370951 [details] Patch Clearing flags on attachment: 370951 Committed r245899: <https://trac.webkit.org/changeset/245899>
All reviewed patches have been landed. Closing bug.
Reverted r245899 for reason: Seems to be causing crashes on iosmac Committed r245992: <https://trac.webkit.org/changeset/245992>
Created attachment 371163 [details] Patch
Comment on attachment 371163 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=371163&action=review > Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm:165 > +#if !PLATFORM(IOSMAC) Temporarily disabling on IOSMAC due to <rdar://problem/51313780>.
Created attachment 371284 [details] Patch
Comment on attachment 371284 [details] Patch Clearing flags on attachment: 371284 Committed r246064: <https://trac.webkit.org/changeset/246064>