| OLD | NEW |
| 1 <?xml version="1.0" encoding="UTF-8"?> | 1 <?xml version="1.0" encoding="UTF-8"?> |
| 2 <protocol name="remote_shell_unstable_v1"> | 2 <protocol name="remote_shell_unstable_v1"> |
| 3 | 3 |
| 4 <copyright> | 4 <copyright> |
| 5 Copyright 2016 The Chromium Authors. | 5 Copyright 2016 The Chromium Authors. |
| 6 | 6 |
| 7 Permission is hereby granted, free of charge, to any person obtaining a | 7 Permission is hereby granted, free of charge, to any person obtaining a |
| 8 copy of this software and associated documentation files (the "Software"), | 8 copy of this software and associated documentation files (the "Software"), |
| 9 to deal in the Software without restriction, including without limitation | 9 to deal in the Software without restriction, including without limitation |
| 10 the rights to use, copy, modify, merge, publish, distribute, sublicense, | 10 the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 Warning! The protocol described in this file is experimental and backward | 31 Warning! The protocol described in this file is experimental and backward |
| 32 incompatible changes may be made. Backward compatible changes may be added | 32 incompatible changes may be made. Backward compatible changes may be added |
| 33 together with the corresponding interface version bump. Backward | 33 together with the corresponding interface version bump. Backward |
| 34 incompatible changes are done by bumping the version number in the protocol | 34 incompatible changes are done by bumping the version number in the protocol |
| 35 and interface names and resetting the interface version. Once the protocol | 35 and interface names and resetting the interface version. Once the protocol |
| 36 is to be declared stable, the 'z' prefix and the version number in the | 36 is to be declared stable, the 'z' prefix and the version number in the |
| 37 protocol and interface names are removed and the interface version number is | 37 protocol and interface names are removed and the interface version number is |
| 38 reset. | 38 reset. |
| 39 </description> | 39 </description> |
| 40 | 40 |
| 41 <interface name="zcr_remote_shell_v1" version="3"> | 41 <interface name="zcr_remote_shell_v1" version="4"> |
| 42 <description summary="remote_shell"> | 42 <description summary="remote_shell"> |
| 43 The global interface that allows clients to turn a wl_surface into a | 43 The global interface that allows clients to turn a wl_surface into a |
| 44 "real window" which is remotely managed but can be stacked, activated | 44 "real window" which is remotely managed but can be stacked, activated |
| 45 and made fullscreen by the user. | 45 and made fullscreen by the user. |
| 46 </description> | 46 </description> |
| 47 | 47 |
| 48 <enum name="container"> | 48 <enum name="container"> |
| 49 <description summary="containers for remote surfaces"> | 49 <description summary="containers for remote surfaces"> |
| 50 Determine how a remote surface should be stacked relative to other | 50 Determine how a remote surface should be stacked relative to other |
| 51 shell surfaces. | 51 shell surfaces. |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 133 <arg name="height" type="int"/> | 133 <arg name="height" type="int"/> |
| 134 <arg name="transform" type="int"/> | 134 <arg name="transform" type="int"/> |
| 135 <arg name="scale_factor" type="fixed"/> | 135 <arg name="scale_factor" type="fixed"/> |
| 136 <arg name="work_area_inset_left" type="int"/> | 136 <arg name="work_area_inset_left" type="int"/> |
| 137 <arg name="work_area_inset_top" type="int"/> | 137 <arg name="work_area_inset_top" type="int"/> |
| 138 <arg name="work_area_inset_right" type="int"/> | 138 <arg name="work_area_inset_right" type="int"/> |
| 139 <arg name="work_area_inset_bottom" type="int"/> | 139 <arg name="work_area_inset_bottom" type="int"/> |
| 140 <arg name="layout_mode" type="uint"/> | 140 <arg name="layout_mode" type="uint"/> |
| 141 </event> | 141 </event> |
| 142 | 142 |
| 143 <!-- Version 3 additions --> | 143 <!-- Version 4 additions --> |
| 144 | 144 |
| 145 <event name="workspace" since="3"> | 145 <event name="workspace" since="4"> |
| 146 <description summary="area of remote shell"> | 146 <description summary="area of remote shell"> |
| 147 Defines an area of the remote shell used for layout. Each series of | 147 Defines an area of the remote shell used for layout. Each series of |
| 148 "workspace" events must be terminated by a "configure" event. | 148 "workspace" events must be terminated by a "configure" event. |
| 149 </description> | 149 </description> |
| 150 <arg name="id_hi" type="uint"/> | 150 <arg name="id_hi" type="uint"/> |
| 151 <arg name="id_lo" type="uint"/> | 151 <arg name="id_lo" type="uint"/> |
| 152 <arg name="x" type="int"/> | 152 <arg name="x" type="int"/> |
| 153 <arg name="y" type="int"/> | 153 <arg name="y" type="int"/> |
| 154 <arg name="width" type="int"/> | 154 <arg name="width" type="int"/> |
| 155 <arg name="height" type="int"/> | 155 <arg name="height" type="int"/> |
| 156 <arg name="inset_left" type="int"/> | 156 <arg name="inset_left" type="int"/> |
| 157 <arg name="inset_top" type="int"/> | 157 <arg name="inset_top" type="int"/> |
| 158 <arg name="inset_right" type="int"/> | 158 <arg name="inset_right" type="int"/> |
| 159 <arg name="inset_bottom" type="int"/> | 159 <arg name="inset_bottom" type="int"/> |
| 160 <arg name="transform" type="int"/> | 160 <arg name="transform" type="int"/> |
| 161 <arg name="scale_factor" type="fixed"/> | 161 <arg name="scale_factor" type="fixed"/> |
| 162 </event> | 162 </event> |
| 163 | 163 |
| 164 <event name="configure" since="3"> | 164 <event name="configure" since="4"> |
| 165 <description summary="suggests configuration of remote shell"> | 165 <description summary="suggests configuration of remote shell"> |
| 166 Suggests a new configuration of the remote shell. Preceded by a series | 166 Suggests a new configuration of the remote shell. Preceded by a series |
| 167 of "workspace" events. | 167 of "workspace" events. |
| 168 </description> | 168 </description> |
| 169 <arg name="layout_mode" type="uint"/> | 169 <arg name="layout_mode" type="uint"/> |
| 170 </event> | 170 </event> |
| 171 </interface> | 171 </interface> |
| 172 | 172 |
| 173 <interface name="zcr_remote_surface_v1" version="3"> | 173 <interface name="zcr_remote_surface_v1" version="4"> |
| 174 <description summary="A desktop window"> | 174 <description summary="A desktop window"> |
| 175 An interface that may be implemented by a wl_surface, for | 175 An interface that may be implemented by a wl_surface, for |
| 176 implementations that provide a desktop-style user interface | 176 implementations that provide a desktop-style user interface |
| 177 and allows for remotely managed windows. | 177 and allows for remotely managed windows. |
| 178 | 178 |
| 179 It provides requests to treat surfaces like windows, allowing to set | 179 It provides requests to treat surfaces like windows, allowing to set |
| 180 properties like app id and geometry. | 180 properties like app id and geometry. |
| 181 | 181 |
| 182 The client must call wl_surface.commit on the corresponding wl_surface | 182 The client must call wl_surface.commit on the corresponding wl_surface |
| 183 for the remote_surface state to take effect. | 183 for the remote_surface state to take effect. |
| 184 | 184 |
| 185 For a surface to be mapped by the compositor the client must have | 185 For a surface to be mapped by the compositor the client must have |
| 186 committed both an remote_surface state and a buffer. | 186 committed both an remote_surface state and a buffer. |
| 187 </description> | 187 </description> |
| 188 | 188 |
| 189 <enum name="systemui_visibility_state"> |
| 190 <description summary="systemui visibility behavior"> |
| 191 Determine the visibility behavior of the system UI. |
| 192 </description> |
| 193 <entry name="visible" value="1" summary="system ui is visible"/> |
| 194 <entry name="autohide_non_sticky" value="2" summary="system ui autohides a
nd is not sticky"/> |
| 195 <entry name="autohide_sticky" value="3" summary="system ui autohides and i
s sticky"/> |
| 196 </enum> |
| 197 |
| 189 <request name="destroy" type="destructor"> | 198 <request name="destroy" type="destructor"> |
| 190 <description summary="Destroy the remote_surface"> | 199 <description summary="Destroy the remote_surface"> |
| 191 Unmap and destroy the window. The window will be effectively | 200 Unmap and destroy the window. The window will be effectively |
| 192 hidden from the user's point of view, and all state will be lost. | 201 hidden from the user's point of view, and all state will be lost. |
| 193 </description> | 202 </description> |
| 194 </request> | 203 </request> |
| 195 | 204 |
| 196 <request name="set_app_id"> | 205 <request name="set_app_id"> |
| 197 <description summary="set application ID"> | 206 <description summary="set application ID"> |
| 198 Set an application identifier for the surface. | 207 Set an application identifier for the surface. |
| (...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 423 specifies inner bounds of the shadow. Specifying zero width and height | 432 specifies inner bounds of the shadow. Specifying zero width and height |
| 424 will disable the shadow. | 433 will disable the shadow. |
| 425 </description> | 434 </description> |
| 426 <arg name="x" type="int"/> | 435 <arg name="x" type="int"/> |
| 427 <arg name="y" type="int"/> | 436 <arg name="y" type="int"/> |
| 428 <arg name="width" type="int"/> | 437 <arg name="width" type="int"/> |
| 429 <arg name="height" type="int"/> | 438 <arg name="height" type="int"/> |
| 430 </request> | 439 </request> |
| 431 | 440 |
| 432 <!-- Version 3 additions --> | 441 <!-- Version 3 additions --> |
| 442 <request name="set_systemui_visibility" since="3"> |
| 443 <description summary="requests the system ui visibility behavior for the s
urface"> |
| 444 Requests how the surface will change the visibility of the system UI whe
n it is made active. |
| 445 </description> |
| 446 <arg name="visibility" type="uint"/> |
| 447 </request> |
| 433 | 448 |
| 434 <event name="configure" since="3"> | 449 <!-- Version 4 additions --> |
| 450 |
| 451 <event name="configure" since="4"> |
| 435 <description summary="suggest a surface change"> | 452 <description summary="suggest a surface change"> |
| 436 The configure event asks the client to change surface state. | 453 The configure event asks the client to change surface state. |
| 437 | 454 |
| 438 The client must apply the origin offset to window positions in | 455 The client must apply the origin offset to window positions in |
| 439 set_window_geometry requests. | 456 set_window_geometry requests. |
| 440 | 457 |
| 441 The states listed in the event are state_type values, and might change | 458 The states listed in the event are state_type values, and might change |
| 442 due to a client request or an event directly handled by the compositor. | 459 due to a client request or an event directly handled by the compositor. |
| 443 | 460 |
| 444 Clients should arrange their surface for the new state, and then send an | 461 Clients should arrange their surface for the new state, and then send an |
| 445 ack_configure request with the serial sent in this configure event at | 462 ack_configure request with the serial sent in this configure event at |
| 446 some point before committing the new surface. | 463 some point before committing the new surface. |
| 447 | 464 |
| 448 If the client receives multiple configure events before it can respond | 465 If the client receives multiple configure events before it can respond |
| 449 to one, it is free to discard all but the last event it received. | 466 to one, it is free to discard all but the last event it received. |
| 450 </description> | 467 </description> |
| 451 <arg name="origin_offset_x" type="int"/> | 468 <arg name="origin_offset_x" type="int"/> |
| 452 <arg name="origin_offset_y" type="int"/> | 469 <arg name="origin_offset_y" type="int"/> |
| 453 <arg name="states" type="array"/> | 470 <arg name="states" type="array"/> |
| 454 <arg name="serial" type="uint"/> | 471 <arg name="serial" type="uint"/> |
| 455 </event> | 472 </event> |
| 456 | 473 |
| 457 <request name="ack_configure" since="3"> | 474 <request name="ack_configure" since="4"> |
| 458 <description summary="ack a configure event"> | 475 <description summary="ack a configure event"> |
| 459 When a configure event is received, if a client commits the | 476 When a configure event is received, if a client commits the |
| 460 surface in response to the configure event, then the client | 477 surface in response to the configure event, then the client |
| 461 must make an ack_configure request sometime before the commit | 478 must make an ack_configure request sometime before the commit |
| 462 request, passing along the serial of the configure event. | 479 request, passing along the serial of the configure event. |
| 463 | 480 |
| 464 For instance, the compositor might use this information during display | 481 For instance, the compositor might use this information during display |
| 465 configuration to change its coordinate space for set_window_geometry | 482 configuration to change its coordinate space for set_window_geometry |
| 466 requests only when the client has switched to the new coordinate space. | 483 requests only when the client has switched to the new coordinate space. |
| 467 | 484 |
| 468 If the client receives multiple configure events before it | 485 If the client receives multiple configure events before it |
| 469 can respond to one, it only has to ack the last configure event. | 486 can respond to one, it only has to ack the last configure event. |
| 470 | 487 |
| 471 A client is not required to commit immediately after sending | 488 A client is not required to commit immediately after sending |
| 472 an ack_configure request - it may even ack_configure several times | 489 an ack_configure request - it may even ack_configure several times |
| 473 before its next surface commit. | 490 before its next surface commit. |
| 474 | 491 |
| 475 A client may send multiple ack_configure requests before committing, but | 492 A client may send multiple ack_configure requests before committing, but |
| 476 only the last request sent before a commit indicates which configure | 493 only the last request sent before a commit indicates which configure |
| 477 event the client really is responding to. | 494 event the client really is responding to. |
| 478 </description> | 495 </description> |
| 479 <arg name="serial" type="uint" summary="the serial from the configure even
t"/> | 496 <arg name="serial" type="uint" summary="the serial from the configure even
t"/> |
| 480 </request> | 497 </request> |
| 481 | 498 |
| 482 <request name="move" since="3"> | 499 <request name="move" since="4"> |
| 483 <description summary="start an interactive move"> | 500 <description summary="start an interactive move"> |
| 484 Start an interactive, user-driven move of the surface. | 501 Start an interactive, user-driven move of the surface. |
| 485 | 502 |
| 486 The compositor responds to this request with a configure event that | 503 The compositor responds to this request with a configure event that |
| 487 transitions to the "moving" state. The client must only initiate motion | 504 transitions to the "moving" state. The client must only initiate motion |
| 488 after acknowledging the state change. The compositor can assume that | 505 after acknowledging the state change. The compositor can assume that |
| 489 subsequent set_window_geometry requests are position updates until the | 506 subsequent set_window_geometry requests are position updates until the |
| 490 next state transition is acknowledged. | 507 next state transition is acknowledged. |
| 491 | 508 |
| 492 The compositor may ignore move requests depending on the state of the | 509 The compositor may ignore move requests depending on the state of the |
| (...skipping 10 matching lines...) Expand all Loading... |
| 503 </description> | 520 </description> |
| 504 | 521 |
| 505 <request name="destroy" type="destructor"> | 522 <request name="destroy" type="destructor"> |
| 506 <description summary="Destroy the notification_surface"> | 523 <description summary="Destroy the notification_surface"> |
| 507 Unmap and destroy the notification surface. | 524 Unmap and destroy the notification surface. |
| 508 </description> | 525 </description> |
| 509 </request> | 526 </request> |
| 510 </interface> | 527 </interface> |
| 511 | 528 |
| 512 </protocol> | 529 </protocol> |
| OLD | NEW |