OLD | NEW |
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 "cc/trees/thread_proxy.h" | 5 #include "cc/trees/thread_proxy.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 base::Bind(&ThreadProxy::SetLayerTreeHostClientReadyOnImplThread, | 158 base::Bind(&ThreadProxy::SetLayerTreeHostClientReadyOnImplThread, |
159 impl_thread_weak_ptr_)); | 159 impl_thread_weak_ptr_)); |
160 } | 160 } |
161 | 161 |
162 void ThreadProxy::SetLayerTreeHostClientReadyOnImplThread() { | 162 void ThreadProxy::SetLayerTreeHostClientReadyOnImplThread() { |
163 TRACE_EVENT0("cc", "ThreadProxy::SetLayerTreeHostClientReadyOnImplThread"); | 163 TRACE_EVENT0("cc", "ThreadProxy::SetLayerTreeHostClientReadyOnImplThread"); |
164 impl().scheduler->SetCanStart(); | 164 impl().scheduler->SetCanStart(); |
165 } | 165 } |
166 | 166 |
167 void ThreadProxy::SetVisible(bool visible) { | 167 void ThreadProxy::SetVisible(bool visible) { |
168 TRACE_EVENT0("cc", "ThreadProxy::SetVisible"); | 168 TRACE_EVENT1("cc", "ThreadProxy::SetVisible", "visible", visible); |
169 DebugScopedSetMainThreadBlocked main_thread_blocked(this); | 169 DebugScopedSetMainThreadBlocked main_thread_blocked(this); |
170 | 170 |
171 CompletionEvent completion; | 171 CompletionEvent completion; |
172 Proxy::ImplThreadTaskRunner()->PostTask( | 172 Proxy::ImplThreadTaskRunner()->PostTask( |
173 FROM_HERE, | 173 FROM_HERE, |
174 base::Bind(&ThreadProxy::SetVisibleOnImplThread, | 174 base::Bind(&ThreadProxy::SetVisibleOnImplThread, |
175 impl_thread_weak_ptr_, | 175 impl_thread_weak_ptr_, |
176 &completion, | 176 &completion, |
177 visible)); | 177 visible)); |
178 completion.Wait(); | 178 completion.Wait(); |
179 } | 179 } |
180 | 180 |
181 void ThreadProxy::SetVisibleOnImplThread(CompletionEvent* completion, | 181 void ThreadProxy::SetVisibleOnImplThread(CompletionEvent* completion, |
182 bool visible) { | 182 bool visible) { |
183 TRACE_EVENT0("cc", "ThreadProxy::SetVisibleOnImplThread"); | 183 TRACE_EVENT1("cc", "ThreadProxy::SetVisibleOnImplThread", "visible", visible); |
184 impl().layer_tree_host_impl->SetVisible(visible); | 184 impl().layer_tree_host_impl->SetVisible(visible); |
185 impl().scheduler->SetVisible(visible); | 185 impl().scheduler->SetVisible(visible); |
186 completion->Signal(); | 186 completion->Signal(); |
187 } | 187 } |
188 | 188 |
189 void ThreadProxy::DidLoseOutputSurface() { | 189 void ThreadProxy::DidLoseOutputSurface() { |
190 TRACE_EVENT0("cc", "ThreadProxy::DidLoseOutputSurface"); | 190 TRACE_EVENT0("cc", "ThreadProxy::DidLoseOutputSurface"); |
191 DCHECK(IsMainThread()); | 191 DCHECK(IsMainThread()); |
192 layer_tree_host()->DidLoseOutputSurface(); | 192 layer_tree_host()->DidLoseOutputSurface(); |
193 | 193 |
(...skipping 894 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1088 } | 1088 } |
1089 | 1089 |
1090 base::TimeDelta ThreadProxy::CommitToActivateDurationEstimate() { | 1090 base::TimeDelta ThreadProxy::CommitToActivateDurationEstimate() { |
1091 return impl().timing_history.CommitToActivateDurationEstimate(); | 1091 return impl().timing_history.CommitToActivateDurationEstimate(); |
1092 } | 1092 } |
1093 | 1093 |
1094 void ThreadProxy::DidBeginImplFrameDeadline() { | 1094 void ThreadProxy::DidBeginImplFrameDeadline() { |
1095 impl().layer_tree_host_impl->ResetCurrentBeginFrameArgsForNextFrame(); | 1095 impl().layer_tree_host_impl->ResetCurrentBeginFrameArgsForNextFrame(); |
1096 } | 1096 } |
1097 | 1097 |
| 1098 void ThreadProxy::SendBeginFramesToChildren(const BeginFrameArgs& args) { |
| 1099 NOTREACHED() << "Only used by SingleThreadProxy"; |
| 1100 } |
| 1101 |
1098 void ThreadProxy::ReadyToFinalizeTextureUpdates() { | 1102 void ThreadProxy::ReadyToFinalizeTextureUpdates() { |
1099 DCHECK(IsImplThread()); | 1103 DCHECK(IsImplThread()); |
1100 impl().scheduler->NotifyReadyToCommit(); | 1104 impl().scheduler->NotifyReadyToCommit(); |
1101 } | 1105 } |
1102 | 1106 |
1103 void ThreadProxy::DidCommitAndDrawFrame() { | 1107 void ThreadProxy::DidCommitAndDrawFrame() { |
1104 DCHECK(IsMainThread()); | 1108 DCHECK(IsMainThread()); |
1105 layer_tree_host()->DidCommitAndDrawFrame(); | 1109 layer_tree_host()->DidCommitAndDrawFrame(); |
1106 } | 1110 } |
1107 | 1111 |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1243 FROM_HERE, | 1247 FROM_HERE, |
1244 base::Bind(&ThreadProxy::MainFrameWillHappenOnImplThreadForTesting, | 1248 base::Bind(&ThreadProxy::MainFrameWillHappenOnImplThreadForTesting, |
1245 impl_thread_weak_ptr_, | 1249 impl_thread_weak_ptr_, |
1246 &completion, | 1250 &completion, |
1247 &main_frame_will_happen)); | 1251 &main_frame_will_happen)); |
1248 completion.Wait(); | 1252 completion.Wait(); |
1249 } | 1253 } |
1250 return main_frame_will_happen; | 1254 return main_frame_will_happen; |
1251 } | 1255 } |
1252 | 1256 |
| 1257 void ThreadProxy::SetChildrenNeedBeginFrames(bool children_need_begin_frames) { |
| 1258 NOTREACHED() << "Only used by SingleThreadProxy"; |
| 1259 } |
| 1260 |
1253 void ThreadProxy::MainFrameWillHappenOnImplThreadForTesting( | 1261 void ThreadProxy::MainFrameWillHappenOnImplThreadForTesting( |
1254 CompletionEvent* completion, | 1262 CompletionEvent* completion, |
1255 bool* main_frame_will_happen) { | 1263 bool* main_frame_will_happen) { |
1256 DCHECK(IsImplThread()); | 1264 DCHECK(IsImplThread()); |
1257 if (impl().layer_tree_host_impl->output_surface()) { | 1265 if (impl().layer_tree_host_impl->output_surface()) { |
1258 *main_frame_will_happen = impl().scheduler->MainFrameForTestingWillHappen(); | 1266 *main_frame_will_happen = impl().scheduler->MainFrameForTestingWillHappen(); |
1259 } else { | 1267 } else { |
1260 *main_frame_will_happen = false; | 1268 *main_frame_will_happen = false; |
1261 } | 1269 } |
1262 completion->Signal(); | 1270 completion->Signal(); |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1333 | 1341 |
1334 impl().timing_history.DidActivateSyncTree(); | 1342 impl().timing_history.DidActivateSyncTree(); |
1335 } | 1343 } |
1336 | 1344 |
1337 void ThreadProxy::DidManageTiles() { | 1345 void ThreadProxy::DidManageTiles() { |
1338 DCHECK(IsImplThread()); | 1346 DCHECK(IsImplThread()); |
1339 impl().scheduler->DidManageTiles(); | 1347 impl().scheduler->DidManageTiles(); |
1340 } | 1348 } |
1341 | 1349 |
1342 } // namespace cc | 1350 } // namespace cc |
OLD | NEW |