Source/WebCore: REGRESSION (r155998): Elements render at very low resolution with...
authorsimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 9 Apr 2014 01:11:52 +0000 (01:11 +0000)
committersimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 9 Apr 2014 01:11:52 +0000 (01:11 +0000)
commit8d3f4f9febc7803e19c8ba1fdb23b050f9cf8cef
tree09b6ddfa184ed38bd34bd9227e97eb6e5280f8e8
parentdabd65353104ea82a3a3d00c11382077f63db20d
Source/WebCore: REGRESSION (r155998): Elements render at very low resolution with some 3d transforms
https://bugs.webkit.org/show_bug.cgi?id=131412
<rdar://problem/16525044>

Reviewed by Tim Horton.

In r155998 we started to compute a root-relative transform in order to choose
a good contentsScale to avoid blurring on scaling.

However, the code failed to update this transform when passing over
GraphicsLayerCAs with no uncommitted changes, which caused us to choose
an incorrect contentsScale sometimes, resulting in blurriness.

Fix by updating the root-relative transform on layers with no uncommitted
changes.

Test: compositing/contents-scale/incremental-change.html

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):

LayoutTests: REGRESSION (r155998): Elements render at very low resolution with some 3d transforms
https://bugs.webkit.org/show_bug.cgi?id=131412

Reviewed by Tim Horton.

Test that makes an incremental change to a layer property in a tree with
interesting 3d transforms.

* compositing/contents-scale/incremental-change-expected.html: Added.
* compositing/contents-scale/incremental-change.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166990 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/compositing/contents-scale/incremental-change-expected.html [new file with mode: 0644]
LayoutTests/compositing/contents-scale/incremental-change.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp