1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00

wayland-protocols: Update to 1.45

This commit is contained in:
Riteo
2025-06-19 03:59:20 +02:00
parent 8de08c7c21
commit ae74c0c9a4
20 changed files with 236 additions and 81 deletions

View File

@@ -1120,7 +1120,7 @@ Files extracted from upstream source:
# wayland-protocols # wayland-protocols
- Upstream: https://gitlab.freedesktop.org/wayland/wayland-protocols - Upstream: https://gitlab.freedesktop.org/wayland/wayland-protocols
- Version: 1.33 (54346071a5f211f2c482889f2c8ee3b5ecda63ab, 2024) - Version: 1.45 (54346071a5f211f2c482889f2c8ee3b5ecda63ab, 2025)
- License: MIT - License: MIT
Files extracted from upstream source: Files extracted from upstream source:

View File

@@ -1,4 +1,4 @@
Tablet protocol Tablet protocol
Maintainers: Maintainers:
Peter Hutterer <peter.hutterer@who-t.net> Peter Hutterer <peter.hutterer@who-t.net> (@whot)

View File

@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<protocol name="tablet_unstable_v2"> <protocol name="tablet_v2">
<copyright> <copyright>
Copyright 2014 © Stephen "Lyude" Chandler Paul Copyright 2014 © Stephen "Lyude" Chandler Paul
Copyright 2015-2016 © Red Hat, Inc. Copyright 2015-2024 © Red Hat, Inc.
Permission is hereby granted, free of charge, to any person Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation files obtaining a copy of this software and associated documentation files
@@ -104,18 +104,9 @@
compositor-specific policy when a tool can be removed. Common approaches compositor-specific policy when a tool can be removed. Common approaches
will likely include some form of removing a tool when all tablets the will likely include some form of removing a tool when all tablets the
tool was used on are removed. tool was used on are removed.
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 interface version bump.
Backward incompatible changes are done by bumping the version number in
the protocol and interface 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> </description>
<interface name="zwp_tablet_manager_v2" version="1"> <interface name="zwp_tablet_manager_v2" version="2">
<description summary="controller object for graphic tablet devices"> <description summary="controller object for graphic tablet devices">
An object that provides access to the graphics tablets available on this An object that provides access to the graphics tablets available on this
system. All tablets are associated with a seat, to get access to the system. All tablets are associated with a seat, to get access to the
@@ -139,7 +130,7 @@
</request> </request>
</interface> </interface>
<interface name="zwp_tablet_seat_v2" version="1"> <interface name="zwp_tablet_seat_v2" version="2">
<description summary="controller object for graphic tablet devices of a seat"> <description summary="controller object for graphic tablet devices of a seat">
An object that provides access to the graphics tablets available on this An object that provides access to the graphics tablets available on this
seat. After binding to this interface, the compositor sends a set of seat. After binding to this interface, the compositor sends a set of
@@ -190,7 +181,7 @@
</event> </event>
</interface> </interface>
<interface name="zwp_tablet_tool_v2" version="1"> <interface name="zwp_tablet_tool_v2" version="2">
<description summary="a physical tablet tool"> <description summary="a physical tablet tool">
An object that represents a physical tool that has been, or is An object that represents a physical tool that has been, or is
currently in use with a tablet in this seat. Each wp_tablet_tool currently in use with a tablet in this seat. Each wp_tablet_tool
@@ -576,7 +567,7 @@
</enum> </enum>
</interface> </interface>
<interface name="zwp_tablet_v2" version="1"> <interface name="zwp_tablet_v2" version="2">
<description summary="graphics tablet device"> <description summary="graphics tablet device">
The wp_tablet interface represents one graphics tablet device. The The wp_tablet interface represents one graphics tablet device. The
tablet interface itself does not generate events; all events are tablet interface itself does not generate events; all events are
@@ -596,19 +587,33 @@
<event name="name"> <event name="name">
<description summary="tablet device name"> <description summary="tablet device name">
A descriptive name for the tablet device.
If the device has no descriptive name, this event is not sent.
This event is sent in the initial burst of events before the This event is sent in the initial burst of events before the
wp_tablet.done event. wp_tablet.done event.
</description> </description>
<arg name="name" type="string" summary="the device name"/> <arg name="name" type="string" summary="the device name"/>
</event> </event>
<event name="id"> <event name="id">
<description summary="tablet device USB vendor/product id"> <description summary="tablet device vendor/product id">
The vendor and product IDs for the tablet device.
The interpretation of the id depends on the wp_tablet.bustype.
Prior to version v2 of this protocol, the id was implied to be a USB
vendor and product ID. If no wp_tablet.bustype is sent, the ID
is to be interpreted as USB vendor and product ID.
If the device has no vendor/product ID, this event is not sent.
This can happen for virtual devices or non-USB devices, for instance.
This event is sent in the initial burst of events before the This event is sent in the initial burst of events before the
wp_tablet.done event. wp_tablet.done event.
</description> </description>
<arg name="vid" type="uint" summary="USB vendor id"/> <arg name="vid" type="uint" summary="vendor id"/>
<arg name="pid" type="uint" summary="USB product id"/> <arg name="pid" type="uint" summary="product id"/>
</event> </event>
<event name="path"> <event name="path">
@@ -649,9 +654,36 @@
the object. the object.
</description> </description>
</event> </event>
<!-- Version 2 additions -->
<enum name="bustype" since="2">
<description summary="bus type ">
Describes the bus types this tablet is connected to.
</description>
<entry name="usb" value="3" summary="USB"/>
<entry name="bluetooth" value="5" summary="Bluetooth"/>
<entry name="virtual" value="6" summary="Virtual"/>
<entry name="serial" value="17" summary="Serial"/>
<entry name="i2c" value="24" summary="I2C"/>
</enum>
<event name="bustype" since="2">
<description summary="tablet device bus type">
The bustype argument is one of the BUS_ defines in the Linux kernel's
linux/input.h
If the device has no known bustype or the bustype cannot be
queried, this event is not sent.
This event is sent in the initial burst of events before the
wp_tablet.done event.
</description>
<arg name="bustype" type="uint" enum="bustype" summary="bus type"/>
</event>
</interface> </interface>
<interface name="zwp_tablet_pad_ring_v2" version="1"> <interface name="zwp_tablet_pad_ring_v2" version="2">
<description summary="pad ring"> <description summary="pad ring">
A circular interaction area, such as the touch ring on the Wacom Intuos A circular interaction area, such as the touch ring on the Wacom Intuos
Pro series tablets. Pro series tablets.
@@ -765,7 +797,7 @@
</event> </event>
</interface> </interface>
<interface name="zwp_tablet_pad_strip_v2" version="1"> <interface name="zwp_tablet_pad_strip_v2" version="2">
<description summary="pad strip"> <description summary="pad strip">
A linear interaction area, such as the strips found in Wacom Cintiq A linear interaction area, such as the strips found in Wacom Cintiq
models. models.
@@ -881,7 +913,7 @@
</event> </event>
</interface> </interface>
<interface name="zwp_tablet_pad_group_v2" version="1"> <interface name="zwp_tablet_pad_group_v2" version="2">
<description summary="a set of buttons, rings and strips"> <description summary="a set of buttons, rings and strips">
A pad group describes a distinct (sub)set of buttons, rings and strips A pad group describes a distinct (sub)set of buttons, rings and strips
present in the tablet. The criteria of this grouping is usually positional, present in the tablet. The criteria of this grouping is usually positional,
@@ -984,14 +1016,14 @@
<description summary="mode switch event"> <description summary="mode switch event">
Notification that the mode was switched. Notification that the mode was switched.
A mode applies to all buttons, rings and strips in a group A mode applies to all buttons, rings, strips and dials in a group
simultaneously, but a client is not required to assign different actions simultaneously, but a client is not required to assign different actions
for each mode. For example, a client may have mode-specific button for each mode. For example, a client may have mode-specific button
mappings but map the ring to vertical scrolling in all modes. Mode mappings but map the ring to vertical scrolling in all modes. Mode
indices start at 0. indices start at 0.
Switching modes is compositor-dependent. The compositor may provide Switching modes is compositor-dependent. The compositor may provide
visual cues to the client about the mode, e.g. by toggling LEDs on visual cues to the user about the mode, e.g. by toggling LEDs on
the tablet device. Mode-switching may be software-controlled or the tablet device. Mode-switching may be software-controlled or
controlled by one or more physical buttons. For example, on a Wacom controlled by one or more physical buttons. For example, on a Wacom
Intuos Pro, the button inside the ring may be assigned to switch Intuos Pro, the button inside the ring may be assigned to switch
@@ -1005,20 +1037,33 @@
previous mode, the client should immediately issue a previous mode, the client should immediately issue a
wp_tablet_pad.set_feedback request for each changed button. wp_tablet_pad.set_feedback request for each changed button.
If a ring or strip action in the new mode differs from the action If a ring, strip or dial action in the new mode differs from the action
in the previous mode, the client should immediately issue a in the previous mode, the client should immediately issue a
wp_tablet_ring.set_feedback or wp_tablet_strip.set_feedback request wp_tablet_ring.set_feedback, wp_tablet_strip.set_feedback or
for each changed ring or strip. wp_tablet_dial.set_feedback request for each changed ring, strip or dial.
</description> </description>
<arg name="time" type="uint" summary="the time of the event with millisecond granularity"/> <arg name="time" type="uint" summary="the time of the event with millisecond granularity"/>
<arg name="serial" type="uint"/> <arg name="serial" type="uint"/>
<arg name="mode" type="uint" summary="the new mode of the pad"/> <arg name="mode" type="uint" summary="the new mode of the pad"/>
</event> </event>
<!-- Version 2 additions -->
<event name="dial" since="2">
<description summary="dial announced">
Sent on wp_tablet_pad initialization to announce available dials.
One event is sent for each dial available on this pad group.
This event is sent in the initial burst of events before the
wp_tablet_pad_group.done event.
</description>
<arg name="dial" type="new_id" interface="zwp_tablet_pad_dial_v2"/>
</event>
</interface> </interface>
<interface name="zwp_tablet_pad_v2" version="1"> <interface name="zwp_tablet_pad_v2" version="2">
<description summary="a set of buttons, rings and strips"> <description summary="a set of buttons, rings, strips and dials">
A pad device is a set of buttons, rings and strips A pad device is a set of buttons, rings, strips and dials
usually physically present on the tablet device itself. Some usually physically present on the tablet device itself. Some
exceptions exist where the pad device is physically detached, e.g. the exceptions exist where the pad device is physically detached, e.g. the
Wacom ExpressKey Remote. Wacom ExpressKey Remote.
@@ -1032,7 +1077,7 @@
This initial event sequence is terminated by a wp_tablet_pad.done This initial event sequence is terminated by a wp_tablet_pad.done
event. event.
All pad features (buttons, rings and strips) are logically divided into All pad features (buttons, rings, strips and dials) are logically divided into
groups and all pads have at least one group. The available groups are groups and all pads have at least one group. The available groups are
notified through the wp_tablet_pad.group event; the compositor will notified through the wp_tablet_pad.group event; the compositor will
emit one event per group before emitting wp_tablet_pad.done. emit one event per group before emitting wp_tablet_pad.done.
@@ -1175,4 +1220,78 @@
</description> </description>
</event> </event>
</interface> </interface>
<interface name="zwp_tablet_pad_dial_v2" version="2">
<description summary="pad dial">
A rotary control, e.g. a dial or a wheel.
Events on a dial are logically grouped by the wl_tablet_pad_dial.frame
event.
</description>
<request name="set_feedback">
<description summary="set compositor feedback">
Requests the compositor to use the provided feedback string
associated with this dial. This request should be issued immediately
after a wp_tablet_pad_group.mode_switch event from the corresponding
group is received, or whenever the dial is mapped to a different
action. See wp_tablet_pad_group.mode_switch for more details.
Clients are encouraged to provide context-aware descriptions for
the actions associated with the dial, and compositors may use this
information to offer visual feedback about the button layout
(eg. on-screen displays).
The provided string 'description' is a UTF-8 encoded string to be
associated with this ring, and is considered user-visible; general
internationalization rules apply.
The serial argument will be that of the last
wp_tablet_pad_group.mode_switch event received for the group of this
dial. Requests providing other serials than the most recent one will be
ignored.
</description>
<arg name="description" type="string" summary="dial description"/>
<arg name="serial" type="uint" summary="serial of the mode switch event"/>
</request>
<request name="destroy" type="destructor">
<description summary="destroy the dial object">
This destroys the client's resource for this dial object.
</description>
</request>
<event name="delta">
<description summary="delta movement">
Sent whenever the position on a dial changes.
This event carries the wheel delta as multiples or fractions
of 120 with each multiple of 120 representing one logical wheel detent.
For example, an axis_value120 of 30 is one quarter of
a logical wheel step in the positive direction, a value120 of
-240 are two logical wheel steps in the negative direction within the
same hardware event. See the wl_pointer.axis_value120 for more details.
The value120 must not be zero.
</description>
<arg name="value120" type="int" summary="rotation distance as fraction of 120"/>
</event>
<event name="frame">
<description summary="end of a dial event sequence">
Indicates the end of a set of events that represent one logical
hardware dial event. A client is expected to accumulate the data
in all events within the frame before proceeding.
All wp_tablet_pad_dial events before a wp_tablet_pad_dial.frame event belong
logically together.
A wp_tablet_pad_dial.frame event is sent for every logical event
group, even if the group only contains a single wp_tablet_pad_dial
event. Specifically, a client may get a sequence: delta, frame,
delta, frame, etc.
</description>
<arg name="time" type="uint" summary="timestamp with millisecond granularity"/>
</event>
</interface>
</protocol> </protocol>

View File

@@ -3,5 +3,5 @@ Viewporter: cropping and scaling extension for surface contents
Previously known as wl_scaler. Previously known as wl_scaler.
Maintainers: Maintainers:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Pekka Paalanen <pekka.paalanen@collabora.co.uk> (@pq)

View File

@@ -71,8 +71,7 @@
src_y, src_width, src_height), and the destination size (dst_width, src_y, src_width, src_height), and the destination size (dst_width,
dst_height). The contents of the source rectangle are scaled to the dst_height). The contents of the source rectangle are scaled to the
destination size, and content outside the source rectangle is ignored. destination size, and content outside the source rectangle is ignored.
This state is double-buffered, and is applied on the next This state is double-buffered, see wl_surface.commit.
wl_surface.commit.
The two parts of crop and scale state are independent: the source The two parts of crop and scale state are independent: the source
rectangle, and the destination size. Initially both are unset, that rectangle, and the destination size. Initially both are unset, that
@@ -149,8 +148,7 @@
or negative, or x or y are negative, raise the bad_value protocol or negative, or x or y are negative, raise the bad_value protocol
error. error.
The crop and scale state is double-buffered state, and will be The crop and scale state is double-buffered, see wl_surface.commit.
applied on the next wl_surface.commit.
</description> </description>
<arg name="x" type="fixed" summary="source rectangle x"/> <arg name="x" type="fixed" summary="source rectangle x"/>
<arg name="y" type="fixed" summary="source rectangle y"/> <arg name="y" type="fixed" summary="source rectangle y"/>
@@ -169,8 +167,7 @@
contains zero or negative values raises the bad_value protocol contains zero or negative values raises the bad_value protocol
error. error.
The crop and scale state is double-buffered state, and will be The crop and scale state is double-buffered, see wl_surface.commit.
applied on the next wl_surface.commit.
</description> </description>
<arg name="width" type="int" summary="surface width"/> <arg name="width" type="int" summary="surface width"/>
<arg name="height" type="int" summary="surface height"/> <arg name="height" type="int" summary="surface height"/>

View File

@@ -1,5 +1,5 @@
xdg shell protocol xdg shell protocol
Maintainers: Maintainers:
Jonas Ådahl <jadahl@gmail.com> Jonas Ådahl <jadahl@gmail.com> (@jadahl)
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Mike Blumenkrantz <michael.blumenkrantz@gmail.com> (@zmike)

View File

@@ -29,7 +29,7 @@
DEALINGS IN THE SOFTWARE. DEALINGS IN THE SOFTWARE.
</copyright> </copyright>
<interface name="xdg_wm_base" version="6"> <interface name="xdg_wm_base" version="7">
<description summary="create desktop-style surfaces"> <description summary="create desktop-style surfaces">
The xdg_wm_base interface is exposed as a global object enabling clients The xdg_wm_base interface is exposed as a global object enabling clients
to turn their wl_surfaces into windows in a desktop environment. It to turn their wl_surfaces into windows in a desktop environment. It
@@ -122,7 +122,7 @@
</event> </event>
</interface> </interface>
<interface name="xdg_positioner" version="6"> <interface name="xdg_positioner" version="7">
<description summary="child surface positioner"> <description summary="child surface positioner">
The xdg_positioner provides a collection of rules for the placement of a The xdg_positioner provides a collection of rules for the placement of a
child surface relative to a parent surface. Rules can be defined to ensure child surface relative to a parent surface. Rules can be defined to ensure
@@ -344,7 +344,7 @@
The default adjustment is none. The default adjustment is none.
</description> </description>
<arg name="constraint_adjustment" type="uint" <arg name="constraint_adjustment" type="uint" enum="constraint_adjustment"
summary="bit mask of constraint adjustments"/> summary="bit mask of constraint adjustments"/>
</request> </request>
@@ -407,7 +407,7 @@
</request> </request>
</interface> </interface>
<interface name="xdg_surface" version="6"> <interface name="xdg_surface" version="7">
<description summary="desktop user interface surface base interface"> <description summary="desktop user interface surface base interface">
An interface that may be implemented by a wl_surface, for An interface that may be implemented by a wl_surface, for
implementations that provide a desktop-style user interface. implementations that provide a desktop-style user interface.
@@ -434,7 +434,8 @@
manipulate a buffer prior to the first xdg_surface.configure call must manipulate a buffer prior to the first xdg_surface.configure call must
also be treated as errors. also be treated as errors.
After creating a role-specific object and setting it up, the client must After creating a role-specific object and setting it up (e.g. by sending
the title, app ID, size constraints, parent, etc), the client must
perform an initial commit without any buffer attached. The compositor perform an initial commit without any buffer attached. The compositor
will reply with initial wl_surface state such as will reply with initial wl_surface state such as
wl_surface.preferred_buffer_scale followed by an xdg_surface.configure wl_surface.preferred_buffer_scale followed by an xdg_surface.configure
@@ -515,8 +516,7 @@
portions like drop-shadows which should be ignored for the portions like drop-shadows which should be ignored for the
purposes of aligning, placing and constraining windows. purposes of aligning, placing and constraining windows.
The window geometry is double buffered, and will be applied at the The window geometry is double-buffered state, see wl_surface.commit.
time wl_surface.commit of the corresponding wl_surface is called.
When maintaining a position, the compositor should treat the (x, y) When maintaining a position, the compositor should treat the (x, y)
coordinate of the window geometry as the top left corner of the window. coordinate of the window geometry as the top left corner of the window.
@@ -617,7 +617,7 @@
</interface> </interface>
<interface name="xdg_toplevel" version="6"> <interface name="xdg_toplevel" version="7">
<description summary="toplevel surface"> <description summary="toplevel surface">
This interface defines an xdg_surface role which allows a surface to, This interface defines an xdg_surface role which allows a surface to,
among other things, set window-like properties such as maximize, among other things, set window-like properties such as maximize,
@@ -635,7 +635,7 @@
attributes (e.g. title, state, stacking, ...) are discarded for attributes (e.g. title, state, stacking, ...) are discarded for
an xdg_toplevel surface when it is unmapped. The xdg_toplevel returns to an xdg_toplevel surface when it is unmapped. The xdg_toplevel returns to
the state it had right after xdg_surface.get_toplevel. The client the state it had right after xdg_surface.get_toplevel. The client
can re-map the toplevel by perfoming a commit without any buffer can re-map the toplevel by performing a commit without any buffer
attached, waiting for a configure event and handling it as usual (see attached, waiting for a configure event and handling it as usual (see
xdg_surface description). xdg_surface description).
@@ -832,8 +832,7 @@
configure event to ensure that both the client and the compositor configure event to ensure that both the client and the compositor
setting the state can be synchronized. setting the state can be synchronized.
States set in this way are double-buffered. They will get applied on States set in this way are double-buffered, see wl_surface.commit.
the next commit.
</description> </description>
<entry name="maximized" value="1" summary="the surface is maximized"> <entry name="maximized" value="1" summary="the surface is maximized">
<description summary="the surface is maximized"> <description summary="the surface is maximized">
@@ -873,24 +872,36 @@
<description summary="the surfaces left edge is tiled"> <description summary="the surfaces left edge is tiled">
The window is currently in a tiled layout and the left edge is The window is currently in a tiled layout and the left edge is
considered to be adjacent to another part of the tiling grid. considered to be adjacent to another part of the tiling grid.
The client should draw without shadow or other decoration outside of
the window geometry on the left edge.
</description> </description>
</entry> </entry>
<entry name="tiled_right" value="6" since="2"> <entry name="tiled_right" value="6" since="2">
<description summary="the surfaces right edge is tiled"> <description summary="the surfaces right edge is tiled">
The window is currently in a tiled layout and the right edge is The window is currently in a tiled layout and the right edge is
considered to be adjacent to another part of the tiling grid. considered to be adjacent to another part of the tiling grid.
The client should draw without shadow or other decoration outside of
the window geometry on the right edge.
</description> </description>
</entry> </entry>
<entry name="tiled_top" value="7" since="2"> <entry name="tiled_top" value="7" since="2">
<description summary="the surfaces top edge is tiled"> <description summary="the surfaces top edge is tiled">
The window is currently in a tiled layout and the top edge is The window is currently in a tiled layout and the top edge is
considered to be adjacent to another part of the tiling grid. considered to be adjacent to another part of the tiling grid.
The client should draw without shadow or other decoration outside of
the window geometry on the top edge.
</description> </description>
</entry> </entry>
<entry name="tiled_bottom" value="8" since="2"> <entry name="tiled_bottom" value="8" since="2">
<description summary="the surfaces bottom edge is tiled"> <description summary="the surfaces bottom edge is tiled">
The window is currently in a tiled layout and the bottom edge is The window is currently in a tiled layout and the bottom edge is
considered to be adjacent to another part of the tiling grid. considered to be adjacent to another part of the tiling grid.
The client should draw without shadow or other decoration outside of
the window geometry on the bottom edge.
</description> </description>
</entry> </entry>
<entry name="suspended" value="9" since="6"> <entry name="suspended" value="9" since="6">
@@ -900,6 +911,38 @@
outputs are switched off due to screen locking. outputs are switched off due to screen locking.
</description> </description>
</entry> </entry>
<entry name="constrained_left" value="10" since="7">
<description summary="the surfaces left edge is constrained">
The left edge of the window is currently constrained, meaning it
shouldn't attempt to resize from that edge. It can for example mean
it's tiled next to a monitor edge on the constrained side of the
window.
</description>
</entry>
<entry name="constrained_right" value="11" since="7">
<description summary="the surfaces right edge is constrained">
The right edge of the window is currently constrained, meaning it
shouldn't attempt to resize from that edge. It can for example mean
it's tiled next to a monitor edge on the constrained side of the
window.
</description>
</entry>
<entry name="constrained_top" value="12" since="7">
<description summary="the surfaces top edge is constrained">
The top edge of the window is currently constrained, meaning it
shouldn't attempt to resize from that edge. It can for example mean
it's tiled next to a monitor edge on the constrained side of the
window.
</description>
</entry>
<entry name="constrained_bottom" value="13" since="7">
<description summary="the surfaces bottom edge is tiled">
The bottom edge of the window is currently constrained, meaning it
shouldn't attempt to resize from that edge. It can for example mean
it's tiled next to a monitor edge on the constrained side of the
window.
</description>
</entry>
</enum> </enum>
<request name="set_max_size"> <request name="set_max_size">
@@ -912,8 +955,7 @@
The width and height arguments are in window geometry coordinates. The width and height arguments are in window geometry coordinates.
See xdg_surface.set_window_geometry. See xdg_surface.set_window_geometry.
Values set in this way are double-buffered. They will get applied Values set in this way are double-buffered, see wl_surface.commit.
on the next commit.
The compositor can use this information to allow or disallow The compositor can use this information to allow or disallow
different states like maximize or fullscreen and draw accurate different states like maximize or fullscreen and draw accurate
@@ -953,8 +995,7 @@
The width and height arguments are in window geometry coordinates. The width and height arguments are in window geometry coordinates.
See xdg_surface.set_window_geometry. See xdg_surface.set_window_geometry.
Values set in this way are double-buffered. They will get applied Values set in this way are double-buffered, see wl_surface.commit.
on the next commit.
The compositor can use this information to allow or disallow The compositor can use this information to allow or disallow
different states like maximize or fullscreen and draw accurate different states like maximize or fullscreen and draw accurate
@@ -1198,7 +1239,7 @@
</event> </event>
</interface> </interface>
<interface name="xdg_popup" version="6"> <interface name="xdg_popup" version="7">
<description summary="short-lived, popup surfaces for menus"> <description summary="short-lived, popup surfaces for menus">
A popup surface is a short-lived, temporary surface. It can be used to A popup surface is a short-lived, temporary surface. It can be used to
implement for example menus, popovers, tooltips and other similar user implement for example menus, popovers, tooltips and other similar user

View File

@@ -1,4 +1,4 @@
wp fractional scale protocol wp fractional scale protocol
Maintainers: Maintainers:
Kenny Levinsen <kl@kl.wtf> Kenny Levinsen <kl@kl.wtf> (@kennylevinsen)

View File

@@ -1,4 +1,4 @@
XDG Activation protocol XDG Activation protocol
Maintainers: Maintainers:
Aleix Pol Gonzalez <aleixpol@kde.org> Aleix Pol Gonzalez <aleixpol@kde.org> (@apol)

View File

@@ -1,4 +1,4 @@
Pointer constraints protocol Pointer constraints protocol
Maintainers: Maintainers:
Jonas Ådahl <jadahl@gmail.com> Jonas Ådahl <jadahl@gmail.com> (@jadahl)

View File

@@ -225,9 +225,8 @@
information to warp the pointer upon unlock in order to avoid pointer information to warp the pointer upon unlock in order to avoid pointer
jumps. jumps.
The cursor position hint is double buffered. The new hint will only take The cursor position hint is double-buffered state, see
effect when the associated surface gets it pending state applied. See wl_surface.commit.
wl_surface.commit for details.
</description> </description>
<arg name="surface_x" type="fixed" <arg name="surface_x" type="fixed"
summary="surface-local x coordinate"/> summary="surface-local x coordinate"/>
@@ -239,9 +238,7 @@
<description summary="set a new lock region"> <description summary="set a new lock region">
Set a new region used to lock the pointer. Set a new region used to lock the pointer.
The new lock region is double-buffered. The new lock region will The new lock region is double-buffered, see wl_surface.commit.
only take effect when the associated surface gets its pending state
applied. See wl_surface.commit for details.
For details about the lock region, see wp_locked_pointer. For details about the lock region, see wp_locked_pointer.
</description> </description>
@@ -298,9 +295,7 @@
<description summary="set a new confine region"> <description summary="set a new confine region">
Set a new region used to confine the pointer. Set a new region used to confine the pointer.
The new confine region is double-buffered. The new confine region will The new confine region is double-buffered, see wl_surface.commit.
only take effect when the associated surface gets its pending state
applied. See wl_surface.commit for details.
If the confinement is active when the new confinement region is applied If the confinement is active when the new confinement region is applied
and the pointer ends up outside of newly applied region, the pointer may and the pointer ends up outside of newly applied region, the pointer may

View File

@@ -1,4 +1,4 @@
Pointer gestures protocol Pointer gestures protocol
Maintainers: Maintainers:
Carlos Garnacho <carlosg@gnome.org> Carlos Garnacho <carlosg@gnome.org> (@carlosg)

View File

@@ -8,7 +8,7 @@
Three gestures are currently supported: swipe, pinch, and hold. Three gestures are currently supported: swipe, pinch, and hold.
Pinch and swipe gestures follow a three-stage cycle: begin, update, Pinch and swipe gestures follow a three-stage cycle: begin, update,
end, hold gestures follow a two-stage cycle: begin and end. All end. Hold gestures follow a two-stage cycle: begin and end. All
gestures are identified by a unique id. gestures are identified by a unique id.
Warning! The protocol described in this file is experimental and Warning! The protocol described in this file is experimental and

View File

@@ -1,4 +1,4 @@
Primary selection protocol Primary selection protocol
Maintainers: Maintainers:
Simon Ser <contact@emersion.fr> Simon Ser <contact@emersion.fr> (@emersion)

View File

@@ -1,4 +1,4 @@
Relative pointer protocol Relative pointer protocol
Maintainers: Maintainers:
Jonas Ådahl <jadahl@gmail.com> Jonas Ådahl <jadahl@gmail.com> (@jadahl)

View File

@@ -1,4 +1,4 @@
Text input protocol Text input protocol
Maintainers: Maintainers:
Jan Arne Petersen <janarne@gmail.com> Jan Arne Petersen <janarne@gmail.com> (@jpetersen)

View File

@@ -89,16 +89,15 @@
Requests text input on the surface previously obtained from the enter Requests text input on the surface previously obtained from the enter
event. event.
This request must be issued every time the active text input changes This request must be issued every time the focused text input changes
to a new one, including within the current surface. Use to a new one, including within the current surface. Use
zwp_text_input_v3.disable when there is no longer any input focus on zwp_text_input_v3.disable when there is no longer any input focus on
the current surface. the current surface.
Clients must not enable more than one text input on the single seat Clients must not enable more than one text input on the single seat
and should disable the current text input before enabling the new one. and should disable the current text input before enabling the new one.
At most one instance of text input may be in enabled state per instance, Requests to enable a text input when another text input is enabled
Requests to enable the another text input when some text input is active on the same seat must be ignored by compositor.
must be ignored by compositor.
This request resets all state associated with previous enable, disable, This request resets all state associated with previous enable, disable,
set_surrounding_text, set_text_change_cause, set_content_type, and set_surrounding_text, set_text_change_cause, set_content_type, and

View File

@@ -1,4 +1,4 @@
xdg_decoration protocol xdg_decoration protocol
Maintainers: Maintainers:
Simon Ser <contact@emersion.fr> Simon Ser <contact@emersion.fr> (@emersion)

View File

@@ -88,6 +88,7 @@
summary="xdg_toplevel already has a decoration object"/> summary="xdg_toplevel already has a decoration object"/>
<entry name="orphaned" value="2" <entry name="orphaned" value="2"
summary="xdg_toplevel destroyed before the decoration object"/> summary="xdg_toplevel destroyed before the decoration object"/>
<entry name="invalid_mode" value="3" summary="invalid mode"/>
</enum> </enum>
<request name="destroy" type="destructor"> <request name="destroy" type="destructor">
@@ -127,6 +128,9 @@
Such clients are responsible for preventing configure loops and must Such clients are responsible for preventing configure loops and must
make sure not to send multiple successive set_mode requests with the make sure not to send multiple successive set_mode requests with the
same decoration mode. same decoration mode.
If an invalid mode is supplied by the client, the invalid_mode protocol
error is raised by the compositor.
</description> </description>
<arg name="mode" type="uint" enum="mode" summary="the decoration mode"/> <arg name="mode" type="uint" enum="mode" summary="the decoration mode"/>
</request> </request>

View File

@@ -1,4 +1,4 @@
xdg foreign protocol xdg foreign protocol
Maintainers: Maintainers:
Jonas Ådahl <jadahl@gmail.com> Jonas Ådahl <jadahl@gmail.com> (@jadahl)