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/layer_tree_host_impl.h" | 5 #include "cc/layer_tree_host_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/debug/trace_event.h" | 10 #include "base/debug/trace_event.h" |
(...skipping 791 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
802 enforceManagedMemoryPolicy(m_managedMemoryPolicy); | 802 enforceManagedMemoryPolicy(m_managedMemoryPolicy); |
803 } else { | 803 } else { |
804 DCHECK(m_proxy->isImplThread()); | 804 DCHECK(m_proxy->isImplThread()); |
805 enforceManagedMemoryPolicy(m_managedMemoryPolicy); | 805 enforceManagedMemoryPolicy(m_managedMemoryPolicy); |
806 } | 806 } |
807 // We always need to commit after changing the memory policy because the new | 807 // We always need to commit after changing the memory policy because the new |
808 // limit can result in more or less content having texture allocated for it. | 808 // limit can result in more or less content having texture allocated for it. |
809 m_client->setNeedsCommitOnImplThread(); | 809 m_client->setNeedsCommitOnImplThread(); |
810 } | 810 } |
811 | 811 |
812 void LayerTreeHostImpl::onVSyncParametersChanged(double monotonicTimebase, doubl
e intervalInSeconds) | 812 void LayerTreeHostImpl::OnVSyncParametersChanged(double monotonicTimebase, doubl
e intervalInSeconds) |
813 { | 813 { |
814 base::TimeTicks timebase = base::TimeTicks::FromInternalValue(monotonicTimeb
ase * base::Time::kMicrosecondsPerSecond); | 814 base::TimeTicks timebase = base::TimeTicks::FromInternalValue(monotonicTimeb
ase * base::Time::kMicrosecondsPerSecond); |
815 base::TimeDelta interval = base::TimeDelta::FromMicroseconds(intervalInSecon
ds * base::Time::kMicrosecondsPerSecond); | 815 base::TimeDelta interval = base::TimeDelta::FromMicroseconds(intervalInSecon
ds * base::Time::kMicrosecondsPerSecond); |
816 m_client->onVSyncParametersChanged(timebase, interval); | 816 m_client->onVSyncParametersChanged(timebase, interval); |
817 } | 817 } |
818 | 818 |
819 void LayerTreeHostImpl::drawLayers(FrameData& frame) | 819 void LayerTreeHostImpl::drawLayers(FrameData& frame) |
820 { | 820 { |
821 TRACE_EVENT0("cc", "LayerTreeHostImpl::drawLayers"); | 821 TRACE_EVENT0("cc", "LayerTreeHostImpl::drawLayers"); |
822 DCHECK(canDraw()); | 822 DCHECK(canDraw()); |
(...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
991 if (m_rootLayerImpl) { | 991 if (m_rootLayerImpl) { |
992 clearRenderSurfaces(); | 992 clearRenderSurfaces(); |
993 sendDidLoseContextRecursive(m_rootLayerImpl.get()); | 993 sendDidLoseContextRecursive(m_rootLayerImpl.get()); |
994 } | 994 } |
995 // Note: order is important here. | 995 // Note: order is important here. |
996 m_renderer.reset(); | 996 m_renderer.reset(); |
997 m_tileManager.reset(); | 997 m_tileManager.reset(); |
998 m_resourceProvider.reset(); | 998 m_resourceProvider.reset(); |
999 m_context.reset(); | 999 m_context.reset(); |
1000 | 1000 |
1001 if (!context->bindToClient(this)) | 1001 if (!context->BindToClient(this)) |
1002 return false; | 1002 return false; |
1003 | 1003 |
1004 scoped_ptr<ResourceProvider> resourceProvider = ResourceProvider::create(con
text.get()); | 1004 scoped_ptr<ResourceProvider> resourceProvider = ResourceProvider::create(con
text.get()); |
1005 if (!resourceProvider) | 1005 if (!resourceProvider) |
1006 return false; | 1006 return false; |
1007 | 1007 |
1008 if (m_settings.implSidePainting) | 1008 if (m_settings.implSidePainting) |
1009 m_tileManager.reset(new TileManager(this, resourceProvider.get())); | 1009 m_tileManager.reset(new TileManager(this, resourceProvider.get())); |
1010 | 1010 |
1011 if (context->context3D()) | 1011 if (context->Context3D()) |
1012 m_renderer = GLRenderer::create(this, resourceProvider.get()); | 1012 m_renderer = GLRenderer::create(this, resourceProvider.get()); |
1013 else if (context->softwareDevice()) | 1013 else if (context->SoftwareDevice()) |
1014 m_renderer = SoftwareRenderer::create(this, resourceProvider.get(), cont
ext->softwareDevice()); | 1014 m_renderer = SoftwareRenderer::create(this, resourceProvider.get(), cont
ext->SoftwareDevice()); |
1015 if (!m_renderer) | 1015 if (!m_renderer) |
1016 return false; | 1016 return false; |
1017 | 1017 |
1018 m_resourceProvider = resourceProvider.Pass(); | 1018 m_resourceProvider = resourceProvider.Pass(); |
1019 m_context = context.Pass(); | 1019 m_context = context.Pass(); |
1020 | 1020 |
1021 if (!m_visible) | 1021 if (!m_visible) |
1022 m_renderer->setVisible(m_visible); | 1022 m_renderer->setVisible(m_visible); |
1023 | 1023 |
1024 m_client->onCanDrawStateChanged(canDraw()); | 1024 m_client->onCanDrawStateChanged(canDraw()); |
(...skipping 606 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1631 ScrollbarAnimationController* scrollbarController = layer->scrollbarAnimatio
nController(); | 1631 ScrollbarAnimationController* scrollbarController = layer->scrollbarAnimatio
nController(); |
1632 double monotonicTime = (time - base::TimeTicks()).InSecondsF(); | 1632 double monotonicTime = (time - base::TimeTicks()).InSecondsF(); |
1633 if (scrollbarController && scrollbarController->animate(monotonicTime)) | 1633 if (scrollbarController && scrollbarController->animate(monotonicTime)) |
1634 m_client->setNeedsRedrawOnImplThread(); | 1634 m_client->setNeedsRedrawOnImplThread(); |
1635 | 1635 |
1636 for (size_t i = 0; i < layer->children().size(); ++i) | 1636 for (size_t i = 0; i < layer->children().size(); ++i) |
1637 animateScrollbarsRecursive(layer->children()[i], time); | 1637 animateScrollbarsRecursive(layer->children()[i], time); |
1638 } | 1638 } |
1639 | 1639 |
1640 } // namespace cc | 1640 } // namespace cc |
OLD | NEW |