Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Side by Side Diff: webkit/renderer/compositor_bindings/web_layer_impl.cc

Issue 18139004: cc: Create a LayerScrollClient interface and an adapter class in compositor_bindings. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "webkit/renderer/compositor_bindings/web_layer_impl.h" 5 #include "webkit/renderer/compositor_bindings/web_layer_impl.h"
6 6
7 #include "base/strings/string_util.h" 7 #include "base/strings/string_util.h"
8 #include "cc/animation/animation.h" 8 #include "cc/animation/animation.h"
9 #include "cc/base/region.h" 9 #include "cc/base/region.h"
10 #include "cc/layers/layer.h" 10 #include "cc/layers/layer.h"
11 #include "cc/layers/layer_position_constraint.h" 11 #include "cc/layers/layer_position_constraint.h"
12 #include "third_party/WebKit/public/platform/WebCompositingReasons.h" 12 #include "third_party/WebKit/public/platform/WebCompositingReasons.h"
13 #include "third_party/WebKit/public/platform/WebFloatPoint.h" 13 #include "third_party/WebKit/public/platform/WebFloatPoint.h"
14 #include "third_party/WebKit/public/platform/WebFloatRect.h" 14 #include "third_party/WebKit/public/platform/WebFloatRect.h"
15 #include "third_party/WebKit/public/platform/WebLayerPositionConstraint.h" 15 #include "third_party/WebKit/public/platform/WebLayerPositionConstraint.h"
16 #include "third_party/WebKit/public/platform/WebSize.h" 16 #include "third_party/WebKit/public/platform/WebSize.h"
17 #include "third_party/skia/include/utils/SkMatrix44.h" 17 #include "third_party/skia/include/utils/SkMatrix44.h"
18 #include "webkit/renderer/compositor_bindings/web_animation_impl.h" 18 #include "webkit/renderer/compositor_bindings/web_animation_impl.h"
19 #include "webkit/renderer/compositor_bindings/web_filter_operations_impl.h" 19 #include "webkit/renderer/compositor_bindings/web_filter_operations_impl.h"
20 #include "webkit/renderer/compositor_bindings/web_to_cc_animation_delegate_adapt er.h" 20 #include "webkit/renderer/compositor_bindings/web_to_cc_animation_delegate_adapt er.h"
21 #include "webkit/renderer/compositor_bindings/web_to_cc_layer_scroll_client_adap ter.h"
21 22
22 using cc::Animation; 23 using cc::Animation;
23 using cc::Layer; 24 using cc::Layer;
24 using WebKit::WebLayer; 25 using WebKit::WebLayer;
25 using WebKit::WebFloatPoint; 26 using WebKit::WebFloatPoint;
26 using WebKit::WebVector; 27 using WebKit::WebVector;
27 using WebKit::WebRect; 28 using WebKit::WebRect;
28 using WebKit::WebSize; 29 using WebKit::WebSize;
29 using WebKit::WebColor; 30 using WebKit::WebColor;
30 using WebKit::WebFilterOperations; 31 using WebKit::WebFilterOperations;
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 const WebKit::WebLayerPositionConstraint& constraint) { 352 const WebKit::WebLayerPositionConstraint& constraint) {
352 layer_->SetPositionConstraint(ToLayerPositionConstraint(constraint)); 353 layer_->SetPositionConstraint(ToLayerPositionConstraint(constraint));
353 } 354 }
354 355
355 WebKit::WebLayerPositionConstraint WebLayerImpl::positionConstraint() const { 356 WebKit::WebLayerPositionConstraint WebLayerImpl::positionConstraint() const {
356 return ToWebLayerPositionConstraint(layer_->position_constraint()); 357 return ToWebLayerPositionConstraint(layer_->position_constraint());
357 } 358 }
358 359
359 void WebLayerImpl::setScrollClient( 360 void WebLayerImpl::setScrollClient(
360 WebKit::WebLayerScrollClient* scroll_client) { 361 WebKit::WebLayerScrollClient* scroll_client) {
361 layer_->set_layer_scroll_client(scroll_client); 362 layer_scroll_client_adapter_.reset(
363 new WebToCCLayerScrollClientAdapter(scroll_client));
364 layer_->set_layer_scroll_client(layer_scroll_client_adapter_.get());
danakj 2013/06/28 02:57:48 To do this with base::Callback, you'd add a method
danakj 2013/06/28 02:59:02 Actually, you shouldn't need the PassAlong method.
tfarina 2013/06/28 04:07:03 Done.
362 } 365 }
363 366
364 bool WebLayerImpl::isOrphan() const { return !layer_->layer_tree_host(); } 367 bool WebLayerImpl::isOrphan() const { return !layer_->layer_tree_host(); }
365 368
366 Layer* WebLayerImpl::layer() const { return layer_.get(); } 369 Layer* WebLayerImpl::layer() const { return layer_.get(); }
367 370
368 } // namespace webkit 371 } // namespace webkit
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698