WebKit1 is flashy when compositing layers come and go
authorsimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 7 May 2014 18:49:26 +0000 (18:49 +0000)
committersimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 7 May 2014 18:49:26 +0000 (18:49 +0000)
commit2d79b3a01d86951871b3a2e97302efc6b2880c70
treee1e58e828893caeaa372bc33635cd5347530efd1
parentce34792094fd2dde38866140b5b0aa4a01d0007f
WebKit1 is flashy when compositing layers come and go
https://bugs.webkit.org/show_bug.cgi?id=132655

Source/WebKit/mac:

Reviewed by Sam Weinig.

In r166117 I removed code to flush compositing layers in FrameView::paintContents(),
which caused problems when painting iframes. However, this removed a flush
that WebKit1 relied on to flush compositing layers when painting, which caused
flashing when compositing layers come and go, and broke WebView snapshotting
in some cases.

Fix by adding back compositing layer flushing, but this time in WebKit1's
-viewWillDraw code path. This allows removal of some flushing in DumpRenderTree.

* WebView/WebHTMLView.mm:
(-[WebHTMLView viewWillDraw]):
* WebView/WebView.mm:
(-[WebView _flushCompositingChanges]):
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:

Tools:
<rdar://problem/16830981&16788846>

Reviewed by Sam Weinig.

Revert the change from r166117.

* DumpRenderTree/mac/DumpRenderTree.mm:
(updateDisplay):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@168434 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebKit/mac/ChangeLog
Source/WebKit/mac/WebView/WebHTMLView.mm
Source/WebKit/mac/WebView/WebView.mm
Source/WebKit/mac/WebView/WebViewInternal.h
Source/WebKit/mac/WebView/WebViewPrivate.h
Tools/ChangeLog
Tools/DumpRenderTree/mac/DumpRenderTree.mm