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 3// found in the LICENSE file. 4 5#ifndef UI_WM_CORE_TRANSIENT_WINDOW_CONTROLLER_H_ 6#define UI_WM_CORE_TRANSIENT_WINDOW_CONTROLLER_H_ 7 8#include "ui/wm/public/transient_window_client.h" 9#include "ui/wm/wm_export.h" 10 11namespace wm { 12 13// TransientWindowClient implementation. Uses TransientWindowManager to handle 14// tracking transient per window. 15class WM_EXPORT TransientWindowController 16 : public aura::client::TransientWindowClient { 17 public: 18 TransientWindowController(); 19 virtual ~TransientWindowController(); 20 21 // TransientWindowClient: 22 virtual void AddTransientChild(aura::Window* parent, 23 aura::Window* child) OVERRIDE; 24 virtual void RemoveTransientChild(aura::Window* parent, 25 aura::Window* child) OVERRIDE; 26 virtual aura::Window* GetTransientParent(aura::Window* window) OVERRIDE; 27 virtual const aura::Window* GetTransientParent( 28 const aura::Window* window) OVERRIDE; 29 30 private: 31 DISALLOW_COPY_AND_ASSIGN(TransientWindowController); 32}; 33 34} // namespace wm 35 36#endif // UI_WM_CORE_TRANSIENT_WINDOW_CONTROLLER_H_ 37