Index: cc/base/latency_info_swap_promise_monitor.cc |
diff --git a/cc/base/latency_info_swap_promise_monitor.cc b/cc/base/latency_info_swap_promise_monitor.cc |
index 0f2ff7481bb33f86393d754e8fb149d29fdd2b01..f56c81964ee897c27bcd313fa5680b5ba74319ea 100644 |
--- a/cc/base/latency_info_swap_promise_monitor.cc |
+++ b/cc/base/latency_info_swap_promise_monitor.cc |
@@ -9,6 +9,19 @@ |
#include "cc/trees/layer_tree_host_impl.h" |
#include "cc/trees/layer_tree_impl.h" |
+namespace { |
+ |
+bool AddRenderingScheduledComponent(ui::LatencyInfo* latency_info) { |
+ if (latency_info->FindLatency( |
+ ui::INPUT_EVENT_LATENCY_RENDERING_SCHEDULED_COMPONENT, 0, 0)) |
+ return false; |
+ latency_info->AddLatencyNumber( |
+ ui::INPUT_EVENT_LATENCY_RENDERING_SCHEDULED_COMPONENT, 0, 0); |
+ return true; |
+} |
+ |
+} // namespace |
+ |
namespace cc { |
LatencyInfoSwapPromiseMonitor::LatencyInfoSwapPromiseMonitor( |
@@ -21,23 +34,22 @@ LatencyInfoSwapPromiseMonitor::LatencyInfoSwapPromiseMonitor( |
LatencyInfoSwapPromiseMonitor::~LatencyInfoSwapPromiseMonitor() {} |
void LatencyInfoSwapPromiseMonitor::OnSetNeedsCommitOnMain() { |
- if (!latency_->FindLatency( |
- ui::INPUT_EVENT_LATENCY_RENDERING_SCHEDULED_COMPONENT, 0, 0)) { |
- latency_->AddLatencyNumber( |
- ui::INPUT_EVENT_LATENCY_RENDERING_SCHEDULED_COMPONENT, 0, 0); |
+ if (AddRenderingScheduledComponent(latency_)) { |
scoped_ptr<SwapPromise> swap_promise(new LatencyInfoSwapPromise(*latency_)); |
layer_tree_host_->QueueSwapPromise(swap_promise.Pass()); |
} |
} |
void LatencyInfoSwapPromiseMonitor::OnSetNeedsRedrawOnImpl() { |
- if (!latency_->FindLatency( |
- ui::INPUT_EVENT_LATENCY_RENDERING_SCHEDULED_COMPONENT, 0, 0)) { |
- latency_->AddLatencyNumber( |
- ui::INPUT_EVENT_LATENCY_RENDERING_SCHEDULED_COMPONENT, 0, 0); |
+ if (AddRenderingScheduledComponent(latency_)) { |
scoped_ptr<SwapPromise> swap_promise(new LatencyInfoSwapPromise(*latency_)); |
layer_tree_host_impl_->active_tree()->QueueSwapPromise(swap_promise.Pass()); |
} |
} |
+void LatencyInfoSwapPromiseMonitor::OnForwardScrollUpdateToMainThreadOnImpl() { |
+ if (AddRenderingScheduledComponent(latency_)) |
+ layer_tree_host_impl_->QueueScrollUpdateLatencyInfo(*latency_); |
danakj
2014/07/08 16:49:07
Why doesn't this make a SwapPromise and queue that
Sami
2014/07/09 13:28:55
Initially I avoided that because otherwise it got
|
+} |
+ |
} // namespace cc |