| 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 |