layer_owner.cc revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
1// Copyright (c) 2012 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 "ui/compositor/layer_owner.h" 6 7namespace ui { 8 9LayerOwner::LayerOwner() : layer_(NULL) { 10} 11 12LayerOwner::~LayerOwner() { 13} 14 15void LayerOwner::SetLayer(Layer* layer) { 16 DCHECK(!OwnsLayer()); 17 layer_owner_.reset(layer); 18 layer_ = layer; 19 layer_->owner_ = this; 20} 21 22Layer* LayerOwner::AcquireLayer() { 23 return layer_owner_.release(); 24} 25 26scoped_ptr<Layer> LayerOwner::RecreateLayer() { 27 return scoped_ptr<ui::Layer>(); 28} 29 30void LayerOwner::DestroyLayer() { 31 layer_ = NULL; 32 layer_owner_.reset(); 33} 34 35bool LayerOwner::OwnsLayer() const { 36 return !!layer_owner_; 37} 38 39} // namespace ui 40