diff options
Diffstat (limited to 'Source/WebCore')
3 files changed, 4 insertions, 1 deletions
diff --git a/Source/WebCore/platform/graphics/android/layers/CanvasLayer.cpp b/Source/WebCore/platform/graphics/android/layers/CanvasLayer.cpp index 93806ff..4a7f161 100644 --- a/Source/WebCore/platform/graphics/android/layers/CanvasLayer.cpp +++ b/Source/WebCore/platform/graphics/android/layers/CanvasLayer.cpp @@ -52,6 +52,8 @@ CanvasLayer::CanvasLayer(RenderLayer* owner, HTMLCanvasElement* canvas) { init(); m_canvas->addObserver(this); + // Make sure we initialize in case the canvas has already been laid out + canvasResized(m_canvas); } CanvasLayer::CanvasLayer(const CanvasLayer& layer) diff --git a/Source/WebCore/platform/graphics/android/layers/CanvasLayer.h b/Source/WebCore/platform/graphics/android/layers/CanvasLayer.h index c719451..fce6453 100644 --- a/Source/WebCore/platform/graphics/android/layers/CanvasLayer.h +++ b/Source/WebCore/platform/graphics/android/layers/CanvasLayer.h @@ -52,6 +52,7 @@ public: virtual bool drawGL(bool layerTilesDisabled); virtual void contentDraw(SkCanvas* canvas, PaintStyle style); virtual bool needsTexture(); + virtual bool needsIsolatedSurface() { return true; } protected: virtual InvalidateFlags onSetHwAccelerated(bool hwAccelerated); diff --git a/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h b/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h index 52df0cf..9b239ee 100644 --- a/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h +++ b/Source/WebCore/platform/graphics/android/layers/LayerAndroid.h @@ -281,7 +281,7 @@ public: Surface* surface() { return m_surface; } void setIntrinsicallyComposited(bool intCom) { m_intrinsicallyComposited = intCom; } - bool needsIsolatedSurface() { + virtual bool needsIsolatedSurface() { return (needsTexture() && m_intrinsicallyComposited) || m_animations.size(); } |