summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/graphics/android/GraphicsLayerAndroid.h
diff options
context:
space:
mode:
authorPatrick Scott <phanna@android.com>2010-12-09 18:12:20 -0500
committerPatrick Scott <phanna@android.com>2010-12-13 08:23:29 -0500
commitfe812d40b53dc52d5c929e39b5e293af8b6cb4e4 (patch)
tree81002048cd73d5fa21b7cac3b047c2f1b1755b64 /WebCore/platform/graphics/android/GraphicsLayerAndroid.h
parent83ddee4501f0c2f48d1073e0185a2fb0a732c929 (diff)
downloadexternal_webkit-fe812d40b53dc52d5c929e39b5e293af8b6cb4e4.zip
external_webkit-fe812d40b53dc52d5c929e39b5e293af8b6cb4e4.tar.gz
external_webkit-fe812d40b53dc52d5c929e39b5e293af8b6cb4e4.tar.bz2
Fix hit testing inside layers.
* Prevent asking for a sync in GraphicsLayerAndroid if some property has not changed. * Remove scrolling logic from LayerAndroid and create a subclass for scrollable layers. * Report the scrolling limits to the layer in order to scroll iframes (not turned on) and to avoid computing them each time the layer is scrolled. * Change the foreground rect calculations to better match the non-overflow case. * During hit testing, intersect the hitTestClip with the foreground and background to prevent false positives in the layer. * Prepare for iframe scrolling by adding code to trigger compositing for iframes. This currently works great except for navigation so it disabled for now. Bug: 3258631 Change-Id: I0da2d8dbe25376c6aa4f485c9350048c82c6f563
Diffstat (limited to 'WebCore/platform/graphics/android/GraphicsLayerAndroid.h')
-rw-r--r--WebCore/platform/graphics/android/GraphicsLayerAndroid.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/WebCore/platform/graphics/android/GraphicsLayerAndroid.h b/WebCore/platform/graphics/android/GraphicsLayerAndroid.h
index 098ad37..ea8c5c9 100644
--- a/WebCore/platform/graphics/android/GraphicsLayerAndroid.h
+++ b/WebCore/platform/graphics/android/GraphicsLayerAndroid.h
@@ -32,6 +32,8 @@ class Image;
namespace WebCore {
+class ScrollableLayerAndroid;
+
class GraphicsLayerAndroid : public GraphicsLayer {
public:
@@ -149,7 +151,7 @@ private:
Vector<FloatRect> m_invalidatedRects;
LayerAndroid* m_contentLayer;
- LayerAndroid* m_foregroundLayer;
+ ScrollableLayerAndroid* m_foregroundLayer;
LayerAndroid* m_foregroundClipLayer;
};