summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2012-06-11 17:27:24 -0700
committerJohn Reck <jreck@google.com>2012-06-11 17:27:24 -0700
commitf8a89eaa1361ce1e71ec7fa9065103fd0b305b5f (patch)
tree7f460790c9c5f90350ffa8de62f763e9b85cd6bb
parentefe3bf4f2a3225092fa2a045bbcda6742c1aac66 (diff)
downloadexternal_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
-rw-r--r--Source/WebCore/platform/graphics/android/layers/LayerAndroid.h14
-rw-r--r--Source/WebKit/android/nav/WebView.cpp2
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