OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "platform/graphics/compositing/PaintArtifactCompositor.h" | 5 #include "platform/graphics/compositing/PaintArtifactCompositor.h" |
6 | 6 |
7 #include "cc/layers/content_layer_client.h" | 7 #include "cc/layers/content_layer_client.h" |
8 #include "cc/layers/layer.h" | 8 #include "cc/layers/layer.h" |
9 #include "cc/layers/picture_layer.h" | 9 #include "cc/layers/picture_layer.h" |
10 #include "cc/playback/display_item_list.h" | 10 #include "cc/playback/display_item_list.h" |
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
408 transformTree().SetContentTargetId(id, kRealRootNodeId); | 408 transformTree().SetContentTargetId(id, kRealRootNodeId); |
409 compositorNode.source_node_id = parentId; | 409 compositorNode.source_node_id = parentId; |
410 | 410 |
411 FloatPoint3D origin = transformNode->origin(); | 411 FloatPoint3D origin = transformNode->origin(); |
412 compositorNode.pre_local.matrix().setTranslate( | 412 compositorNode.pre_local.matrix().setTranslate( |
413 -origin.x(), -origin.y(), -origin.z()); | 413 -origin.x(), -origin.y(), -origin.z()); |
414 compositorNode.local.matrix() = TransformationMatrix::toSkMatrix44(transform
Node->matrix()); | 414 compositorNode.local.matrix() = TransformationMatrix::toSkMatrix44(transform
Node->matrix()); |
415 compositorNode.post_local.matrix().setTranslate( | 415 compositorNode.post_local.matrix().setTranslate( |
416 origin.x(), origin.y(), origin.z()); | 416 origin.x(), origin.y(), origin.z()); |
417 compositorNode.needs_local_transform_update = true; | 417 compositorNode.needs_local_transform_update = true; |
| 418 compositorNode.flattens_inherited_transform = transformNode->flattensInherit
edTransform(); |
| 419 compositorNode.sorting_context_id = transformNode->renderingContextID(); |
418 | 420 |
419 m_rootLayer->AddChild(dummyLayer); | 421 m_rootLayer->AddChild(dummyLayer); |
420 dummyLayer->SetTransformTreeIndex(id); | 422 dummyLayer->SetTransformTreeIndex(id); |
421 dummyLayer->SetClipTreeIndex(kSecondaryRootNodeId); | 423 dummyLayer->SetClipTreeIndex(kSecondaryRootNodeId); |
422 dummyLayer->SetEffectTreeIndex(kSecondaryRootNodeId); | 424 dummyLayer->SetEffectTreeIndex(kSecondaryRootNodeId); |
423 dummyLayer->SetScrollTreeIndex(kRealRootNodeId); | 425 dummyLayer->SetScrollTreeIndex(kRealRootNodeId); |
424 dummyLayer->set_property_tree_sequence_number(kPropertyTreeSequenceNumber); | 426 dummyLayer->set_property_tree_sequence_number(kPropertyTreeSequenceNumber); |
425 | 427 |
426 auto result = m_transformNodeMap.set(transformNode, id); | 428 auto result = m_transformNodeMap.set(transformNode, id); |
427 DCHECK(result.isNewEntry); | 429 DCHECK(result.isNewEntry); |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
578 | 580 |
579 layer->set_offset_to_transform_parent(layerOffset); | 581 layer->set_offset_to_transform_parent(layerOffset); |
580 | 582 |
581 m_rootLayer->AddChild(layer); | 583 m_rootLayer->AddChild(layer); |
582 layer->set_property_tree_sequence_number(kPropertyTreeSequenceNumber); | 584 layer->set_property_tree_sequence_number(kPropertyTreeSequenceNumber); |
583 layer->SetTransformTreeIndex(transformId); | 585 layer->SetTransformTreeIndex(transformId); |
584 layer->SetClipTreeIndex(clipId); | 586 layer->SetClipTreeIndex(clipId); |
585 layer->SetEffectTreeIndex(effectId); | 587 layer->SetEffectTreeIndex(effectId); |
586 layer->SetScrollTreeIndex(kRealRootNodeId); | 588 layer->SetScrollTreeIndex(kRealRootNodeId); |
587 | 589 |
| 590 // TODO(jbroman): This probably shouldn't be necessary, but it is still |
| 591 // queried by RenderSurfaceImpl. |
| 592 layer->Set3dSortingContextId(host->property_trees()->transform_tree.Node
(transformId)->sorting_context_id); |
| 593 |
588 if (m_extraDataForTestingEnabled) | 594 if (m_extraDataForTestingEnabled) |
589 m_extraDataForTesting->contentLayers.append(layer); | 595 m_extraDataForTesting->contentLayers.append(layer); |
590 } | 596 } |
591 | 597 |
592 // Mark the property trees as having been rebuilt. | 598 // Mark the property trees as having been rebuilt. |
593 host->property_trees()->sequence_number = kPropertyTreeSequenceNumber; | 599 host->property_trees()->sequence_number = kPropertyTreeSequenceNumber; |
594 host->property_trees()->needs_rebuild = false; | 600 host->property_trees()->needs_rebuild = false; |
595 } | 601 } |
596 | 602 |
597 } // namespace blink | 603 } // namespace blink |
OLD | NEW |