We currently setNeedsDisplay() on the whole page overlay layer every time through TCADA::flushLayers. This is necessary to keep things painted in the right place when we scroll, but is quite wasteful in apps that don’t scroll. Instead, we can setNeedsDisplay() at scroll time instead. Testing with the Find overlay and other Safari overlays seems to work. <rdar://problem/13355808>
Created attachment 191891 [details] patch
Comment on attachment 191891 [details] patch Yay
http://trac.webkit.org/changeset/145039
Re-opened since this is blocked by bug 111945
Created attachment 194381 [details] better patch!
Comment on attachment 194381 [details] better patch! you said you'd remove local var on irc
http://trac.webkit.org/changeset/146539