121 lines
5.4 KiB
XML
121 lines
5.4 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<protocol name="cursor_shapes_v1">
|
|
|
|
<copyright>
|
|
Copyright 2018 The Chromium Authors.
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a
|
|
copy of this software and associated documentation files (the "Software"),
|
|
to deal in the Software without restriction, including without limitation
|
|
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
and/or sell copies of the Software, and to permit persons to whom the
|
|
Software is furnished to do so, subject to the following conditions:
|
|
|
|
The above copyright notice and this permission notice (including the next
|
|
paragraph) shall be included in all copies or substantial portions of the
|
|
Software.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
DEALINGS IN THE SOFTWARE.
|
|
</copyright>
|
|
|
|
<interface name="zcr_cursor_shapes_v1" version="1">
|
|
<description summary="Allows to set the cursor shape">
|
|
Allows to set the semantic cursor shape rather than a surface for a
|
|
pointer cursor.
|
|
|
|
Warning! The protocol described in this file is experimental and
|
|
backward incompatible changes may be made. Backward compatible changes
|
|
may be added together with the corresponding uinterface version bump.
|
|
Backward incompatible changes are done by bumping the version number in
|
|
the protocol and uinterface names and resetting the interface version.
|
|
Once the protocol is to be declared stable, the 'z' prefix and the
|
|
version number in the protocol and interface names are removed and the
|
|
interface version number is reset.
|
|
</description>
|
|
|
|
<enum name="error">
|
|
<entry name="invalid_shape" value="0"
|
|
summary="the specified shape value is invalid"/>
|
|
</enum>
|
|
|
|
<enum name="cursor_shape_type">
|
|
<description summary="the type of cursor shape"/>
|
|
<entry name="pointer" value="0"/>
|
|
<entry name="cross" value="1"/>
|
|
<entry name="hand" value="2"/>
|
|
<entry name="ibeam" value="3"/>
|
|
<entry name="wait" value="4"/>
|
|
<entry name="help" value="5"/>
|
|
<entry name="east_resize" value="6"/>
|
|
<entry name="north_resize" value="7"/>
|
|
<entry name="north_east_resize" value="8"/>
|
|
<entry name="north_west_resize" value="9"/>
|
|
<entry name="south_resize" value="10"/>
|
|
<entry name="south_east_resize" value="11"/>
|
|
<entry name="south_west_resize" value="12"/>
|
|
<entry name="west_resize" value="13"/>
|
|
<entry name="north_south_resize" value="14"/>
|
|
<entry name="east_west_resize" value="15"/>
|
|
<entry name="north_east_south_west_resize" value="16"/>
|
|
<entry name="north_west_south_east_resize" value="17"/>
|
|
<entry name="column_resize" value="18"/>
|
|
<entry name="row_resize" value="19"/>
|
|
<entry name="middle_panning" value="20"/>
|
|
<entry name="east_panning" value="21"/>
|
|
<entry name="north_panning" value="22"/>
|
|
<entry name="north_east_panning" value="23"/>
|
|
<entry name="north_west_panning" value="24"/>
|
|
<entry name="south_panning" value="25"/>
|
|
<entry name="south_east_panning" value="26"/>
|
|
<entry name="south_west_panning" value="27"/>
|
|
<entry name="west_panning" value="28"/>
|
|
<entry name="move" value="29"/>
|
|
<entry name="vertical_text" value="30"/>
|
|
<entry name="cell" value="31"/>
|
|
<entry name="context_menu" value="32"/>
|
|
<entry name="alias" value="33"/>
|
|
<entry name="progress" value="34"/>
|
|
<entry name="no_drop" value="35"/>
|
|
<entry name="copy" value="36"/>
|
|
<entry name="none" value="37"/>
|
|
<entry name="not_allowed" value="38"/>
|
|
<entry name="zoom_in" value="39"/>
|
|
<entry name="zoom_out" value="40"/>
|
|
<entry name="grab" value="41"/>
|
|
<entry name="grabbing" value="42"/>
|
|
<entry name="dnd_none" value="43"/>
|
|
<entry name="dnd_move" value="44"/>
|
|
<entry name="dnd_copy" value="45"/>
|
|
<entry name="dnd_link" value="46"/>
|
|
</enum>
|
|
|
|
<request name="set_cursor_shape">
|
|
<description summary="set pointer cursor to the shape">
|
|
Sets the pointer cursor to the specified shape. The server will change
|
|
the cursor graphics based on the specified shape and its graphic assets
|
|
and system condition.
|
|
|
|
The "shape" argument needs to be one of the values in cursor_shape_type
|
|
enum. Otherwise invalid_shape error is raised.
|
|
|
|
This is similar to wl_pointer::set_cursor request, but this accepts a
|
|
shape instead of contents in the form of a surface.
|
|
|
|
The client which do not know this protocol should work as-is, so
|
|
wl_pointer::set_cursor will change the cursor graphics even when it's
|
|
combined with this request; and another invocation of set_cursor_shape
|
|
will change the cursor shape again. This means the last invoked one will
|
|
be used for the actual cursor.
|
|
</description>
|
|
<arg name="pointer" type="object" interface="wl_pointer"/>
|
|
<arg name="shape" type="int"/>
|
|
</request>
|
|
</interface>
|
|
</protocol>
|