diff options
author | John Reck <jreck@google.com> | 2012-06-11 17:27:24 -0700 |
---|---|---|
committer | John Reck <jreck@google.com> | 2012-06-11 17:27:24 -0700 |
commit | f8a89eaa1361ce1e71ec7fa9065103fd0b305b5f (patch) | |
tree | 7f460790c9c5f90350ffa8de62f763e9b85cd6bb /Source | |
parent | efe3bf4f2a3225092fa2a045bbcda6742c1aac66 (diff) | |
download | external_webkit-f8a89eaa1361ce1e71ec7fa9065103fd0b305b5f.zip external_webkit-f8a89eaa1361ce1e71ec7fa9065103fd0b305b5f.tar.gz external_webkit-f8a89eaa1361ce1e71ec7fa9065103fd0b305b5f.tar.bz2 |
Call the right updatePositions*
Bug: 6634077
Software was accidentally calling the inner updatePositions instead
of the outer updatePositions which the hardware path calls. Move
the inner updatePositions to be protected instead of public to
guard against this in the future as well.
Change-Id: Ib509f151ce64bf390383eaa0c32a2bae89428e89
Diffstat (limited to 'Source')
-rw-r--r-- | Source/WebCore/platform/graphics/android/layers/LayerAndroid.h | 14 | ||||
-rw-r--r-- | Source/WebKit/android/nav/WebView.cpp | 2 |
2 files changed, 8 insertions, 8 deletions
diff --git a/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h b/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h index f821d89..79c84b4 100644 --- a/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h +++ b/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h @@ -199,13 +199,6 @@ public: void dumpLayers(FILE*, int indentLevel) const; void dumpToLog() const; - /** Call this with the current viewport (scrolling, zoom) to update - the position of the fixed layers. - - This call is recursive, so it should be called on the root of the - hierarchy. - */ - void updateLayerPositions(SkRect viewPort, IFrameLayerAndroid* parentIframeLayer = 0); virtual IFrameLayerAndroid* updatePosition(SkRect viewport, IFrameLayerAndroid* parentIframeLayer); @@ -297,6 +290,13 @@ public: } protected: + /** Call this with the current viewport (scrolling, zoom) to update + the position of the fixed layers. + + This call is recursive, so it should be called on the root of the + hierarchy. + */ + void updateLayerPositions(SkRect viewPort, IFrameLayerAndroid* parentIframeLayer = 0); virtual void onDraw(SkCanvas*, SkScalar opacity, android::DrawExtra* extra, PaintStyle style); virtual InvalidateFlags onSetHwAccelerated(bool hwAccelerated) { return InvalidateNone; } TransformationMatrix m_drawTransform; diff --git a/Source/WebKit/android/nav/WebView.cpp b/Source/WebKit/android/nav/WebView.cpp index 38ba451..a67b5fd 100644 --- a/Source/WebKit/android/nav/WebView.cpp +++ b/Source/WebKit/android/nav/WebView.cpp @@ -316,7 +316,7 @@ void draw(SkCanvas* canvas, SkColor bgColor, DrawExtras extras) // call this to be sure we've adjusted for any scrolling or animations // before we actually draw - m_baseLayer->updateLayerPositions(m_visibleContentRect); + m_baseLayer->updatePositionsRecursive(m_visibleContentRect); m_baseLayer->updatePositions(); // We have to set the canvas' matrix on the base layer |