OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 module ui.mojom; | 5 module ui.mojom; |
6 | 6 |
7 import "ui/gfx/geometry/mojo/geometry.mojom"; | 7 import "ui/gfx/geometry/mojo/geometry.mojom"; |
8 | 8 |
9 // Contains state of a single window. | 9 // Contains state of a single window. |
10 struct WindowData { | 10 struct WindowData { |
(...skipping 12 matching lines...) Expand all Loading... |
23 | 23 |
24 // True if this window is visible. The window may not be drawn on screen (see | 24 // True if this window is visible. The window may not be drawn on screen (see |
25 // OnWindowParentDrawnStateChanged() for details). | 25 // OnWindowParentDrawnStateChanged() for details). |
26 bool visible; | 26 bool visible; |
27 }; | 27 }; |
28 | 28 |
29 // Each Window has support for two surfaces. Generally the |DEFAULT| surface | 29 // Each Window has support for two surfaces. Generally the |DEFAULT| surface |
30 // is used. The |UNDERLAY| surface is useful if the owner of a window wants to | 30 // is used. The |UNDERLAY| surface is useful if the owner of a window wants to |
31 // to Embed() another client and at the same time draw something under the | 31 // to Embed() another client and at the same time draw something under the |
32 // embedded apps representation. | 32 // embedded apps representation. |
33 enum SurfaceType { | 33 // TODO(fsamuel): Remove this once window decorations are no longer underlay |
| 34 // surfaces. http://crbug.com/647852. |
| 35 enum CompositorFrameSinkType { |
34 // Only the owner of a window may obtain this surface. | 36 // Only the owner of a window may obtain this surface. |
35 // The window manager can change the offset of this by way of | 37 // The window manager can change the offset of this by way of |
36 // SetUnderlaySurfaceOffsetAndExtendedHitArea(). | 38 // SetUnderlaySurfaceOffsetAndExtendedHitArea(). |
37 UNDERLAY, | 39 UNDERLAY, |
38 | 40 |
39 // Only the embedded app may obtain this surface. If an app is not embedded | 41 // Only the embedded app may obtain this surface. If an app is not embedded |
40 // in the Window than the owner may also render to this surface as well. | 42 // in the Window than the owner may also render to this surface as well. |
41 DEFAULT, | 43 DEFAULT, |
42 }; | 44 }; |
43 | 45 |
(...skipping 10 matching lines...) Expand all Loading... |
54 const uint32 kDropEffectLink = 4; | 56 const uint32 kDropEffectLink = 4; |
55 | 57 |
56 // When this flag is set in a call to Embed(), the embedder (i.e. the client | 58 // When this flag is set in a call to Embed(), the embedder (i.e. the client |
57 // that is making the call to Embed()) will receive events that are targeted to | 59 // that is making the call to Embed()) will receive events that are targeted to |
58 // the embedded client. The embedded client will not receive any input events | 60 // the embedded client. The embedded client will not receive any input events |
59 // from the window server. However, the embedder can choose to dispatch events | 61 // from the window server. However, the embedder can choose to dispatch events |
60 // to the embedded client through other mechanism. | 62 // to the embedded client through other mechanism. |
61 // TODO(sad): Provide an API in mus for the embedder to dispatch events to the | 63 // TODO(sad): Provide an API in mus for the embedder to dispatch events to the |
62 // embedded client. https://crbug.com/621085 | 64 // embedded client. https://crbug.com/621085 |
63 const uint32 kEmbedFlagEmbedderInterceptsEvents = 0x01; | 65 const uint32 kEmbedFlagEmbedderInterceptsEvents = 0x01; |
OLD | NEW |