16
16
required int32 height = 2;
17
17
required int32 pixel_format = 3;
18
18
required int32 buffer_usage = 4;
19
// TODO: Make required when we bump protobuf and server ABI
20
19
optional string surface_name = 5;
21
20
optional uint32 output_id = 6;
28
27
optional Rectangle aux_rect = 11;
29
28
optional int32 edge_attachment = 12;
30
optional int32 min_width = 13;
31
optional int32 min_height = 14;
32
optional int32 max_width = 15;
33
optional int32 max_height = 16;
34
optional int32 width_inc = 17;
35
optional int32 height_inc = 18;
36
optional SurfaceAspectRatio min_aspect = 19;
37
optional SurfaceAspectRatio max_aspect = 20;
40
message SurfaceAspectRatio
42
required uint32 width = 1;
43
required uint32 height = 2;
46
// If and when we break our protocol backward-compatibility, this could be
47
// merged with SurfaceParameters...
48
message SurfaceSpecification {
49
optional int32 width = 1;
50
optional int32 height = 2;
51
optional int32 pixel_format = 3;
52
optional int32 buffer_usage = 4;
53
optional string name = 5;
54
optional uint32 output_id = 6;
55
optional int32 type = 7;
56
optional int32 state = 8;
57
optional int32 preferred_orientation = 9;
58
optional int32 parent_id = 10;
59
optional Rectangle aux_rect = 11;
60
optional int32 edge_attachment = 12;
62
optional int32 min_width = 13;
63
optional int32 min_height = 14;
64
optional int32 max_width = 15;
65
optional int32 max_height = 16;
66
optional int32 width_inc = 17;
67
optional int32 height_inc = 18;
68
optional SurfaceAspectRatio min_aspect = 19;
69
optional SurfaceAspectRatio max_aspect = 20;
73
message SurfaceModifications {
74
required SurfaceId surface_id = 1;
75
required SurfaceSpecification surface_specification = 2;
32
78
message SurfaceId {
37
83
required int32 value = 1;
86
message BufferStreamParameters {
87
required int32 width = 1;
88
required int32 height = 2;
89
required int32 pixel_format = 3;
90
required int32 buffer_usage = 4;
40
93
message BufferRequest {
41
optional SurfaceId id = 1;
94
optional BufferStreamId id = 1;
42
95
optional Buffer buffer = 2;
93
146
optional sint32 orientation = 16;
98
required uint32 width = 1;
99
required uint32 height = 2;
100
repeated uint32 supported_pixel_format = 3;
103
149
message Connection {
104
150
optional Platform platform = 1;
105
optional DisplayInfo display_info = 2;
151
// optional DisplayInfo display_info = 2;
106
152
repeated DisplayOutput display_output = 3;
107
153
optional DisplayConfiguration display_configuration = 4;
108
154
repeated uint32 surface_pixel_format = 5;
210
256
required SurfaceId surfaceid = 1;
211
257
// No name is interpreted as disabled cursor.
212
258
optional string name = 2;
259
// If we supply a buffer stream we must supply hotspot x and y
260
optional BufferStreamId buffer_stream = 3;
261
optional int32 hotspot_x = 4;
262
optional int32 hotspot_y = 5;
215
265
message SocketFDRequest {
241
291
rpc connect(ConnectParameters) returns (Connection);
242
292
rpc disconnect(Void) returns (Void);
243
293
rpc create_surface(SurfaceParameters) returns (Surface);
294
rpc modify_surface(SurfaceModifications) returns (Void);
244
295
rpc next_buffer(SurfaceId) returns (Buffer);
245
296
rpc release_surface(SurfaceId) returns (Void);
255
306
rpc screencast_buffer(ScreencastId) returns (Buffer);
256
307
rpc release_screencast(ScreencastId) returns (Void);
309
rpc create_buffer_stream(BufferStreamParameters) returns (BufferStream);
310
rpc release_buffer_stream(BufferStreamId) returns (Void);
258
312
rpc configure_cursor(CursorSetting) returns (Void);
259
313
rpc new_fds_for_prompt_providers(SocketFDRequest) returns (SocketFD);