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

Unified Diff: cc/layers/layer_impl.cc

Issue 20994007: Add impl/comp scrolling instrumentation. (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 side-by-side diff with in-line comments
Download patch
Index: cc/layers/layer_impl.cc
diff --git a/cc/layers/layer_impl.cc b/cc/layers/layer_impl.cc
index 4865fe2bd2c4376e93b9248ac1f6e0bdb37a0780..6f60f3cfa8ad79ac0730c9515d4ba526567897d5 100644
--- a/cc/layers/layer_impl.cc
+++ b/cc/layers/layer_impl.cc
@@ -254,10 +254,19 @@ void LayerImpl::SetSentScrollDelta(gfx::Vector2d sent_scroll_delta) {
if (sent_scroll_delta_ == sent_scroll_delta)
return;
+ TRACE_EVENT2("impl-scroll",
+ "LayerImpl::SetSentScrollDelta",
+ "scrollX", sent_scroll_delta.x(),
danakj 2013/07/29 17:16:08 scroll_x?
+ "scrollY", sent_scroll_delta.y());
danakj 2013/07/29 17:16:08 scroll_y?
+
sent_scroll_delta_ = sent_scroll_delta;
}
gfx::Vector2dF LayerImpl::ScrollBy(gfx::Vector2dF scroll) {
+ TRACE_EVENT2("impl-scroll",
+ "LayerImpl::ScrollBy",
+ "scrollX", scroll.x(),
danakj 2013/07/29 17:16:08 same. consider making a base::Value containing th
enne (OOO) 2013/07/29 17:46:31 Even better, add a MathUtil::AsValue for gfx::Vect
+ "scrollY", scroll.y());
gfx::Vector2dF min_delta = -scroll_offset_;
gfx::Vector2dF max_delta = max_scroll_offset_ - scroll_offset_;
// Clamp new_delta so that position + delta stays within scroll bounds.
@@ -274,12 +283,16 @@ InputHandler::ScrollStatus LayerImpl::TryScroll(
gfx::PointF screen_space_point,
InputHandler::ScrollInputType type) const {
if (should_scroll_on_main_thread()) {
- TRACE_EVENT0("cc", "LayerImpl::TryScroll: Failed ShouldScrollOnMainThread");
+ TRACE_EVENT_INSTANT0("cc,impl-scroll",
danakj 2013/07/29 17:16:08 Should we drop these from the "cc" category then?
+ "LayerImpl::TryScroll: Failed ShouldScrollOnMainThread",
+ TRACE_EVENT_SCOPE_THREAD);
return InputHandler::ScrollOnMainThread;
}
if (!screen_space_transform().IsInvertible()) {
- TRACE_EVENT0("cc", "LayerImpl::TryScroll: Ignored NonInvertibleTransform");
+ TRACE_EVENT_INSTANT0("cc,impl-scroll",
danakj 2013/07/29 17:16:08 i think "impl" as a name is something to avoid and
enne (OOO) 2013/07/29 17:46:31 Do you think there'll ever be a blink scrolling tr
+ "LayerImpl::TryScroll: Ignored NonInvertibleTransform",
+ TRACE_EVENT_SCOPE_THREAD);
return InputHandler::ScrollIgnored;
}
@@ -304,29 +317,40 @@ InputHandler::ScrollStatus LayerImpl::TryScroll(
if (!clipped &&
non_fast_scrollable_region().Contains(
gfx::ToRoundedPoint(hit_test_point_in_layer_space))) {
- TRACE_EVENT0("cc",
- "LayerImpl::tryScroll: Failed NonFastScrollableRegion");
+ TRACE_EVENT_INSTANT0("cc,impl-scroll",
+ "LayerImpl::TryScroll: Failed NonFastScrollableRegion",
+ TRACE_EVENT_SCOPE_THREAD);
return InputHandler::ScrollOnMainThread;
}
}
if (type == InputHandler::Wheel && have_wheel_event_handlers()) {
- TRACE_EVENT0("cc", "LayerImpl::tryScroll: Failed WheelEventHandlers");
+ TRACE_EVENT_INSTANT0("cc,impl-scroll",
+ "LayerImpl::TryScroll: Failed WheelEventHandlers",
+ TRACE_EVENT_SCOPE_THREAD);
return InputHandler::ScrollOnMainThread;
}
if (!scrollable()) {
- TRACE_EVENT0("cc", "LayerImpl::tryScroll: Ignored not scrollable");
+ TRACE_EVENT_INSTANT0("cc,impl-scroll",
+ "LayerImpl::TryScroll: Ignored not scrollable",
+ TRACE_EVENT_SCOPE_THREAD);
return InputHandler::ScrollIgnored;
}
if (max_scroll_offset_.x() <= 0 && max_scroll_offset_.y() <= 0) {
- TRACE_EVENT0("cc",
- "LayerImpl::tryScroll: Ignored. Technically scrollable,"
- " but has no affordance in either direction.");
+ TRACE_EVENT_INSTANT0("cc,impl-scroll",
+ "LayerImpl::TryScroll: Ignored. Technically scrollable,"
+ " but has no affordance in either direction.",
+ TRACE_EVENT_SCOPE_THREAD);
return InputHandler::ScrollIgnored;
}
+ TRACE_EVENT_INSTANT1("cc,impl-scroll",
+ "LayerImpl::TryScroll: Started",
+ TRACE_EVENT_SCOPE_THREAD,
+ "layerId", id());
danakj 2013/07/29 17:16:08 layer_id?
+
return InputHandler::ScrollStarted;
}
@@ -874,6 +898,11 @@ void LayerImpl::SetScrollDelta(gfx::Vector2dF scroll_delta) {
if (ScrollDelta() == scroll_delta)
return;
+ TRACE_EVENT2("impl-scroll",
+ "LayerImpl::SetScrollDelta",
+ "scroll_delta.x", scroll_delta.x(),
+ "scroll_delta.y", scroll_delta.y());
+
if (layer_tree_impl()->IsActiveTree()) {
LayerImpl* pending_twin = layer_tree_impl()->FindPendingTreeLayerById(id());
if (pending_twin) {
@@ -1106,6 +1135,9 @@ void LayerImpl::AsValueInto(base::DictionaryValue* state) const {
&clipped);
state->Set("layer_quad", MathUtil::AsValue(layer_quad).release());
+#ifndef NDEBUG
danakj 2013/07/29 17:16:08 Why only in not NDEBUG?
enne (OOO) 2013/07/29 17:46:31 Layers only get their names set in debug builds.
+ state->SetString("debug_name", debug_name_);
+#endif
scoped_ptr<base::ListValue> children_list(new base::ListValue());
for (size_t i = 0; i < children_.size(); ++i)
« no previous file with comments | « cc/layers/layer.cc ('k') | cc/trees/layer_tree_host.cc » ('j') | cc/trees/layer_tree_host.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698