144d362409d5469aed47d19e7908d19bd194493aThomas Graf// Copyright (c) 2013 The Chromium Authors. All rights reserved. 244d362409d5469aed47d19e7908d19bd194493aThomas Graf// Use of this source code is governed by a BSD-style license that can be 344d362409d5469aed47d19e7908d19bd194493aThomas Graf// found in the LICENSE file. 444d362409d5469aed47d19e7908d19bd194493aThomas Graf 544d362409d5469aed47d19e7908d19bd194493aThomas Graf#ifndef UI_WM_CORE_TRANSIENT_WINDOW_STACKING_CLIENT_H_ 644d362409d5469aed47d19e7908d19bd194493aThomas Graf#define UI_WM_CORE_TRANSIENT_WINDOW_STACKING_CLIENT_H_ 744d362409d5469aed47d19e7908d19bd194493aThomas Graf 844d362409d5469aed47d19e7908d19bd194493aThomas Graf#include "ui/aura/client/window_stacking_client.h" 98808743839b0f459394ecd00cb0f7c1896c0ab7aThomas Graf#include "ui/wm/wm_export.h" 1044d362409d5469aed47d19e7908d19bd194493aThomas Graf 1144d362409d5469aed47d19e7908d19bd194493aThomas Grafnamespace wm { 128808743839b0f459394ecd00cb0f7c1896c0ab7aThomas Graf 1344d362409d5469aed47d19e7908d19bd194493aThomas Grafclass TransientWindowManager; 1444d362409d5469aed47d19e7908d19bd194493aThomas Graf 1544d362409d5469aed47d19e7908d19bd194493aThomas Grafclass WM_EXPORT TransientWindowStackingClient 1644d362409d5469aed47d19e7908d19bd194493aThomas Graf : public aura::client::WindowStackingClient { 1744d362409d5469aed47d19e7908d19bd194493aThomas Graf public: 1844d362409d5469aed47d19e7908d19bd194493aThomas Graf TransientWindowStackingClient(); 1944d362409d5469aed47d19e7908d19bd194493aThomas Graf virtual ~TransientWindowStackingClient(); 2044d362409d5469aed47d19e7908d19bd194493aThomas Graf 2144d362409d5469aed47d19e7908d19bd194493aThomas Graf // WindowStackingClient: 2244d362409d5469aed47d19e7908d19bd194493aThomas Graf virtual bool AdjustStacking(aura::Window** child, 2344d362409d5469aed47d19e7908d19bd194493aThomas Graf aura::Window** target, 2444d362409d5469aed47d19e7908d19bd194493aThomas Graf aura::Window::StackDirection* direction) OVERRIDE; 2544d362409d5469aed47d19e7908d19bd194493aThomas Graf 2644d362409d5469aed47d19e7908d19bd194493aThomas Graf private: 2744d362409d5469aed47d19e7908d19bd194493aThomas Graf // Purely for DCHECKs. 28b624b9ed936f4c23bc4f30d8dce34da49775dd15Thomas Graf friend class TransientWindowManager; 2944d362409d5469aed47d19e7908d19bd194493aThomas Graf 3044d362409d5469aed47d19e7908d19bd194493aThomas Graf static TransientWindowStackingClient* instance_; 3144d362409d5469aed47d19e7908d19bd194493aThomas Graf 3244d362409d5469aed47d19e7908d19bd194493aThomas Graf DISALLOW_COPY_AND_ASSIGN(TransientWindowStackingClient); 3344d362409d5469aed47d19e7908d19bd194493aThomas Graf}; 34d84430702496f617c01c5e2d27d0e82e02390bb7Thomas Graf 3544d362409d5469aed47d19e7908d19bd194493aThomas Graf} // namespace wm 3644d362409d5469aed47d19e7908d19bd194493aThomas Graf 3744d362409d5469aed47d19e7908d19bd194493aThomas Graf#endif // UI_WM_CORE_TRANSIENT_WINDOW_STACKING_CLIENT_H_ 3844d362409d5469aed47d19e7908d19bd194493aThomas Graf