| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/view_manager/server_view.h" | 5 #include "components/view_manager/server_view.h" |
| 6 | 6 |
| 7 #include <inttypes.h> | 7 #include <inttypes.h> |
| 8 | 8 |
| 9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
| 10 #include "components/view_manager/server_view_delegate.h" | 10 #include "components/view_manager/server_view_delegate.h" |
| 11 #include "components/view_manager/server_view_observer.h" | 11 #include "components/view_manager/server_view_observer.h" |
| 12 | 12 |
| 13 namespace view_manager { | 13 namespace view_manager { |
| 14 | 14 |
| 15 ServerView::ServerView(ServerViewDelegate* delegate, const ViewId& id) | 15 ServerView::ServerView(ServerViewDelegate* delegate, const ViewId& id) |
| 16 : delegate_(delegate), | 16 : delegate_(delegate), |
| 17 id_(id), | 17 id_(id), |
| 18 parent_(nullptr), | 18 parent_(nullptr), |
| 19 visible_(false), | 19 visible_(false), |
| 20 opacity_(1), | 20 opacity_(1), |
| 21 // Don't notify newly added observers during notification. This causes | 21 // Don't notify newly added observers during notification. This causes |
| 22 // problems for code that adds an observer as part of an observer | 22 // problems for code that adds an observer as part of an observer |
| 23 // notification (such as ServerViewDrawTracker). | 23 // notification (such as ServerViewDrawTracker). |
| 24 observers_(ObserverList<ServerViewObserver>::NOTIFY_EXISTING_ONLY) { | 24 observers_(base::ObserverList<ServerViewObserver>::NOTIFY_EXISTING_ONLY) { |
| 25 DCHECK(delegate); // Must provide a delegate. | 25 DCHECK(delegate); // Must provide a delegate. |
| 26 } | 26 } |
| 27 | 27 |
| 28 ServerView::~ServerView() { | 28 ServerView::~ServerView() { |
| 29 delegate_->PrepareToDestroyView(this); | 29 delegate_->PrepareToDestroyView(this); |
| 30 FOR_EACH_OBSERVER(ServerViewObserver, observers_, OnWillDestroyView(this)); | 30 FOR_EACH_OBSERVER(ServerViewObserver, observers_, OnWillDestroyView(this)); |
| 31 | 31 |
| 32 while (!children_.empty()) | 32 while (!children_.empty()) |
| 33 children_.front()->parent()->Remove(children_.front()); | 33 children_.front()->parent()->Remove(children_.front()); |
| 34 | 34 |
| (...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 225 child->BuildDebugInfo(depth + " ", result); | 225 child->BuildDebugInfo(depth + " ", result); |
| 226 } | 226 } |
| 227 #endif | 227 #endif |
| 228 | 228 |
| 229 void ServerView::RemoveImpl(ServerView* view) { | 229 void ServerView::RemoveImpl(ServerView* view) { |
| 230 view->parent_ = NULL; | 230 view->parent_ = NULL; |
| 231 children_.erase(std::find(children_.begin(), children_.end(), view)); | 231 children_.erase(std::find(children_.begin(), children_.end(), view)); |
| 232 } | 232 } |
| 233 | 233 |
| 234 } // namespace view_manager | 234 } // namespace view_manager |
| OLD | NEW |