OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/layer_tree_host.h" | 5 #include "cc/trees/layer_tree_host.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "cc/layers/delegated_renderer_layer.h" | 10 #include "cc/layers/delegated_renderer_layer.h" |
(...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 | 286 |
287 virtual void DidActivateTreeOnThread(LayerTreeHostImpl* host_impl) OVERRIDE { | 287 virtual void DidActivateTreeOnThread(LayerTreeHostImpl* host_impl) OVERRIDE { |
288 LayerImpl* root_impl = host_impl->active_tree()->root_layer(); | 288 LayerImpl* root_impl = host_impl->active_tree()->root_layer(); |
289 FakeDelegatedRendererLayerImpl* delegated_impl = | 289 FakeDelegatedRendererLayerImpl* delegated_impl = |
290 static_cast<FakeDelegatedRendererLayerImpl*>(root_impl->children()[0]); | 290 static_cast<FakeDelegatedRendererLayerImpl*>(root_impl->children()[0]); |
291 | 291 |
292 ContextProvider* context_provider = | 292 ContextProvider* context_provider = |
293 host_impl->output_surface()->context_provider(); | 293 host_impl->output_surface()->context_provider(); |
294 | 294 |
295 ++num_activates_; | 295 ++num_activates_; |
296 switch (num_activates_) { | 296 if (num_activates_ == 2) { |
297 case 2: | 297 EXPECT_TRUE(delegated_impl->ChildId()); |
298 EXPECT_TRUE(delegated_impl->ChildId()); | 298 EXPECT_FALSE(did_reset_child_id_); |
299 EXPECT_FALSE(did_reset_child_id_); | 299 context_provider->Context3d()->loseContextCHROMIUM( |
300 | 300 GL_GUILTY_CONTEXT_RESET_ARB, |
301 context_provider->Context3d()->loseContextCHROMIUM( | 301 GL_INNOCENT_CONTEXT_RESET_ARB); |
302 GL_GUILTY_CONTEXT_RESET_ARB, | 302 } else if (did_reset_child_id_) { |
303 GL_INNOCENT_CONTEXT_RESET_ARB); | 303 EXPECT_TRUE(delegated_impl->ChildId()); |
304 break; | 304 EndTest(); |
305 case 3: | |
306 EXPECT_TRUE(delegated_impl->ChildId()); | |
307 EXPECT_TRUE(did_reset_child_id_); | |
308 EndTest(); | |
309 break; | |
310 } | 305 } |
311 } | 306 } |
312 | 307 |
313 virtual void InitializedRendererOnThread(LayerTreeHostImpl* host_impl, | 308 virtual void InitializedRendererOnThread(LayerTreeHostImpl* host_impl, |
314 bool success) OVERRIDE { | 309 bool success) OVERRIDE { |
315 EXPECT_TRUE(success); | 310 EXPECT_TRUE(success); |
316 | 311 |
317 if (num_activates_ < 2) | 312 if (num_activates_ < 2) |
318 return; | 313 return; |
319 | 314 |
320 LayerImpl* root_impl = host_impl->active_tree()->root_layer(); | 315 LayerImpl* root_impl = host_impl->active_tree()->root_layer(); |
321 FakeDelegatedRendererLayerImpl* delegated_impl = | 316 FakeDelegatedRendererLayerImpl* delegated_impl = |
322 static_cast<FakeDelegatedRendererLayerImpl*>(root_impl->children()[0]); | 317 static_cast<FakeDelegatedRendererLayerImpl*>(root_impl->children()[0]); |
323 | 318 |
324 EXPECT_EQ(2, num_activates_); | 319 EXPECT_LE(2, num_activates_); |
325 EXPECT_FALSE(delegated_impl->ChildId()); | 320 EXPECT_FALSE(delegated_impl->ChildId()); |
326 did_reset_child_id_ = true; | 321 did_reset_child_id_ = true; |
327 } | 322 } |
328 | 323 |
329 virtual void AfterTest() OVERRIDE {} | 324 virtual void AfterTest() OVERRIDE {} |
330 | 325 |
331 protected: | 326 protected: |
332 int num_activates_; | 327 int num_activates_; |
333 bool did_reset_child_id_; | 328 bool did_reset_child_id_; |
334 }; | 329 }; |
(...skipping 1242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1577 } | 1572 } |
1578 } | 1573 } |
1579 | 1574 |
1580 virtual void AfterTest() OVERRIDE {} | 1575 virtual void AfterTest() OVERRIDE {} |
1581 }; | 1576 }; |
1582 | 1577 |
1583 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostDelegatedTestCommitWithoutTake); | 1578 SINGLE_AND_MULTI_THREAD_TEST_F(LayerTreeHostDelegatedTestCommitWithoutTake); |
1584 | 1579 |
1585 } // namespace | 1580 } // namespace |
1586 } // namespace cc | 1581 } // namespace cc |
OLD | NEW |