summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2011-11-28 15:13:29 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-11-28 15:13:29 -0800
commit647970367ac56d95e84fbfca92d8b7390d5d2fed (patch)
tree95bc407f3cc0af1106f232708d714aa891d37efb /Source
parent7bfb8097235343906a2764fa6fb865f4bea2696b (diff)
parent35e0b8dd7902e92f50ede4df2e4bad4ed581b770 (diff)
downloadexternal_webkit-647970367ac56d95e84fbfca92d8b7390d5d2fed.zip
external_webkit-647970367ac56d95e84fbfca92d8b7390d5d2fed.tar.gz
external_webkit-647970367ac56d95e84fbfca92d8b7390d5d2fed.tar.bz2
Merge "Put canvas on a layer" into ics-mr1
Diffstat (limited to 'Source')
-rw-r--r--Source/WebCore/rendering/RenderHTMLCanvas.cpp6
-rw-r--r--Source/WebCore/rendering/RenderLayerCompositor.cpp2
2 files changed, 7 insertions, 1 deletions
diff --git a/Source/WebCore/rendering/RenderHTMLCanvas.cpp b/Source/WebCore/rendering/RenderHTMLCanvas.cpp
index de2a2c1..ada79e9 100644
--- a/Source/WebCore/rendering/RenderHTMLCanvas.cpp
+++ b/Source/WebCore/rendering/RenderHTMLCanvas.cpp
@@ -47,9 +47,13 @@ RenderHTMLCanvas::RenderHTMLCanvas(HTMLCanvasElement* element)
bool RenderHTMLCanvas::requiresLayer() const
{
+#if PLATFORM(ANDROID)
+ return true;
+#endif
+
if (RenderReplaced::requiresLayer())
return true;
-
+
HTMLCanvasElement* canvas = static_cast<HTMLCanvasElement*>(node());
return canvas && canvas->renderingContext() && canvas->renderingContext()->isAccelerated();
}
diff --git a/Source/WebCore/rendering/RenderLayerCompositor.cpp b/Source/WebCore/rendering/RenderLayerCompositor.cpp
index 5827636..85c57a6 100644
--- a/Source/WebCore/rendering/RenderLayerCompositor.cpp
+++ b/Source/WebCore/rendering/RenderLayerCompositor.cpp
@@ -1384,6 +1384,8 @@ bool RenderLayerCompositor::requiresCompositingForAndroidLayers(const RenderLaye
if (layer->isFixed())
return true;
#endif
+ if (layer->renderer()->isCanvas())
+ return true;
return false;
}
#endif