summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorvollick@chromium.org <vollick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-22 15:49:36 +0000
committervollick@chromium.org <vollick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-22 15:49:36 +0000
commit167c71249ca6de270b3dba75ca94f5de2deb3ea4 (patch)
treef18410fa594d656f881902ffbbdb1b9df08f5672 /webkit
parent1d0bd6b4e8fa4df302f106db41e597ae2df8bb56 (diff)
downloadchromium_src-167c71249ca6de270b3dba75ca94f5de2deb3ea4.zip
chromium_src-167c71249ca6de270b3dba75ca94f5de2deb3ea4.tar.gz
chromium_src-167c71249ca6de270b3dba75ca94f5de2deb3ea4.tar.bz2
Add plumbing for scroll parent.
Plumbs the scroll parent information into the cc layer trees. These relationships are not yet used. (That task is accomplished here https://codereview.chromium.org/18191009/). R=shawnsingh@chromium.org BUG=254435 Review URL: https://chromiumcodereview.appspot.com/18133004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219026 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/renderer/compositor_bindings/web_layer_impl.cc14
-rw-r--r--webkit/renderer/compositor_bindings/web_layer_impl.h3
2 files changed, 17 insertions, 0 deletions
diff --git a/webkit/renderer/compositor_bindings/web_layer_impl.cc b/webkit/renderer/compositor_bindings/web_layer_impl.cc
index f04e362..f2a3cde 100644
--- a/webkit/renderer/compositor_bindings/web_layer_impl.cc
+++ b/webkit/renderer/compositor_bindings/web_layer_impl.cc
@@ -379,6 +379,20 @@ std::string WebLayerImpl::DebugName() {
return name;
}
+void WebLayerImpl::setScrollParent(WebKit::WebLayer* parent) {
+ cc::Layer* scroll_parent = NULL;
+ if (parent)
+ scroll_parent = static_cast<WebLayerImpl*>(parent)->layer();
+ layer_->SetScrollParent(scroll_parent);
+}
+
+void WebLayerImpl::setClipParent(WebKit::WebLayer* parent) {
+ cc::Layer* clip_parent = NULL;
+ if (parent)
+ clip_parent = static_cast<WebLayerImpl*>(parent)->layer();
+ layer_->SetClipParent(clip_parent);
+}
+
Layer* WebLayerImpl::layer() const { return layer_.get(); }
} // namespace webkit
diff --git a/webkit/renderer/compositor_bindings/web_layer_impl.h b/webkit/renderer/compositor_bindings/web_layer_impl.h
index 10b5a1a..169b818 100644
--- a/webkit/renderer/compositor_bindings/web_layer_impl.h
+++ b/webkit/renderer/compositor_bindings/web_layer_impl.h
@@ -126,6 +126,9 @@ class WebLayerImpl : public WebKit::WebLayer, public cc::LayerClient {
// LayerClient implementation.
virtual std::string DebugName() OVERRIDE;
+ virtual void setScrollParent(WebKit::WebLayer* parent);
+ virtual void setClipParent(WebKit::WebLayer* parent);
+
protected:
scoped_refptr<cc::Layer> layer_;
WebKit::WebLayerClient* web_layer_client_;