| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef ASH_WM_TOP_LEVEL_WINDOW_FACTORY_H_ |
| #define ASH_WM_TOP_LEVEL_WINDOW_FACTORY_H_ |
| |
| #include <stdint.h> |
| |
| #include <map> |
| #include <string> |
| #include <vector> |
| |
| #include "ash/ash_export.h" |
| |
| namespace aura { |
| class PropertyConverter; |
| class Window; |
| } |
| |
| namespace ws { |
| namespace mojom { |
| enum class WindowType; |
| } |
| class TopLevelProxyWindow; |
| } // namespace ws |
| |
| namespace ash { |
| |
| // Creates and parents a new top-level window and returns it. The returned |
| // aura::Window is owned by its parent. A value of null is returned if invalid |
| // poarameters are supplied. |
| ASH_EXPORT aura::Window* CreateAndParentTopLevelWindow( |
| ws::TopLevelProxyWindow* top_level_proxy_window, |
| ws::mojom::WindowType window_type, |
| aura::PropertyConverter* property_converter, |
| std::map<std::string, std::vector<uint8_t>>* properties); |
| |
| } // namespace ash |
| |
| #endif // ASH_WM_TOP_LEVEL_WINDOW_FACTORY_H_ |