diff options
author | Michael Kolb <kolby@google.com> | 2012-02-24 13:01:10 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-02-24 13:01:10 -0800 |
commit | c4bf028cc0da190b72c31d53fae6eb8a67371ab0 (patch) | |
tree | 65ecbd51bb914f0bbd1e2ce961f081e916fe3bd1 /Source | |
parent | 6c354e5388eb94b1ca2e7fe3bae37313087ef69b (diff) | |
parent | fc8059b4fc435c673ee9fd5ba93322ce1f3e95ab (diff) | |
download | external_webkit-c4bf028cc0da190b72c31d53fae6eb8a67371ab0.zip external_webkit-c4bf028cc0da190b72c31d53fae6eb8a67371ab0.tar.gz external_webkit-c4bf028cc0da190b72c31d53fae6eb8a67371ab0.tar.bz2 |
Merge "fix scrollable layer inside scrollable layer"
Diffstat (limited to 'Source')
-rw-r--r-- | Source/WebCore/platform/graphics/android/LayerAndroid.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/android/LayerAndroid.cpp b/Source/WebCore/platform/graphics/android/LayerAndroid.cpp index 79c02eb..83fb414 100644 --- a/Source/WebCore/platform/graphics/android/LayerAndroid.cpp +++ b/Source/WebCore/platform/graphics/android/LayerAndroid.cpp @@ -685,13 +685,16 @@ void LayerAndroid::updateGLPositionsAndScale(const TransformationMatrix& parentM // now apply it to our children + TransformationMatrix childMatrix; + childMatrix = localMatrix; + childMatrix.translate3d(m_offset.x(), m_offset.y(), 0); if (!m_childrenTransform.isIdentity()) { - localMatrix.translate(getSize().width() * 0.5f, getSize().height() * 0.5f); - localMatrix.multiply(m_childrenTransform); - localMatrix.translate(-getSize().width() * 0.5f, -getSize().height() * 0.5f); + childMatrix.translate(getSize().width() * 0.5f, getSize().height() * 0.5f); + childMatrix.multiply(m_childrenTransform); + childMatrix.translate(-getSize().width() * 0.5f, -getSize().height() * 0.5f); } for (int i = 0; i < count; i++) - this->getChild(i)->updateGLPositionsAndScale(localMatrix, drawClip(), opacity, scale); + this->getChild(i)->updateGLPositionsAndScale(childMatrix, drawClip(), opacity, scale); } void LayerAndroid::setContentsImage(SkBitmapRef* img) |