146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// found in the LICENSE file. 446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "ui/aura/window_observer.h" 646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "base/logging.h" 846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "ui/aura/window.h" 946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 1046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)namespace aura { 1146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 1246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)WindowObserver::WindowObserver() : observing_(0) { 1346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 1446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 1546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)WindowObserver::~WindowObserver() { 1646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) // TODO(flackr): Remove this check and observing_ counter when the cause of 1746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) // http://crbug.com/365364 is discovered. 1846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) CHECK_EQ(0, observing_); 1946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 2046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 2146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void WindowObserver::OnObservingWindow(aura::Window* window) { 2246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) if (!window->HasObserver(this)) 2346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) observing_++; 2446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 2546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 2646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)void WindowObserver::OnUnobservingWindow(aura::Window* window) { 2746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) if (window->HasObserver(this)) 2846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) observing_--; 2946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} 3046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles) 3146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)} // namespace aura 32