Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(388)

Side by Side Diff: services/ui/public/interfaces/window_tree_constants.mojom

Issue 2582823002: WIP: Surface Synchronization System
Patch Set: Only create ClientSurfaceEmbedder if window is visible. Trash it otherwise. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "cc/ipc/local_frame_id.mojom";
7 import "ui/gfx/geometry/mojo/geometry.mojom"; 8 import "ui/gfx/geometry/mojo/geometry.mojom";
8 9
9 // Contains state of a single window. 10 // Contains state of a single window.
10 struct WindowData { 11 struct WindowData {
11 // Unique identifier of the parent. If the client can not see the parent an 12 // Unique identifier of the parent. If the client can not see the parent an
12 // id of 0 is supplied. 13 // id of 0 is supplied.
13 uint32 parent_id; 14 uint32 parent_id;
14 15
15 // Unique identifier of the window. 16 // Unique identifier of the window.
16 uint32 window_id; 17 uint32 window_id;
17 18
18 // Id of the transient parent, 0 if there isn't one. 19 // Id of the transient parent, 0 if there isn't one.
19 uint32 transient_parent_id; 20 uint32 transient_parent_id;
20 21
21 gfx.mojom.Rect bounds; 22 gfx.mojom.Rect bounds;
22 23
24 // The LocalFrameId that the window should use to render the first frame.
25 cc.mojom.LocalFrameId local_frame_id;
26
23 // Arbitrary key/value pairs. The interpretation of these is left to the 27 // Arbitrary key/value pairs. The interpretation of these is left to the
24 // client. See SetWindowProperty() for more information. 28 // client. See SetWindowProperty() for more information.
25 map<string, array<uint8>> properties; 29 map<string, array<uint8>> properties;
26 30
27 // True if this window is visible. The window may not be drawn on screen (see 31 // True if this window is visible. The window may not be drawn on screen (see
28 // OnWindowParentDrawnStateChanged() for details). 32 // OnWindowParentDrawnStateChanged() for details).
29 bool visible; 33 bool visible;
30 }; 34 };
31 35
32 // The result of an input event sent to a client app. 36 // The result of an input event sent to a client app.
33 enum EventResult { 37 enum EventResult {
34 HANDLED, 38 HANDLED,
35 UNHANDLED, 39 UNHANDLED,
36 }; 40 };
37 41
38 // A bitfield of what drag operations are possible. 42 // A bitfield of what drag operations are possible.
39 const uint32 kDropEffectNone = 0; 43 const uint32 kDropEffectNone = 0;
40 const uint32 kDropEffectMove = 1; 44 const uint32 kDropEffectMove = 1;
41 const uint32 kDropEffectCopy = 2; 45 const uint32 kDropEffectCopy = 2;
42 const uint32 kDropEffectLink = 4; 46 const uint32 kDropEffectLink = 4;
43 47
44 // When this flag is set in a call to Embed(), the embedder (i.e. the client 48 // When this flag is set in a call to Embed(), the embedder (i.e. the client
45 // that is making the call to Embed()) will receive events that are targeted to 49 // that is making the call to Embed()) will receive events that are targeted to
46 // the embedded client. The embedded client will not receive any input events 50 // the embedded client. The embedded client will not receive any input events
47 // from the window server. However, the embedder can choose to dispatch events 51 // from the window server. However, the embedder can choose to dispatch events
48 // to the embedded client through other mechanism. 52 // to the embedded client through other mechanism.
49 // TODO(sad): Provide an API in mus for the embedder to dispatch events to the 53 // TODO(sad): Provide an API in mus for the embedder to dispatch events to the
50 // embedded client. https://crbug.com/621085 54 // embedded client. https://crbug.com/621085
51 const uint32 kEmbedFlagEmbedderInterceptsEvents = 0x01; 55 const uint32 kEmbedFlagEmbedderInterceptsEvents = 0x01;
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698