| // Copyright 2016 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 UI_AURA_MUS_MUS_TYPES_H_ |
| #define UI_AURA_MUS_MUS_TYPES_H_ |
| |
| #include <stdint.h> |
| |
| // Typedefs for the transport types. These typedefs match that of the mojom |
| // file, see it for specifics. |
| |
| namespace aura { |
| |
| // Used to identify windows and change ids. |
| using Id = uint32_t; |
| |
| // Used to identify a client as well as a client-specific window id. For |
| // example, the Id for a window consists of the ClientSpecificId of the client |
| // and the ClientSpecificId of the window. |
| using ClientSpecificId = uint16_t; |
| |
| constexpr Id kInvalidServerId = 0; |
| |
| enum class WindowMusType { |
| // The window is an embed root. That is, the client received this window by |
| // way of another client calling Embed(). |
| // NOTE: in the client that called Embed() the window type is LOCAL. |
| EMBED, |
| |
| // The window is an embedded client in an owner client. |
| EMBED_IN_OWNER, |
| |
| // The window was created by requesting a top level |
| // (WindowTree::NewTopLevel()). |
| // NOTE: in the window manager (the one responsible for actually creating the |
| // real window) the window is of type TOP_LEVEL_IN_WM. |
| TOP_LEVEL, |
| |
| // The window is a top level window in the window manager. |
| TOP_LEVEL_IN_WM, |
| |
| // The window is a display root for the window manager and was automatically |
| // created by mus. |
| DISPLAY_AUTOMATICALLY_CREATED, |
| |
| // The window is a display root for the window manager and was manually |
| // created. |
| DISPLAY_MANUALLY_CREATED, |
| |
| // The window was created locally. |
| LOCAL, |
| |
| // Not one of the above. This means the window is visible to the client and |
| // not one of the above values. Practically this means this client is the |
| // window manager and the window was created by another client. |
| OTHER, |
| }; |
| |
| } // namespace ui |
| |
| #endif // UI_AURA_MUS_MUS_TYPES_H_ |