summaryrefslogtreecommitdiffstats
path: root/cc/layers
diff options
context:
space:
mode:
authorajay.berwal@samsung.com <ajay.berwal@samsung.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-05 09:18:42 +0000
committerajay.berwal@samsung.com <ajay.berwal@samsung.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-02-05 09:18:42 +0000
commit243e4f1996a61098947b5f9ad1798d6b5412ef0b (patch)
tree647808bf21f492a652d54e8e15c12177ca04e824 /cc/layers
parent1e7e41e75151197f026df35b9c01c4bc63bccef0 (diff)
downloadchromium_src-243e4f1996a61098947b5f9ad1798d6b5412ef0b.zip
chromium_src-243e4f1996a61098947b5f9ad1798d6b5412ef0b.tar.gz
chromium_src-243e4f1996a61098947b5f9ad1798d6b5412ef0b.tar.bz2
Pass gfx structs by const ref (gfx::Vector2d)
Avoid unneccessary copy of structures gfx::Vector2d by passing them by const ref rather than value. Any struct of size > 4 bytes should be passed by const ref. Passing by ref for these structs is faster than passing by value, especially when invoking function has multiple parameters. Pass gfx structs by const ref (gfx::Vector2d) BUG=159273 Review URL: https://codereview.chromium.org/132163009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248941 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/layers')
-rw-r--r--cc/layers/layer.cc3
-rw-r--r--cc/layers/layer.h3
-rw-r--r--cc/layers/layer_impl.cc7
-rw-r--r--cc/layers/layer_impl.h7
-rw-r--r--cc/layers/tiled_layer.cc2
5 files changed, 9 insertions, 13 deletions
diff --git a/cc/layers/layer.cc b/cc/layers/layer.cc
index b485d0d..56850a8 100644
--- a/cc/layers/layer.cc
+++ b/cc/layers/layer.cc
@@ -693,7 +693,7 @@ void Layer::SetScrollOffset(gfx::Vector2d scroll_offset) {
SetNeedsCommit();
}
-void Layer::SetScrollOffsetFromImplSide(gfx::Vector2d scroll_offset) {
+void Layer::SetScrollOffsetFromImplSide(const gfx::Vector2d& scroll_offset) {
DCHECK(IsPropertyChangeAllowed());
// This function only gets called during a BeginMainFrame, so there
// is no need to call SetNeedsUpdate here.
@@ -1204,5 +1204,4 @@ void Layer::RemoveFromClipTree() {
void Layer::RunMicroBenchmark(MicroBenchmark* benchmark) {
benchmark->RunOnLayer(this);
}
-
} // namespace cc
diff --git a/cc/layers/layer.h b/cc/layers/layer.h
index 15b0e00..1c0f27c 100644
--- a/cc/layers/layer.h
+++ b/cc/layers/layer.h
@@ -267,10 +267,9 @@ class CC_EXPORT Layer : public base::RefCounted<Layer>,
void SetScrollOffset(gfx::Vector2d scroll_offset);
gfx::Vector2d scroll_offset() const { return scroll_offset_; }
- void SetScrollOffsetFromImplSide(gfx::Vector2d scroll_offset);
+ void SetScrollOffsetFromImplSide(const gfx::Vector2d& scroll_offset);
gfx::Vector2d MaxScrollOffset() const;
-
void SetScrollClipLayerId(int clip_layer_id);
bool scrollable() const { return scroll_clip_layer_id_ != INVALID_ID; }
diff --git a/cc/layers/layer_impl.cc b/cc/layers/layer_impl.cc
index e21cc13..a06884d 100644
--- a/cc/layers/layer_impl.cc
+++ b/cc/layers/layer_impl.cc
@@ -367,7 +367,7 @@ ResourceProvider::ResourceId LayerImpl::ContentsResourceId() const {
return 0;
}
-void LayerImpl::SetSentScrollDelta(gfx::Vector2d sent_scroll_delta) {
+void LayerImpl::SetSentScrollDelta(const gfx::Vector2d& sent_scroll_delta) {
// Pending tree never has sent scroll deltas
DCHECK(layer_tree_impl()->IsActiveTree());
@@ -1054,11 +1054,11 @@ bool LayerImpl::IsExternalFlingActive() const {
scroll_offset_delegate_->IsExternalFlingActive();
}
-void LayerImpl::SetScrollOffset(gfx::Vector2d scroll_offset) {
+void LayerImpl::SetScrollOffset(const gfx::Vector2d& scroll_offset) {
SetScrollOffsetAndDelta(scroll_offset, ScrollDelta());
}
-void LayerImpl::SetScrollOffsetAndDelta(gfx::Vector2d scroll_offset,
+void LayerImpl::SetScrollOffsetAndDelta(const gfx::Vector2d& scroll_offset,
const gfx::Vector2dF& scroll_delta) {
bool changed = false;
@@ -1478,5 +1478,4 @@ scoped_ptr<base::Value> LayerImpl::AsValue() const {
void LayerImpl::RunMicroBenchmark(MicroBenchmarkImpl* benchmark) {
benchmark->RunOnLayer(this);
}
-
} // namespace cc
diff --git a/cc/layers/layer_impl.h b/cc/layers/layer_impl.h
index bb4358f..a901a64 100644
--- a/cc/layers/layer_impl.h
+++ b/cc/layers/layer_impl.h
@@ -362,8 +362,8 @@ class CC_EXPORT LayerImpl : public LayerAnimationValueObserver,
LayerScrollOffsetDelegate* scroll_offset_delegate);
bool IsExternalFlingActive() const;
- void SetScrollOffset(gfx::Vector2d scroll_offset);
- void SetScrollOffsetAndDelta(gfx::Vector2d scroll_offset,
+ void SetScrollOffset(const gfx::Vector2d& scroll_offset);
+ void SetScrollOffsetAndDelta(const gfx::Vector2d& scroll_offset,
const gfx::Vector2dF& scroll_delta);
gfx::Vector2d scroll_offset() const { return scroll_offset_; }
@@ -371,13 +371,12 @@ class CC_EXPORT LayerImpl : public LayerAnimationValueObserver,
gfx::Vector2dF ClampScrollToMaxScrollOffset();
void SetScrollbarPosition(ScrollbarLayerImplBase* scrollbar_layer,
LayerImpl* scrollbar_clip_layer) const;
-
void SetScrollDelta(const gfx::Vector2dF& scroll_delta);
gfx::Vector2dF ScrollDelta() const;
gfx::Vector2dF TotalScrollOffset() const;
- void SetSentScrollDelta(gfx::Vector2d sent_scroll_delta);
+ void SetSentScrollDelta(const gfx::Vector2d& sent_scroll_delta);
gfx::Vector2d sent_scroll_delta() const { return sent_scroll_delta_; }
// Returns the delta of the scroll that was outside of the bounds of the
diff --git a/cc/layers/tiled_layer.cc b/cc/layers/tiled_layer.cc
index 2507470..d4ec763 100644
--- a/cc/layers/tiled_layer.cc
+++ b/cc/layers/tiled_layer.cc
@@ -686,7 +686,7 @@ void TiledLayer::ResetUpdateState() {
}
namespace {
-gfx::Rect ExpandRectByDelta(const gfx::Rect& rect, gfx::Vector2d delta) {
+gfx::Rect ExpandRectByDelta(const gfx::Rect& rect, const gfx::Vector2d& delta) {
int width = rect.width() + std::abs(delta.x());
int height = rect.height() + std::abs(delta.y());
int x = rect.x() + ((delta.x() < 0) ? delta.x() : 0);