<rdar://problem/13973514>
Created attachment 202861 [details] patch
Comment on attachment 202861 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=202861&action=review > Source/WebCore/ChangeLog:3 > + Animated GIFs don't repaint after TCADA un-suspends painting TCADA wut? > Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:391 > + if (m_webPage->windowIsVisible()) { > m_webPage->corePage()->resumeScriptedAnimations(); > + m_webPage->corePage()->mainFrame()->view()->resumeAnimatingImages(); > + } Weird that this is in WK2 code. Are all of m_webPage->corePage()->mainFrame()->view() always non-null?
(In reply to comment #2) > (From update of attachment 202861 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=202861&action=review > > > Source/WebCore/ChangeLog:3 > > + Animated GIFs don't repaint after TCADA un-suspends painting > > TCADA wut? I'll fix that. > > Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:391 > > + if (m_webPage->windowIsVisible()) { > > m_webPage->corePage()->resumeScriptedAnimations(); > > + m_webPage->corePage()->mainFrame()->view()->resumeAnimatingImages(); > > + } > > Weird that this is in WK2 code. A little, but no weirder than resumeScriptedAnimations. > Are all of m_webPage->corePage()->mainFrame()->view() always non-null? flushLayers depends on all of them being non-null as well, but other code null-checks frame and frameView. I'm never sure. I don't see any clear guarantee that frame or its view are non-null, so I'll check them.
https://trac.webkit.org/r150666