Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "platform/graphics/CompositorMutableStateProvider.h" | |
| 6 | |
| 7 #include "cc/layers/layer_impl.h" | |
| 8 #include "cc/trees/layer_tree_impl.h" | |
| 9 #include "platform/graphics/CompositorMutableState.h" | |
| 10 #include "platform/graphics/CompositorMutation.h" | |
| 11 #include "wtf/PassOwnPtr.h" | |
| 12 | |
| 13 namespace blink { | |
| 14 | |
| 15 CompositorMutableStateProvider::CompositorMutableStateProvider(cc::LayerTreeImpl * state, CompositorMutations* mutations) | |
| 16 : m_state(state) | |
| 17 , m_mutations(mutations) | |
| 18 { | |
| 19 } | |
| 20 | |
| 21 CompositorMutableStateProvider::~CompositorMutableStateProvider() {} | |
| 22 | |
| 23 PassOwnPtr<CompositorMutableState> | |
| 24 CompositorMutableStateProvider::getMutableStateFor(uint64_t element_id) | |
| 25 { | |
| 26 cc::LayerTreeImpl::ElementLayers layers = m_state->GetMutableLayers(element_ id); | |
| 27 | |
| 28 if (!layers.main && !layers.scroll) | |
| 29 return nullptr; | |
| 30 | |
| 31 return adoptPtr(new CompositorMutableState(&m_mutations->map.find(element_id )->value, layers.main, layers.scroll)); | |
|
jbroman
2016/01/18 21:40:26
One caveat here: IIUC std::map guarantees that ite
Ian Vollick
2016/01/18 21:56:40
Ah, right. No, this is a problem. I've gone back t
Ian Vollick
2016/01/19 14:49:30
I remembered that Elliott had already suggested th
| |
| 32 } | |
| 33 | |
| 34 } // namespace blink | |
| OLD | NEW |