1// Copyright (c) 2013 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_STACKING_CLIENT_H_ 6#define UI_WM_CORE_TRANSIENT_WINDOW_STACKING_CLIENT_H_ 7 8#include "ui/aura/client/window_stacking_client.h" 9#include "ui/wm/wm_export.h" 10 11namespace wm { 12 13class TransientWindowManager; 14 15class WM_EXPORT TransientWindowStackingClient 16 : public aura::client::WindowStackingClient { 17 public: 18 TransientWindowStackingClient(); 19 virtual ~TransientWindowStackingClient(); 20 21 // WindowStackingClient: 22 virtual bool AdjustStacking(aura::Window** child, 23 aura::Window** target, 24 aura::Window::StackDirection* direction) OVERRIDE; 25 26 private: 27 // Purely for DCHECKs. 28 friend class TransientWindowManager; 29 30 static TransientWindowStackingClient* instance_; 31 32 DISALLOW_COPY_AND_ASSIGN(TransientWindowStackingClient); 33}; 34 35} // namespace wm 36 37#endif // UI_WM_CORE_TRANSIENT_WINDOW_STACKING_CLIENT_H_ 38