Commit c5f983c6 authored by reveman's avatar reveman Committed by Commit bot

third_party: Remove deprecated zwp wayland interfaces.

No change in behavior.

BUG=631960
TBR=piman@chromium.org

Review-Url: https://codereview.chromium.org/2352563002
Cr-Commit-Position: refs/heads/master@{#420597}
parent c49a0a4c
This diff is collapsed.
......@@ -32,8 +32,6 @@ extern "C" {
* @section page_ifaces_alpha_compositing_unstable_v1 Interfaces
* - @subpage page_iface_zcr_alpha_compositing_v1 - alpha_compositing
* - @subpage page_iface_zcr_blending_v1 - blending interface to a wl_surface
* - @subpage page_iface_zwp_alpha_compositing_v1 - DEPRECATED
* - @subpage page_iface_zwp_blending_v1 - DEPRECATED
* @section page_copyright_alpha_compositing_unstable_v1 Copyright
* <pre>
*
......@@ -62,8 +60,6 @@ extern "C" {
struct wl_surface;
struct zcr_alpha_compositing_v1;
struct zcr_blending_v1;
struct zwp_alpha_compositing_v1;
struct zwp_blending_v1;
/**
* @page page_iface_zcr_alpha_compositing_v1 zcr_alpha_compositing_v1
......@@ -117,58 +113,6 @@ extern const struct wl_interface zcr_alpha_compositing_v1_interface;
* wl_surface.commit.
*/
extern const struct wl_interface zcr_blending_v1_interface;
/**
* @page page_iface_zwp_alpha_compositing_v1 zwp_alpha_compositing_v1
* @section page_iface_zwp_alpha_compositing_v1_desc Description
*
* The global interface exposing compositing and blending capabilities is
* used to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow the client to specify the
* blending equation and alpha value used for compositing the wl_surface.
* @section page_iface_zwp_alpha_compositing_v1_api API
* See @ref iface_zwp_alpha_compositing_v1.
*/
/**
* @defgroup iface_zwp_alpha_compositing_v1 The zwp_alpha_compositing_v1 interface
*
* The global interface exposing compositing and blending capabilities is
* used to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow the client to specify the
* blending equation and alpha value used for compositing the wl_surface.
*/
extern const struct wl_interface zwp_alpha_compositing_v1_interface;
/**
* @page page_iface_zwp_blending_v1 zwp_blending_v1
* @section page_iface_zwp_blending_v1_desc Description
*
* An additional interface to a wl_surface object, which allows the
* client to specify the blending equation used for compositing and
* an alpha value applied to the whole surface.
*
* If the wl_surface associated with the bledning object is destroyed,
* the blending object becomes inert.
*
* If the blending object is destroyed, the blending state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
* @section page_iface_zwp_blending_v1_api API
* See @ref iface_zwp_blending_v1.
*/
/**
* @defgroup iface_zwp_blending_v1 The zwp_blending_v1 interface
*
* An additional interface to a wl_surface object, which allows the
* client to specify the blending equation used for compositing and
* an alpha value applied to the whole surface.
*
* If the wl_surface associated with the bledning object is destroyed,
* the blending object becomes inert.
*
* If the blending object is destroyed, the blending state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
*/
extern const struct wl_interface zwp_blending_v1_interface;
#ifndef ZCR_ALPHA_COMPOSITING_V1_ERROR_ENUM
#define ZCR_ALPHA_COMPOSITING_V1_ERROR_ENUM
......@@ -355,191 +299,6 @@ zcr_blending_v1_set_alpha(struct zcr_blending_v1 *zcr_blending_v1, wl_fixed_t va
ZCR_BLENDING_V1_SET_ALPHA, value);
}
#ifndef ZWP_ALPHA_COMPOSITING_V1_ERROR_ENUM
#define ZWP_ALPHA_COMPOSITING_V1_ERROR_ENUM
enum zwp_alpha_compositing_v1_error {
/**
* the surface already has a blending object associated
*/
ZWP_ALPHA_COMPOSITING_V1_ERROR_BLENDING_EXISTS = 0,
};
#endif /* ZWP_ALPHA_COMPOSITING_V1_ERROR_ENUM */
#define ZWP_ALPHA_COMPOSITING_V1_DESTROY 0
#define ZWP_ALPHA_COMPOSITING_V1_GET_BLENDING 1
/**
* @ingroup iface_zwp_alpha_compositing_v1
*/
#define ZWP_ALPHA_COMPOSITING_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zwp_alpha_compositing_v1
*/
#define ZWP_ALPHA_COMPOSITING_V1_GET_BLENDING_SINCE_VERSION 1
/** @ingroup iface_zwp_alpha_compositing_v1 */
static inline void
zwp_alpha_compositing_v1_set_user_data(struct zwp_alpha_compositing_v1 *zwp_alpha_compositing_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_alpha_compositing_v1, user_data);
}
/** @ingroup iface_zwp_alpha_compositing_v1 */
static inline void *
zwp_alpha_compositing_v1_get_user_data(struct zwp_alpha_compositing_v1 *zwp_alpha_compositing_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_alpha_compositing_v1);
}
static inline uint32_t
zwp_alpha_compositing_v1_get_version(struct zwp_alpha_compositing_v1 *zwp_alpha_compositing_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_alpha_compositing_v1);
}
/**
* @ingroup iface_zwp_alpha_compositing_v1
*
* Informs the server that the client will not be using this
* protocol object anymore. This does not affect any other objects,
* blending objects included.
*/
static inline void
zwp_alpha_compositing_v1_destroy(struct zwp_alpha_compositing_v1 *zwp_alpha_compositing_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_alpha_compositing_v1,
ZWP_ALPHA_COMPOSITING_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_alpha_compositing_v1);
}
/**
* @ingroup iface_zwp_alpha_compositing_v1
*
* Instantiate an interface extension for the given wl_surface to
* provide surface blending. If the given wl_surface already has
* a blending object associated, the blending_exists protocol error
* is raised.
*/
static inline struct zwp_blending_v1 *
zwp_alpha_compositing_v1_get_blending(struct zwp_alpha_compositing_v1 *zwp_alpha_compositing_v1, struct wl_surface *surface)
{
struct wl_proxy *id;
id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_alpha_compositing_v1,
ZWP_ALPHA_COMPOSITING_V1_GET_BLENDING, &zwp_blending_v1_interface, NULL, surface);
return (struct zwp_blending_v1 *) id;
}
#ifndef ZWP_BLENDING_V1_BLENDING_EQUATION_ENUM
#define ZWP_BLENDING_V1_BLENDING_EQUATION_ENUM
/**
* @ingroup iface_zwp_blending_v1
* different blending equations for compositing
*
* Blending equations that can be used when compositing a surface.
*/
enum zwp_blending_v1_blending_equation {
/**
* no blending
*/
ZWP_BLENDING_V1_BLENDING_EQUATION_NONE = 0,
/**
* one / one_minus_src_alpha
*/
ZWP_BLENDING_V1_BLENDING_EQUATION_PREMULT = 1,
/**
* src_alpha / one_minus_src_alpha
*/
ZWP_BLENDING_V1_BLENDING_EQUATION_COVERAGE = 2,
};
#endif /* ZWP_BLENDING_V1_BLENDING_EQUATION_ENUM */
#define ZWP_BLENDING_V1_DESTROY 0
#define ZWP_BLENDING_V1_SET_BLENDING 1
#define ZWP_BLENDING_V1_SET_ALPHA 2
/**
* @ingroup iface_zwp_blending_v1
*/
#define ZWP_BLENDING_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zwp_blending_v1
*/
#define ZWP_BLENDING_V1_SET_BLENDING_SINCE_VERSION 1
/**
* @ingroup iface_zwp_blending_v1
*/
#define ZWP_BLENDING_V1_SET_ALPHA_SINCE_VERSION 1
/** @ingroup iface_zwp_blending_v1 */
static inline void
zwp_blending_v1_set_user_data(struct zwp_blending_v1 *zwp_blending_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_blending_v1, user_data);
}
/** @ingroup iface_zwp_blending_v1 */
static inline void *
zwp_blending_v1_get_user_data(struct zwp_blending_v1 *zwp_blending_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_blending_v1);
}
static inline uint32_t
zwp_blending_v1_get_version(struct zwp_blending_v1 *zwp_blending_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_blending_v1);
}
/**
* @ingroup iface_zwp_blending_v1
*
* The associated wl_surface's blending state is removed.
* The change is applied on the next wl_surface.commit.
*/
static inline void
zwp_blending_v1_destroy(struct zwp_blending_v1 *zwp_blending_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_blending_v1,
ZWP_BLENDING_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_blending_v1);
}
/**
* @ingroup iface_zwp_blending_v1
*
* Set the blending equation for compositing the wl_surface.
* See wp_alpha_compositing for the description.
*
* The blending equation state is double-buffered state,
* and will be applied on the next wl_surface.commit.
*/
static inline void
zwp_blending_v1_set_blending(struct zwp_blending_v1 *zwp_blending_v1, uint32_t equation)
{
wl_proxy_marshal((struct wl_proxy *) zwp_blending_v1,
ZWP_BLENDING_V1_SET_BLENDING, equation);
}
/**
* @ingroup iface_zwp_blending_v1
*
* Set the alpha value applied to the whole surface for compositing.
* See wp_alpha_compositing for the description.
*
* The alpha value state is double-buffered state,
* and will be applied on the next wl_surface.commit.
*/
static inline void
zwp_blending_v1_set_alpha(struct zwp_blending_v1 *zwp_blending_v1, wl_fixed_t value)
{
wl_proxy_marshal((struct wl_proxy *) zwp_blending_v1,
ZWP_BLENDING_V1_SET_ALPHA, value);
}
#ifdef __cplusplus
}
#endif
......
......@@ -35,8 +35,6 @@ struct wl_resource;
* @section page_ifaces_alpha_compositing_unstable_v1 Interfaces
* - @subpage page_iface_zcr_alpha_compositing_v1 - alpha_compositing
* - @subpage page_iface_zcr_blending_v1 - blending interface to a wl_surface
* - @subpage page_iface_zwp_alpha_compositing_v1 - DEPRECATED
* - @subpage page_iface_zwp_blending_v1 - DEPRECATED
* @section page_copyright_alpha_compositing_unstable_v1 Copyright
* <pre>
*
......@@ -65,8 +63,6 @@ struct wl_resource;
struct wl_surface;
struct zcr_alpha_compositing_v1;
struct zcr_blending_v1;
struct zwp_alpha_compositing_v1;
struct zwp_blending_v1;
/**
* @page page_iface_zcr_alpha_compositing_v1 zcr_alpha_compositing_v1
......@@ -120,58 +116,6 @@ extern const struct wl_interface zcr_alpha_compositing_v1_interface;
* wl_surface.commit.
*/
extern const struct wl_interface zcr_blending_v1_interface;
/**
* @page page_iface_zwp_alpha_compositing_v1 zwp_alpha_compositing_v1
* @section page_iface_zwp_alpha_compositing_v1_desc Description
*
* The global interface exposing compositing and blending capabilities is
* used to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow the client to specify the
* blending equation and alpha value used for compositing the wl_surface.
* @section page_iface_zwp_alpha_compositing_v1_api API
* See @ref iface_zwp_alpha_compositing_v1.
*/
/**
* @defgroup iface_zwp_alpha_compositing_v1 The zwp_alpha_compositing_v1 interface
*
* The global interface exposing compositing and blending capabilities is
* used to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow the client to specify the
* blending equation and alpha value used for compositing the wl_surface.
*/
extern const struct wl_interface zwp_alpha_compositing_v1_interface;
/**
* @page page_iface_zwp_blending_v1 zwp_blending_v1
* @section page_iface_zwp_blending_v1_desc Description
*
* An additional interface to a wl_surface object, which allows the
* client to specify the blending equation used for compositing and
* an alpha value applied to the whole surface.
*
* If the wl_surface associated with the bledning object is destroyed,
* the blending object becomes inert.
*
* If the blending object is destroyed, the blending state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
* @section page_iface_zwp_blending_v1_api API
* See @ref iface_zwp_blending_v1.
*/
/**
* @defgroup iface_zwp_blending_v1 The zwp_blending_v1 interface
*
* An additional interface to a wl_surface object, which allows the
* client to specify the blending equation used for compositing and
* an alpha value applied to the whole surface.
*
* If the wl_surface associated with the bledning object is destroyed,
* the blending object becomes inert.
*
* If the blending object is destroyed, the blending state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
*/
extern const struct wl_interface zwp_blending_v1_interface;
#ifndef ZCR_ALPHA_COMPOSITING_V1_ERROR_ENUM
#define ZCR_ALPHA_COMPOSITING_V1_ERROR_ENUM
......@@ -280,113 +224,6 @@ struct zcr_blending_v1_interface {
};
#ifndef ZWP_ALPHA_COMPOSITING_V1_ERROR_ENUM
#define ZWP_ALPHA_COMPOSITING_V1_ERROR_ENUM
enum zwp_alpha_compositing_v1_error {
/**
* the surface already has a blending object associated
*/
ZWP_ALPHA_COMPOSITING_V1_ERROR_BLENDING_EXISTS = 0,
};
#endif /* ZWP_ALPHA_COMPOSITING_V1_ERROR_ENUM */
/**
* @ingroup iface_zwp_alpha_compositing_v1
* @struct zwp_alpha_compositing_v1_interface
*/
struct zwp_alpha_compositing_v1_interface {
/**
* unbind from the blending interface
*
* Informs the server that the client will not be using this
* protocol object anymore. This does not affect any other objects,
* blending objects included.
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
/**
* extend surface interface for blending
*
* Instantiate an interface extension for the given wl_surface to
* provide surface blending. If the given wl_surface already has a
* blending object associated, the blending_exists protocol error
* is raised.
* @param id the new blending interface id
* @param surface the surface
*/
void (*get_blending)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id,
struct wl_resource *surface);
};
#ifndef ZWP_BLENDING_V1_BLENDING_EQUATION_ENUM
#define ZWP_BLENDING_V1_BLENDING_EQUATION_ENUM
/**
* @ingroup iface_zwp_blending_v1
* different blending equations for compositing
*
* Blending equations that can be used when compositing a surface.
*/
enum zwp_blending_v1_blending_equation {
/**
* no blending
*/
ZWP_BLENDING_V1_BLENDING_EQUATION_NONE = 0,
/**
* one / one_minus_src_alpha
*/
ZWP_BLENDING_V1_BLENDING_EQUATION_PREMULT = 1,
/**
* src_alpha / one_minus_src_alpha
*/
ZWP_BLENDING_V1_BLENDING_EQUATION_COVERAGE = 2,
};
#endif /* ZWP_BLENDING_V1_BLENDING_EQUATION_ENUM */
/**
* @ingroup iface_zwp_blending_v1
* @struct zwp_blending_v1_interface
*/
struct zwp_blending_v1_interface {
/**
* remove blending from the surface
*
* The associated wl_surface's blending state is removed. The
* change is applied on the next wl_surface.commit.
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
/**
* set the blending equation
*
* Set the blending equation for compositing the wl_surface. See
* wp_alpha_compositing for the description.
*
* The blending equation state is double-buffered state, and will
* be applied on the next wl_surface.commit.
* @param equation the new blending equation
*/
void (*set_blending)(struct wl_client *client,
struct wl_resource *resource,
uint32_t equation);
/**
* set the alpha value
*
* Set the alpha value applied to the whole surface for
* compositing. See wp_alpha_compositing for the description.
*
* The alpha value state is double-buffered state, and will be
* applied on the next wl_surface.commit.
* @param value the new alpha value
*/
void (*set_alpha)(struct wl_client *client,
struct wl_resource *resource,
wl_fixed_t value);
};
#ifdef __cplusplus
}
#endif
......
......@@ -16,8 +16,6 @@ extern "C" {
* @section page_ifaces_gaming_input_unstable_v1 Interfaces
* - @subpage page_iface_zcr_gaming_input_v1 - extends wl_seat with gaming input devices
* - @subpage page_iface_zcr_gamepad_v1 - gamepad input device
* - @subpage page_iface_zwp_gaming_input_v1 - DEPRECATED
* - @subpage page_iface_zwp_gamepad_v1 - DEPRECATED
* @section page_copyright_gaming_input_unstable_v1 Copyright
* <pre>
*
......@@ -46,8 +44,6 @@ extern "C" {
struct wl_seat;
struct zcr_gamepad_v1;
struct zcr_gaming_input_v1;
struct zwp_gamepad_v1;
struct zwp_gaming_input_v1;
/**
* @page page_iface_zcr_gaming_input_v1 zcr_gaming_input_v1
......@@ -103,60 +99,6 @@ extern const struct wl_interface zcr_gaming_input_v1_interface;
* by the W3C Gamepad API at: https://w3c.github.io/gamepad/#remapping
*/
extern const struct wl_interface zcr_gamepad_v1_interface;
/**
* @page page_iface_zwp_gaming_input_v1 zwp_gaming_input_v1
* @section page_iface_zwp_gaming_input_v1_desc Description
*
* A global interface to provide gaming input devices for a given seat.
*
* Currently only gamepad devices are supported.
*
* 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.
* @section page_iface_zwp_gaming_input_v1_api API
* See @ref iface_zwp_gaming_input_v1.
*/
/**
* @defgroup iface_zwp_gaming_input_v1 The zwp_gaming_input_v1 interface
*
* A global interface to provide gaming input devices for a given seat.
*
* Currently only gamepad devices are supported.
*
* 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.
*/
extern const struct wl_interface zwp_gaming_input_v1_interface;
/**
* @page page_iface_zwp_gamepad_v1 zwp_gamepad_v1
* @section page_iface_zwp_gamepad_v1_desc Description
*
* The zwp_gamepad_v1 interface represents one or more gamepad input devices,
* which are reported as a normalized 'Standard Gamepad' as it is specified
* by the W3C Gamepad API at: https://w3c.github.io/gamepad/#remapping
* @section page_iface_zwp_gamepad_v1_api API
* See @ref iface_zwp_gamepad_v1.
*/
/**
* @defgroup iface_zwp_gamepad_v1 The zwp_gamepad_v1 interface
*
* The zwp_gamepad_v1 interface represents one or more gamepad input devices,
* which are reported as a normalized 'Standard Gamepad' as it is specified
* by the W3C Gamepad API at: https://w3c.github.io/gamepad/#remapping
*/
extern const struct wl_interface zwp_gamepad_v1_interface;
#define ZCR_GAMING_INPUT_V1_GET_GAMEPAD 0
......@@ -365,213 +307,6 @@ zcr_gamepad_v1_destroy(struct zcr_gamepad_v1 *zcr_gamepad_v1)
wl_proxy_destroy((struct wl_proxy *) zcr_gamepad_v1);
}
#define ZWP_GAMING_INPUT_V1_GET_GAMEPAD 0
/**
* @ingroup iface_zwp_gaming_input_v1
*/
#define ZWP_GAMING_INPUT_V1_GET_GAMEPAD_SINCE_VERSION 1
/** @ingroup iface_zwp_gaming_input_v1 */
static inline void
zwp_gaming_input_v1_set_user_data(struct zwp_gaming_input_v1 *zwp_gaming_input_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_gaming_input_v1, user_data);
}
/** @ingroup iface_zwp_gaming_input_v1 */
static inline void *
zwp_gaming_input_v1_get_user_data(struct zwp_gaming_input_v1 *zwp_gaming_input_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_gaming_input_v1);
}
static inline uint32_t
zwp_gaming_input_v1_get_version(struct zwp_gaming_input_v1 *zwp_gaming_input_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_gaming_input_v1);
}
/** @ingroup iface_zwp_gaming_input_v1 */
static inline void
zwp_gaming_input_v1_destroy(struct zwp_gaming_input_v1 *zwp_gaming_input_v1)
{
wl_proxy_destroy((struct wl_proxy *) zwp_gaming_input_v1);
}
/**
* @ingroup iface_zwp_gaming_input_v1
*
* Create gamepad object. See zwp_gamepad_v1 interface for details.
*/
static inline struct zwp_gamepad_v1 *
zwp_gaming_input_v1_get_gamepad(struct zwp_gaming_input_v1 *zwp_gaming_input_v1, struct wl_seat *seat)
{
struct wl_proxy *id;
id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_gaming_input_v1,
ZWP_GAMING_INPUT_V1_GET_GAMEPAD, &zwp_gamepad_v1_interface, NULL, seat);
return (struct zwp_gamepad_v1 *) id;
}
#ifndef ZWP_GAMEPAD_V1_GAMEPAD_STATE_ENUM
#define ZWP_GAMEPAD_V1_GAMEPAD_STATE_ENUM
/**
* @ingroup iface_zwp_gamepad_v1
* connection state
*/
enum zwp_gamepad_v1_gamepad_state {
/**
* no gamepads are connected or on.
*/
ZWP_GAMEPAD_V1_GAMEPAD_STATE_OFF = 0,
/**
* at least one gamepad is connected.
*/
ZWP_GAMEPAD_V1_GAMEPAD_STATE_ON = 1,
};
#endif /* ZWP_GAMEPAD_V1_GAMEPAD_STATE_ENUM */
#ifndef ZWP_GAMEPAD_V1_BUTTON_STATE_ENUM
#define ZWP_GAMEPAD_V1_BUTTON_STATE_ENUM
/**
* @ingroup iface_zwp_gamepad_v1
* physical button state
*
* Describes the physical state of a button that produced the button
* event.
*/
enum zwp_gamepad_v1_button_state {
/**
* the button is not pressed
*/
ZWP_GAMEPAD_V1_BUTTON_STATE_RELEASED = 0,
/**
* the button is pressed
*/
ZWP_GAMEPAD_V1_BUTTON_STATE_PRESSED = 1,
};
#endif /* ZWP_GAMEPAD_V1_BUTTON_STATE_ENUM */
/**
* @ingroup iface_zwp_gamepad_v1
* @struct zwp_gamepad_v1_listener
*/
struct zwp_gamepad_v1_listener {
/**
* state change event
*
* Notification that this seat's connection state has changed.
* @param state new state
*/
void (*state_change)(void *data,
struct zwp_gamepad_v1 *zwp_gamepad_v1,
uint32_t state);
/**
* axis change event
*
* Notification of axis change.
*
* The axis id specifies which axis has changed as defined by the
* W3C 'Standard Gamepad'.
*
* The value is calibrated and normalized to the -1 to 1 range.
* @param time timestamp with millisecond granularity
* @param axis axis that produced this event
* @param value new value of axis
*/
void (*axis)(void *data,
struct zwp_gamepad_v1 *zwp_gamepad_v1,
uint32_t time,
uint32_t axis,
wl_fixed_t value);
/**
* Gamepad button changed
*
* Notification of button change.
*
* The button id specifies which button has changed as defined by
* the W3C 'Standard Gamepad'.
*
* A button can have a digital and an analog value. The analog
* value is normalized to a 0 to 1 range. If a button does not
* provide an analog value, it will be derived from the digital
* state.
* @param time timestamp with millisecond granularity
* @param button id of button
* @param state digital state of the button
* @param analog analog value of the button
*/
void (*button)(void *data,
struct zwp_gamepad_v1 *zwp_gamepad_v1,
uint32_t time,
uint32_t button,
uint32_t state,
wl_fixed_t analog);
/**
* Notifies end of a series of gamepad changes.
*
* Indicates the end of a set of events that logically belong
* together. A client is expected to accumulate the data in all
* events within the frame before proceeding.
* @param time timestamp with millisecond granularity
*/
void (*frame)(void *data,
struct zwp_gamepad_v1 *zwp_gamepad_v1,
uint32_t time);
};
/**
* @ingroup zwp_gamepad_v1_iface
*/
static inline int
zwp_gamepad_v1_add_listener(struct zwp_gamepad_v1 *zwp_gamepad_v1,
const struct zwp_gamepad_v1_listener *listener, void *data)
{
return wl_proxy_add_listener((struct wl_proxy *) zwp_gamepad_v1,
(void (**)(void)) listener, data);
}
#define ZWP_GAMEPAD_V1_DESTROY 0
/**
* @ingroup iface_zwp_gamepad_v1
*/
#define ZWP_GAMEPAD_V1_DESTROY_SINCE_VERSION 1
/** @ingroup iface_zwp_gamepad_v1 */
static inline void
zwp_gamepad_v1_set_user_data(struct zwp_gamepad_v1 *zwp_gamepad_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_gamepad_v1, user_data);
}
/** @ingroup iface_zwp_gamepad_v1 */
static inline void *
zwp_gamepad_v1_get_user_data(struct zwp_gamepad_v1 *zwp_gamepad_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_gamepad_v1);
}
static inline uint32_t
zwp_gamepad_v1_get_version(struct zwp_gamepad_v1 *zwp_gamepad_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_gamepad_v1);
}
/**
* @ingroup iface_zwp_gamepad_v1
*/
static inline void
zwp_gamepad_v1_destroy(struct zwp_gamepad_v1 *zwp_gamepad_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_gamepad_v1,
ZWP_GAMEPAD_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_gamepad_v1);
}
#ifdef __cplusplus
}
#endif
......
......@@ -19,8 +19,6 @@ struct wl_resource;
* @section page_ifaces_gaming_input_unstable_v1 Interfaces
* - @subpage page_iface_zcr_gaming_input_v1 - extends wl_seat with gaming input devices
* - @subpage page_iface_zcr_gamepad_v1 - gamepad input device
* - @subpage page_iface_zwp_gaming_input_v1 - DEPRECATED
* - @subpage page_iface_zwp_gamepad_v1 - DEPRECATED
* @section page_copyright_gaming_input_unstable_v1 Copyright
* <pre>
*
......@@ -49,8 +47,6 @@ struct wl_resource;
struct wl_seat;
struct zcr_gamepad_v1;
struct zcr_gaming_input_v1;
struct zwp_gamepad_v1;
struct zwp_gaming_input_v1;
/**
* @page page_iface_zcr_gaming_input_v1 zcr_gaming_input_v1
......@@ -106,60 +102,6 @@ extern const struct wl_interface zcr_gaming_input_v1_interface;
* by the W3C Gamepad API at: https://w3c.github.io/gamepad/#remapping
*/
extern const struct wl_interface zcr_gamepad_v1_interface;
/**
* @page page_iface_zwp_gaming_input_v1 zwp_gaming_input_v1
* @section page_iface_zwp_gaming_input_v1_desc Description
*
* A global interface to provide gaming input devices for a given seat.
*
* Currently only gamepad devices are supported.
*
* 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.
* @section page_iface_zwp_gaming_input_v1_api API
* See @ref iface_zwp_gaming_input_v1.
*/
/**
* @defgroup iface_zwp_gaming_input_v1 The zwp_gaming_input_v1 interface
*
* A global interface to provide gaming input devices for a given seat.
*
* Currently only gamepad devices are supported.
*
* 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.
*/
extern const struct wl_interface zwp_gaming_input_v1_interface;
/**
* @page page_iface_zwp_gamepad_v1 zwp_gamepad_v1
* @section page_iface_zwp_gamepad_v1_desc Description
*
* The zwp_gamepad_v1 interface represents one or more gamepad input devices,
* which are reported as a normalized 'Standard Gamepad' as it is specified
* by the W3C Gamepad API at: https://w3c.github.io/gamepad/#remapping
* @section page_iface_zwp_gamepad_v1_api API
* See @ref iface_zwp_gamepad_v1.
*/
/**
* @defgroup iface_zwp_gamepad_v1 The zwp_gamepad_v1 interface
*
* The zwp_gamepad_v1 interface represents one or more gamepad input devices,
* which are reported as a normalized 'Standard Gamepad' as it is specified
* by the W3C Gamepad API at: https://w3c.github.io/gamepad/#remapping
*/
extern const struct wl_interface zwp_gamepad_v1_interface;
/**
* @ingroup iface_zcr_gaming_input_v1
......@@ -307,152 +249,6 @@ zcr_gamepad_v1_send_frame(struct wl_resource *resource_, uint32_t time)
wl_resource_post_event(resource_, ZCR_GAMEPAD_V1_FRAME, time);
}
/**
* @ingroup iface_zwp_gaming_input_v1
* @struct zwp_gaming_input_v1_interface
*/
struct zwp_gaming_input_v1_interface {
/**
* get gamepad device assigned to seat
*
* Create gamepad object. See zwp_gamepad_v1 interface for
* details.
*/
void (*get_gamepad)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id,
struct wl_resource *seat);
};
#ifndef ZWP_GAMEPAD_V1_GAMEPAD_STATE_ENUM
#define ZWP_GAMEPAD_V1_GAMEPAD_STATE_ENUM
/**
* @ingroup iface_zwp_gamepad_v1
* connection state
*/
enum zwp_gamepad_v1_gamepad_state {
/**
* no gamepads are connected or on.
*/
ZWP_GAMEPAD_V1_GAMEPAD_STATE_OFF = 0,
/**
* at least one gamepad is connected.
*/
ZWP_GAMEPAD_V1_GAMEPAD_STATE_ON = 1,
};
#endif /* ZWP_GAMEPAD_V1_GAMEPAD_STATE_ENUM */
#ifndef ZWP_GAMEPAD_V1_BUTTON_STATE_ENUM
#define ZWP_GAMEPAD_V1_BUTTON_STATE_ENUM
/**
* @ingroup iface_zwp_gamepad_v1
* physical button state
*
* Describes the physical state of a button that produced the button
* event.
*/
enum zwp_gamepad_v1_button_state {
/**
* the button is not pressed
*/
ZWP_GAMEPAD_V1_BUTTON_STATE_RELEASED = 0,
/**
* the button is pressed
*/
ZWP_GAMEPAD_V1_BUTTON_STATE_PRESSED = 1,
};
#endif /* ZWP_GAMEPAD_V1_BUTTON_STATE_ENUM */
/**
* @ingroup iface_zwp_gamepad_v1
* @struct zwp_gamepad_v1_interface
*/
struct zwp_gamepad_v1_interface {
/**
* destroy gamepad object
*
*
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
};
#define ZWP_GAMEPAD_V1_STATE_CHANGE 0
#define ZWP_GAMEPAD_V1_AXIS 1
#define ZWP_GAMEPAD_V1_BUTTON 2
#define ZWP_GAMEPAD_V1_FRAME 3
/**
* @ingroup iface_zwp_gamepad_v1
*/
#define ZWP_GAMEPAD_V1_STATE_CHANGE_SINCE_VERSION 1
/**
* @ingroup iface_zwp_gamepad_v1
*/
#define ZWP_GAMEPAD_V1_AXIS_SINCE_VERSION 1
/**
* @ingroup iface_zwp_gamepad_v1
*/
#define ZWP_GAMEPAD_V1_BUTTON_SINCE_VERSION 1
/**
* @ingroup iface_zwp_gamepad_v1
*/
#define ZWP_GAMEPAD_V1_FRAME_SINCE_VERSION 1
/**
* @ingroup iface_zwp_gamepad_v1
* Sends an state_change event to the client owning the resource.
* @param resource_ The client's resource
* @param state new state
*/
static inline void
zwp_gamepad_v1_send_state_change(struct wl_resource *resource_, uint32_t state)
{
wl_resource_post_event(resource_, ZWP_GAMEPAD_V1_STATE_CHANGE, state);
}
/**
* @ingroup iface_zwp_gamepad_v1
* Sends an axis event to the client owning the resource.
* @param resource_ The client's resource
* @param time timestamp with millisecond granularity
* @param axis axis that produced this event
* @param value new value of axis
*/
static inline void
zwp_gamepad_v1_send_axis(struct wl_resource *resource_, uint32_t time, uint32_t axis, wl_fixed_t value)
{
wl_resource_post_event(resource_, ZWP_GAMEPAD_V1_AXIS, time, axis, value);
}
/**
* @ingroup iface_zwp_gamepad_v1
* Sends an button event to the client owning the resource.
* @param resource_ The client's resource
* @param time timestamp with millisecond granularity
* @param button id of button
* @param state digital state of the button
* @param analog analog value of the button
*/
static inline void
zwp_gamepad_v1_send_button(struct wl_resource *resource_, uint32_t time, uint32_t button, uint32_t state, wl_fixed_t analog)
{
wl_resource_post_event(resource_, ZWP_GAMEPAD_V1_BUTTON, time, button, state, analog);
}
/**
* @ingroup iface_zwp_gamepad_v1
* Sends an frame event to the client owning the resource.
* @param resource_ The client's resource
* @param time timestamp with millisecond granularity
*/
static inline void
zwp_gamepad_v1_send_frame(struct wl_resource *resource_, uint32_t time)
{
wl_resource_post_event(resource_, ZWP_GAMEPAD_V1_FRAME, time);
}
#ifdef __cplusplus
}
#endif
......
......@@ -41,8 +41,6 @@ extern "C" {
* @section page_ifaces_secure_output_unstable_v1 Interfaces
* - @subpage page_iface_zcr_secure_output_v1 - secure output
* - @subpage page_iface_zcr_security_v1 - security interface to a wl_surface
* - @subpage page_iface_zwp_secure_output_v1 - DEPRECATED
* - @subpage page_iface_zwp_security_v1 - DEPRECATED
* @section page_copyright_secure_output_unstable_v1 Copyright
* <pre>
*
......@@ -71,8 +69,6 @@ extern "C" {
struct wl_surface;
struct zcr_secure_output_v1;
struct zcr_security_v1;
struct zwp_secure_output_v1;
struct zwp_security_v1;
/**
* @page page_iface_zcr_secure_output_v1 zcr_secure_output_v1
......@@ -126,58 +122,6 @@ extern const struct wl_interface zcr_secure_output_v1_interface;
* wl_surface.commit.
*/
extern const struct wl_interface zcr_security_v1_interface;
/**
* @page page_iface_zwp_secure_output_v1 zwp_secure_output_v1
* @section page_iface_zwp_secure_output_v1_desc Description
*
* The global interface exposing secure output capabilities is used
* to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow surfaces to be marked as
* as only visible on secure outputs.
* @section page_iface_zwp_secure_output_v1_api API
* See @ref iface_zwp_secure_output_v1.
*/
/**
* @defgroup iface_zwp_secure_output_v1 The zwp_secure_output_v1 interface
*
* The global interface exposing secure output capabilities is used
* to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow surfaces to be marked as
* as only visible on secure outputs.
*/
extern const struct wl_interface zwp_secure_output_v1_interface;
/**
* @page page_iface_zwp_security_v1 zwp_security_v1
* @section page_iface_zwp_security_v1_desc Description
*
* An additional interface to a wl_surface object, which allows the
* client to specify that a surface should not appear in screenshots
* or be visible on non-secure outputs.
*
* If the wl_surface associated with the security object is destroyed,
* the security object becomes inert.
*
* If the security object is destroyed, the security state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
* @section page_iface_zwp_security_v1_api API
* See @ref iface_zwp_security_v1.
*/
/**
* @defgroup iface_zwp_security_v1 The zwp_security_v1 interface
*
* An additional interface to a wl_surface object, which allows the
* client to specify that a surface should not appear in screenshots
* or be visible on non-secure outputs.
*
* If the wl_surface associated with the security object is destroyed,
* the security object becomes inert.
*
* If the security object is destroyed, the security state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
*/
extern const struct wl_interface zwp_security_v1_interface;
#ifndef ZCR_SECURE_OUTPUT_V1_ERROR_ENUM
#define ZCR_SECURE_OUTPUT_V1_ERROR_ENUM
......@@ -319,146 +263,6 @@ zcr_security_v1_only_visible_on_secure_output(struct zcr_security_v1 *zcr_securi
ZCR_SECURITY_V1_ONLY_VISIBLE_ON_SECURE_OUTPUT);
}
#ifndef ZWP_SECURE_OUTPUT_V1_ERROR_ENUM
#define ZWP_SECURE_OUTPUT_V1_ERROR_ENUM
enum zwp_secure_output_v1_error {
/**
* the surface already has a security object associated
*/
ZWP_SECURE_OUTPUT_V1_ERROR_SECURITY_EXISTS = 0,
};
#endif /* ZWP_SECURE_OUTPUT_V1_ERROR_ENUM */
#define ZWP_SECURE_OUTPUT_V1_DESTROY 0
#define ZWP_SECURE_OUTPUT_V1_GET_SECURITY 1
/**
* @ingroup iface_zwp_secure_output_v1
*/
#define ZWP_SECURE_OUTPUT_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zwp_secure_output_v1
*/
#define ZWP_SECURE_OUTPUT_V1_GET_SECURITY_SINCE_VERSION 1
/** @ingroup iface_zwp_secure_output_v1 */
static inline void
zwp_secure_output_v1_set_user_data(struct zwp_secure_output_v1 *zwp_secure_output_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_secure_output_v1, user_data);
}
/** @ingroup iface_zwp_secure_output_v1 */
static inline void *
zwp_secure_output_v1_get_user_data(struct zwp_secure_output_v1 *zwp_secure_output_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_secure_output_v1);
}
static inline uint32_t
zwp_secure_output_v1_get_version(struct zwp_secure_output_v1 *zwp_secure_output_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_secure_output_v1);
}
/**
* @ingroup iface_zwp_secure_output_v1
*
* Informs the server that the client will not be using this
* protocol object anymore. This does not affect any other objects,
* security objects included.
*/
static inline void
zwp_secure_output_v1_destroy(struct zwp_secure_output_v1 *zwp_secure_output_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_secure_output_v1,
ZWP_SECURE_OUTPUT_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_secure_output_v1);
}
/**
* @ingroup iface_zwp_secure_output_v1
*
* Instantiate an interface extension for the given wl_surface to
* provide surface security. If the given wl_surface already has
* a security object associated, the security_exists protocol error
* is raised.
*/
static inline struct zwp_security_v1 *
zwp_secure_output_v1_get_security(struct zwp_secure_output_v1 *zwp_secure_output_v1, struct wl_surface *surface)
{
struct wl_proxy *id;
id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_secure_output_v1,
ZWP_SECURE_OUTPUT_V1_GET_SECURITY, &zwp_security_v1_interface, NULL, surface);
return (struct zwp_security_v1 *) id;
}
#define ZWP_SECURITY_V1_DESTROY 0
#define ZWP_SECURITY_V1_ONLY_VISIBLE_ON_SECURE_OUTPUT 1
/**
* @ingroup iface_zwp_security_v1
*/
#define ZWP_SECURITY_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zwp_security_v1
*/
#define ZWP_SECURITY_V1_ONLY_VISIBLE_ON_SECURE_OUTPUT_SINCE_VERSION 1
/** @ingroup iface_zwp_security_v1 */
static inline void
zwp_security_v1_set_user_data(struct zwp_security_v1 *zwp_security_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_security_v1, user_data);
}
/** @ingroup iface_zwp_security_v1 */
static inline void *
zwp_security_v1_get_user_data(struct zwp_security_v1 *zwp_security_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_security_v1);
}
static inline uint32_t
zwp_security_v1_get_version(struct zwp_security_v1 *zwp_security_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_security_v1);
}
/**
* @ingroup iface_zwp_security_v1
*
* The associated wl_surface's security state is removed.
* The change is applied on the next wl_surface.commit.
*/
static inline void
zwp_security_v1_destroy(struct zwp_security_v1 *zwp_security_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_security_v1,
ZWP_SECURITY_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_security_v1);
}
/**
* @ingroup iface_zwp_security_v1
*
* Constrain visibility of wl_surface contents to secure outputs.
* See wp_secure_output for the description.
*
* The only visible on secure output state is double-buffered state,
* and will be applied on the next wl_surface.commit.
*/
static inline void
zwp_security_v1_only_visible_on_secure_output(struct zwp_security_v1 *zwp_security_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_security_v1,
ZWP_SECURITY_V1_ONLY_VISIBLE_ON_SECURE_OUTPUT);
}
#ifdef __cplusplus
}
#endif
......
......@@ -44,8 +44,6 @@ struct wl_resource;
* @section page_ifaces_secure_output_unstable_v1 Interfaces
* - @subpage page_iface_zcr_secure_output_v1 - secure output
* - @subpage page_iface_zcr_security_v1 - security interface to a wl_surface
* - @subpage page_iface_zwp_secure_output_v1 - DEPRECATED
* - @subpage page_iface_zwp_security_v1 - DEPRECATED
* @section page_copyright_secure_output_unstable_v1 Copyright
* <pre>
*
......@@ -74,8 +72,6 @@ struct wl_resource;
struct wl_surface;
struct zcr_secure_output_v1;
struct zcr_security_v1;
struct zwp_secure_output_v1;
struct zwp_security_v1;
/**
* @page page_iface_zcr_secure_output_v1 zcr_secure_output_v1
......@@ -129,58 +125,6 @@ extern const struct wl_interface zcr_secure_output_v1_interface;
* wl_surface.commit.
*/
extern const struct wl_interface zcr_security_v1_interface;
/**
* @page page_iface_zwp_secure_output_v1 zwp_secure_output_v1
* @section page_iface_zwp_secure_output_v1_desc Description
*
* The global interface exposing secure output capabilities is used
* to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow surfaces to be marked as
* as only visible on secure outputs.
* @section page_iface_zwp_secure_output_v1_api API
* See @ref iface_zwp_secure_output_v1.
*/
/**
* @defgroup iface_zwp_secure_output_v1 The zwp_secure_output_v1 interface
*
* The global interface exposing secure output capabilities is used
* to instantiate an interface extension for a wl_surface object.
* This extended interface will then allow surfaces to be marked as
* as only visible on secure outputs.
*/
extern const struct wl_interface zwp_secure_output_v1_interface;
/**
* @page page_iface_zwp_security_v1 zwp_security_v1
* @section page_iface_zwp_security_v1_desc Description
*
* An additional interface to a wl_surface object, which allows the
* client to specify that a surface should not appear in screenshots
* or be visible on non-secure outputs.
*
* If the wl_surface associated with the security object is destroyed,
* the security object becomes inert.
*
* If the security object is destroyed, the security state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
* @section page_iface_zwp_security_v1_api API
* See @ref iface_zwp_security_v1.
*/
/**
* @defgroup iface_zwp_security_v1 The zwp_security_v1 interface
*
* An additional interface to a wl_surface object, which allows the
* client to specify that a surface should not appear in screenshots
* or be visible on non-secure outputs.
*
* If the wl_surface associated with the security object is destroyed,
* the security object becomes inert.
*
* If the security object is destroyed, the security state is removed
* from the wl_surface. The change will be applied on the next
* wl_surface.commit.
*/
extern const struct wl_interface zwp_security_v1_interface;
#ifndef ZCR_SECURE_OUTPUT_V1_ERROR_ENUM
#define ZCR_SECURE_OUTPUT_V1_ERROR_ENUM
......@@ -250,74 +194,6 @@ struct zcr_security_v1_interface {
};
#ifndef ZWP_SECURE_OUTPUT_V1_ERROR_ENUM
#define ZWP_SECURE_OUTPUT_V1_ERROR_ENUM
enum zwp_secure_output_v1_error {
/**
* the surface already has a security object associated
*/
ZWP_SECURE_OUTPUT_V1_ERROR_SECURITY_EXISTS = 0,
};
#endif /* ZWP_SECURE_OUTPUT_V1_ERROR_ENUM */
/**
* @ingroup iface_zwp_secure_output_v1
* @struct zwp_secure_output_v1_interface
*/
struct zwp_secure_output_v1_interface {
/**
* unbind from the secure output interface
*
* Informs the server that the client will not be using this
* protocol object anymore. This does not affect any other objects,
* security objects included.
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
/**
* extend surface interface for security
*
* Instantiate an interface extension for the given wl_surface to
* provide surface security. If the given wl_surface already has a
* security object associated, the security_exists protocol error
* is raised.
* @param id the new security interface id
* @param surface the surface
*/
void (*get_security)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id,
struct wl_resource *surface);
};
/**
* @ingroup iface_zwp_security_v1
* @struct zwp_security_v1_interface
*/
struct zwp_security_v1_interface {
/**
* remove security from the surface
*
* The associated wl_surface's security state is removed. The
* change is applied on the next wl_surface.commit.
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
/**
* set the only visible on secure output state
*
* Constrain visibility of wl_surface contents to secure outputs.
* See wp_secure_output for the description.
*
* The only visible on secure output state is double-buffered
* state, and will be applied on the next wl_surface.commit.
*/
void (*only_visible_on_secure_output)(struct wl_client *client,
struct wl_resource *resource);
};
#ifdef __cplusplus
}
#endif
......
......@@ -16,8 +16,6 @@ extern "C" {
* @section page_ifaces_stylus_unstable_v1 Interfaces
* - @subpage page_iface_zcr_stylus_v1 - extends wl_pointer with events for on-screen stylus
* - @subpage page_iface_zcr_pointer_stylus_v1 - stylus extension for pointer
* - @subpage page_iface_zwp_stylus_v1 - DEPRECATED
* - @subpage page_iface_zwp_pointer_stylus_v1 - DEPRECATED
* @section page_copyright_stylus_unstable_v1 Copyright
* <pre>
*
......@@ -46,8 +44,6 @@ extern "C" {
struct wl_pointer;
struct zcr_pointer_stylus_v1;
struct zcr_stylus_v1;
struct zwp_pointer_stylus_v1;
struct zwp_stylus_v1;
/**
* @page page_iface_zcr_stylus_v1 zcr_stylus_v1
......@@ -109,66 +105,6 @@ extern const struct wl_interface zcr_stylus_v1_interface;
* events to describe details about a stylus acting as a pointer.
*/
extern const struct wl_interface zcr_pointer_stylus_v1_interface;
/**
* @page page_iface_zwp_stylus_v1 zwp_stylus_v1
* @section page_iface_zwp_stylus_v1_desc Description
*
* Allows a wl_pointer to represent an on-screen stylus. The client can
* interpret the on-screen stylus like any other mouse device, and use
* this protocol to obtain detail information about the type of stylus,
* as well as the force and tilt of the tool.
*
* These events are to be fired by the server within the same frame as other
* wl_pointer events.
*
* 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.
* @section page_iface_zwp_stylus_v1_api API
* See @ref iface_zwp_stylus_v1.
*/
/**
* @defgroup iface_zwp_stylus_v1 The zwp_stylus_v1 interface
*
* Allows a wl_pointer to represent an on-screen stylus. The client can
* interpret the on-screen stylus like any other mouse device, and use
* this protocol to obtain detail information about the type of stylus,
* as well as the force and tilt of the tool.
*
* These events are to be fired by the server within the same frame as other
* wl_pointer events.
*
* 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.
*/
extern const struct wl_interface zwp_stylus_v1_interface;
/**
* @page page_iface_zwp_pointer_stylus_v1 zwp_pointer_stylus_v1
* @section page_iface_zwp_pointer_stylus_v1_desc Description
*
* The zwp_pointer_stylus_v1 interface extends the wl_pointer interface with
* events to describe details about a stylus acting as a pointer.
* @section page_iface_zwp_pointer_stylus_v1_api API
* See @ref iface_zwp_pointer_stylus_v1.
*/
/**
* @defgroup iface_zwp_pointer_stylus_v1 The zwp_pointer_stylus_v1 interface
*
* The zwp_pointer_stylus_v1 interface extends the wl_pointer interface with
* events to describe details about a stylus acting as a pointer.
*/
extern const struct wl_interface zwp_pointer_stylus_v1_interface;
#define ZCR_STYLUS_V1_GET_POINTER_STYLUS 0
......@@ -358,194 +294,6 @@ zcr_pointer_stylus_v1_destroy(struct zcr_pointer_stylus_v1 *zcr_pointer_stylus_v
wl_proxy_destroy((struct wl_proxy *) zcr_pointer_stylus_v1);
}
#define ZWP_STYLUS_V1_GET_POINTER_STYLUS 0
/**
* @ingroup iface_zwp_stylus_v1
*/
#define ZWP_STYLUS_V1_GET_POINTER_STYLUS_SINCE_VERSION 1
/** @ingroup iface_zwp_stylus_v1 */
static inline void
zwp_stylus_v1_set_user_data(struct zwp_stylus_v1 *zwp_stylus_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_stylus_v1, user_data);
}
/** @ingroup iface_zwp_stylus_v1 */
static inline void *
zwp_stylus_v1_get_user_data(struct zwp_stylus_v1 *zwp_stylus_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_stylus_v1);
}
static inline uint32_t
zwp_stylus_v1_get_version(struct zwp_stylus_v1 *zwp_stylus_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_stylus_v1);
}
/** @ingroup iface_zwp_stylus_v1 */
static inline void
zwp_stylus_v1_destroy(struct zwp_stylus_v1 *zwp_stylus_v1)
{
wl_proxy_destroy((struct wl_proxy *) zwp_stylus_v1);
}
/**
* @ingroup iface_zwp_stylus_v1
*
* Create pointer_stylus object. See zwp_pointer_stylus_v1 interface for
* details.
*/
static inline struct zwp_pointer_stylus_v1 *
zwp_stylus_v1_get_pointer_stylus(struct zwp_stylus_v1 *zwp_stylus_v1, struct wl_pointer *pointer)
{
struct wl_proxy *id;
id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_stylus_v1,
ZWP_STYLUS_V1_GET_POINTER_STYLUS, &zwp_pointer_stylus_v1_interface, NULL, pointer);
return (struct zwp_pointer_stylus_v1 *) id;
}
#ifndef ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ENUM
#define ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ENUM
/**
* @ingroup iface_zwp_pointer_stylus_v1
* tool type of device.
*/
enum zwp_pointer_stylus_v1_tool_type {
/**
* Mouse or touchpad, not a stylus.
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_MOUSE = 0,
/**
* Pen
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_PEN = 1,
/**
* Touch
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_TOUCH = 2,
/**
* Eraser
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ERASER = 3,
};
#endif /* ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ENUM */
/**
* @ingroup iface_zwp_pointer_stylus_v1
* @struct zwp_pointer_stylus_v1_listener
*/
struct zwp_pointer_stylus_v1_listener {
/**
* pointing device tool type changed
*
* Notification that the user is using a new tool type. There can
* only be one tool in use at a time. If the pointer enters a
* client surface, with a tool type other than mouse, this event
* will also be generated.
*
* If this event is not received, the client has to assume a mouse
* is in use. The remaining events of this protocol are only being
* generated after this event has been fired with a tool type other
* than mouse.
* @param type new device type
*/
void (*tool_change)(void *data,
struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1,
uint32_t type);
/**
* force change event
*
* Notification of a change in physical force on the surface of
* the screen.
*
* If the pointer enters a client surface, with a tool type other
* than mouse, this event will also be generated.
*
* The force is calibrated and normalized to the 0 to 1 range.
* @param time timestamp with millisecond granularity
* @param force new value of force
*/
void (*force)(void *data,
struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1,
uint32_t time,
wl_fixed_t force);
/**
* force change event
*
* Notification of a change in tilt of the pointing tool.
*
* If the pointer enters a client surface, with a tool type other
* than mouse, this event will also be generated.
*
* Measured from surface normal as plane angle in degrees, values
* lie in [-90,90]. A positive x is to the right and a positive y
* is towards the user.
* @param time timestamp with millisecond granularity
* @param tilt_x tilt in x direction
* @param tilt_y tilt in y direction
*/
void (*tilt)(void *data,
struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1,
uint32_t time,
wl_fixed_t tilt_x,
wl_fixed_t tilt_y);
};
/**
* @ingroup zwp_pointer_stylus_v1_iface
*/
static inline int
zwp_pointer_stylus_v1_add_listener(struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1,
const struct zwp_pointer_stylus_v1_listener *listener, void *data)
{
return wl_proxy_add_listener((struct wl_proxy *) zwp_pointer_stylus_v1,
(void (**)(void)) listener, data);
}
#define ZWP_POINTER_STYLUS_V1_DESTROY 0
/**
* @ingroup iface_zwp_pointer_stylus_v1
*/
#define ZWP_POINTER_STYLUS_V1_DESTROY_SINCE_VERSION 1
/** @ingroup iface_zwp_pointer_stylus_v1 */
static inline void
zwp_pointer_stylus_v1_set_user_data(struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_pointer_stylus_v1, user_data);
}
/** @ingroup iface_zwp_pointer_stylus_v1 */
static inline void *
zwp_pointer_stylus_v1_get_user_data(struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_pointer_stylus_v1);
}
static inline uint32_t
zwp_pointer_stylus_v1_get_version(struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_pointer_stylus_v1);
}
/**
* @ingroup iface_zwp_pointer_stylus_v1
*/
static inline void
zwp_pointer_stylus_v1_destroy(struct zwp_pointer_stylus_v1 *zwp_pointer_stylus_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_pointer_stylus_v1,
ZWP_POINTER_STYLUS_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_pointer_stylus_v1);
}
#ifdef __cplusplus
}
#endif
......
......@@ -19,8 +19,6 @@ struct wl_resource;
* @section page_ifaces_stylus_unstable_v1 Interfaces
* - @subpage page_iface_zcr_stylus_v1 - extends wl_pointer with events for on-screen stylus
* - @subpage page_iface_zcr_pointer_stylus_v1 - stylus extension for pointer
* - @subpage page_iface_zwp_stylus_v1 - DEPRECATED
* - @subpage page_iface_zwp_pointer_stylus_v1 - DEPRECATED
* @section page_copyright_stylus_unstable_v1 Copyright
* <pre>
*
......@@ -49,8 +47,6 @@ struct wl_resource;
struct wl_pointer;
struct zcr_pointer_stylus_v1;
struct zcr_stylus_v1;
struct zwp_pointer_stylus_v1;
struct zwp_stylus_v1;
/**
* @page page_iface_zcr_stylus_v1 zcr_stylus_v1
......@@ -112,66 +108,6 @@ extern const struct wl_interface zcr_stylus_v1_interface;
* events to describe details about a stylus acting as a pointer.
*/
extern const struct wl_interface zcr_pointer_stylus_v1_interface;
/**
* @page page_iface_zwp_stylus_v1 zwp_stylus_v1
* @section page_iface_zwp_stylus_v1_desc Description
*
* Allows a wl_pointer to represent an on-screen stylus. The client can
* interpret the on-screen stylus like any other mouse device, and use
* this protocol to obtain detail information about the type of stylus,
* as well as the force and tilt of the tool.
*
* These events are to be fired by the server within the same frame as other
* wl_pointer events.
*
* 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.
* @section page_iface_zwp_stylus_v1_api API
* See @ref iface_zwp_stylus_v1.
*/
/**
* @defgroup iface_zwp_stylus_v1 The zwp_stylus_v1 interface
*
* Allows a wl_pointer to represent an on-screen stylus. The client can
* interpret the on-screen stylus like any other mouse device, and use
* this protocol to obtain detail information about the type of stylus,
* as well as the force and tilt of the tool.
*
* These events are to be fired by the server within the same frame as other
* wl_pointer events.
*
* 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.
*/
extern const struct wl_interface zwp_stylus_v1_interface;
/**
* @page page_iface_zwp_pointer_stylus_v1 zwp_pointer_stylus_v1
* @section page_iface_zwp_pointer_stylus_v1_desc Description
*
* The zwp_pointer_stylus_v1 interface extends the wl_pointer interface with
* events to describe details about a stylus acting as a pointer.
* @section page_iface_zwp_pointer_stylus_v1_api API
* See @ref iface_zwp_pointer_stylus_v1.
*/
/**
* @defgroup iface_zwp_pointer_stylus_v1 The zwp_pointer_stylus_v1 interface
*
* The zwp_pointer_stylus_v1 interface extends the wl_pointer interface with
* events to describe details about a stylus acting as a pointer.
*/
extern const struct wl_interface zwp_pointer_stylus_v1_interface;
/**
* @ingroup iface_zcr_stylus_v1
......@@ -287,120 +223,6 @@ zcr_pointer_stylus_v1_send_tilt(struct wl_resource *resource_, uint32_t time, wl
wl_resource_post_event(resource_, ZCR_POINTER_STYLUS_V1_TILT, time, tilt_x, tilt_y);
}
/**
* @ingroup iface_zwp_stylus_v1
* @struct zwp_stylus_v1_interface
*/
struct zwp_stylus_v1_interface {
/**
* get stylus interface for pointer
*
* Create pointer_stylus object. See zwp_pointer_stylus_v1
* interface for details.
*/
void (*get_pointer_stylus)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id,
struct wl_resource *pointer);
};
#ifndef ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ENUM
#define ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ENUM
/**
* @ingroup iface_zwp_pointer_stylus_v1
* tool type of device.
*/
enum zwp_pointer_stylus_v1_tool_type {
/**
* Mouse or touchpad, not a stylus.
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_MOUSE = 0,
/**
* Pen
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_PEN = 1,
/**
* Touch
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_TOUCH = 2,
/**
* Eraser
*/
ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ERASER = 3,
};
#endif /* ZWP_POINTER_STYLUS_V1_TOOL_TYPE_ENUM */
/**
* @ingroup iface_zwp_pointer_stylus_v1
* @struct zwp_pointer_stylus_v1_interface
*/
struct zwp_pointer_stylus_v1_interface {
/**
* destroy stylus object
*
*
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
};
#define ZWP_POINTER_STYLUS_V1_TOOL_CHANGE 0
#define ZWP_POINTER_STYLUS_V1_FORCE 1
#define ZWP_POINTER_STYLUS_V1_TILT 2
/**
* @ingroup iface_zwp_pointer_stylus_v1
*/
#define ZWP_POINTER_STYLUS_V1_TOOL_CHANGE_SINCE_VERSION 1
/**
* @ingroup iface_zwp_pointer_stylus_v1
*/
#define ZWP_POINTER_STYLUS_V1_FORCE_SINCE_VERSION 1
/**
* @ingroup iface_zwp_pointer_stylus_v1
*/
#define ZWP_POINTER_STYLUS_V1_TILT_SINCE_VERSION 1
/**
* @ingroup iface_zwp_pointer_stylus_v1
* Sends an tool_change event to the client owning the resource.
* @param resource_ The client's resource
* @param type new device type
*/
static inline void
zwp_pointer_stylus_v1_send_tool_change(struct wl_resource *resource_, uint32_t type)
{
wl_resource_post_event(resource_, ZWP_POINTER_STYLUS_V1_TOOL_CHANGE, type);
}
/**
* @ingroup iface_zwp_pointer_stylus_v1
* Sends an force event to the client owning the resource.
* @param resource_ The client's resource
* @param time timestamp with millisecond granularity
* @param force new value of force
*/
static inline void
zwp_pointer_stylus_v1_send_force(struct wl_resource *resource_, uint32_t time, wl_fixed_t force)
{
wl_resource_post_event(resource_, ZWP_POINTER_STYLUS_V1_FORCE, time, force);
}
/**
* @ingroup iface_zwp_pointer_stylus_v1
* Sends an tilt event to the client owning the resource.
* @param resource_ The client's resource
* @param time timestamp with millisecond granularity
* @param tilt_x tilt in x direction
* @param tilt_y tilt in y direction
*/
static inline void
zwp_pointer_stylus_v1_send_tilt(struct wl_resource *resource_, uint32_t time, wl_fixed_t tilt_x, wl_fixed_t tilt_y)
{
wl_resource_post_event(resource_, ZWP_POINTER_STYLUS_V1_TILT, time, tilt_x, tilt_y);
}
#ifdef __cplusplus
}
#endif
......
......@@ -32,8 +32,6 @@ extern "C" {
* @section page_ifaces_vsync_feedback_unstable_v1 Interfaces
* - @subpage page_iface_zcr_vsync_feedback_v1 - Protocol for providing vertical synchronization timing
* - @subpage page_iface_zcr_vsync_timing_v1 -
* - @subpage page_iface_zwp_vsync_feedback_v1 - DEPRECATED
* - @subpage page_iface_zwp_vsync_timing_v1 -
* @section page_copyright_vsync_feedback_unstable_v1 Copyright
* <pre>
*
......@@ -62,8 +60,6 @@ extern "C" {
struct wl_output;
struct zcr_vsync_feedback_v1;
struct zcr_vsync_timing_v1;
struct zwp_vsync_feedback_v1;
struct zwp_vsync_timing_v1;
/**
* @page page_iface_zcr_vsync_feedback_v1 zcr_vsync_feedback_v1
......@@ -90,31 +86,6 @@ extern const struct wl_interface zcr_vsync_feedback_v1_interface;
* @defgroup iface_zcr_vsync_timing_v1 The zcr_vsync_timing_v1 interface
*/
extern const struct wl_interface zcr_vsync_timing_v1_interface;
/**
* @page page_iface_zwp_vsync_feedback_v1 zwp_vsync_feedback_v1
* @section page_iface_zwp_vsync_feedback_v1_desc Description
*
* The global interface that allows clients to subscribe for vertical
* synchronization timing data for given wl_output.
* @section page_iface_zwp_vsync_feedback_v1_api API
* See @ref iface_zwp_vsync_feedback_v1.
*/
/**
* @defgroup iface_zwp_vsync_feedback_v1 The zwp_vsync_feedback_v1 interface
*
* The global interface that allows clients to subscribe for vertical
* synchronization timing data for given wl_output.
*/
extern const struct wl_interface zwp_vsync_feedback_v1_interface;
/**
* @page page_iface_zwp_vsync_timing_v1 zwp_vsync_timing_v1
* @section page_iface_zwp_vsync_timing_v1_api API
* See @ref iface_zwp_vsync_timing_v1.
*/
/**
* @defgroup iface_zwp_vsync_timing_v1 The zwp_vsync_timing_v1 interface
*/
extern const struct wl_interface zwp_vsync_timing_v1_interface;
#define ZCR_VSYNC_FEEDBACK_V1_DESTROY 0
#define ZCR_VSYNC_FEEDBACK_V1_GET_VSYNC_TIMING 1
......@@ -273,163 +244,6 @@ zcr_vsync_timing_v1_destroy(struct zcr_vsync_timing_v1 *zcr_vsync_timing_v1)
wl_proxy_destroy((struct wl_proxy *) zcr_vsync_timing_v1);
}
#define ZWP_VSYNC_FEEDBACK_V1_DESTROY 0
#define ZWP_VSYNC_FEEDBACK_V1_GET_VSYNC_TIMING 1
/**
* @ingroup iface_zwp_vsync_feedback_v1
*/
#define ZWP_VSYNC_FEEDBACK_V1_DESTROY_SINCE_VERSION 1
/**
* @ingroup iface_zwp_vsync_feedback_v1
*/
#define ZWP_VSYNC_FEEDBACK_V1_GET_VSYNC_TIMING_SINCE_VERSION 1
/** @ingroup iface_zwp_vsync_feedback_v1 */
static inline void
zwp_vsync_feedback_v1_set_user_data(struct zwp_vsync_feedback_v1 *zwp_vsync_feedback_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_vsync_feedback_v1, user_data);
}
/** @ingroup iface_zwp_vsync_feedback_v1 */
static inline void *
zwp_vsync_feedback_v1_get_user_data(struct zwp_vsync_feedback_v1 *zwp_vsync_feedback_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_vsync_feedback_v1);
}
static inline uint32_t
zwp_vsync_feedback_v1_get_version(struct zwp_vsync_feedback_v1 *zwp_vsync_feedback_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_vsync_feedback_v1);
}
/**
* @ingroup iface_zwp_vsync_feedback_v1
*
* Destroy this vsync feedback object. Existing vsync timing objects shall
* not be affected by this request.
*/
static inline void
zwp_vsync_feedback_v1_destroy(struct zwp_vsync_feedback_v1 *zwp_vsync_feedback_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_vsync_feedback_v1,
ZWP_VSYNC_FEEDBACK_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_vsync_feedback_v1);
}
/**
* @ingroup iface_zwp_vsync_feedback_v1
*
* Create a new vsync timing object that represents a subscription to
* vertical synchronization timing updates of given wl_output object.
*
* The newly created object will immediately signal an update to notify
* the subscriber of initial timing parameters.
*/
static inline struct zwp_vsync_timing_v1 *
zwp_vsync_feedback_v1_get_vsync_timing(struct zwp_vsync_feedback_v1 *zwp_vsync_feedback_v1, struct wl_output *output)
{
struct wl_proxy *id;
id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_vsync_feedback_v1,
ZWP_VSYNC_FEEDBACK_V1_GET_VSYNC_TIMING, &zwp_vsync_timing_v1_interface, NULL, output);
return (struct zwp_vsync_timing_v1 *) id;
}
/**
* @ingroup iface_zwp_vsync_timing_v1
* @struct zwp_vsync_timing_v1_listener
*/
struct zwp_vsync_timing_v1_listener {
/**
* vsync timing updated
*
* Notifies client that vertical synchronization timing of given
* wl_output has changed.
*
* Timing information consists of two data, timebase and interval.
* Timebase is an absolute timestamp of the vsync event that caused
* the timing to change. Interval is a period of time between
* subsequent vsync events.
*
* The unit of all above mentioned time values shall be
* microseconds and absolute timestamps should match the realm of
* the primary system monotonic counter, i.e. the POSIX
* clock_gettime(CLOCK_MONOTONIC). Data type of both values is
* defined to be a 64-bit unsigned integer, but since the biggest
* unsigned integer datatype defined by the Wayland protocol is the
* 32-bit uint, both timebase and interval are split into most
* significant and least significant part, suffixed by "_h" and
* "_l" respectively.
* @param timebase_l new vsync timebase (lower 32 bits)
* @param timebase_h new vsync timebase (upper 32 bits)
* @param interval_l new vsync interval (lower 32 bits)
* @param interval_h new vsync interval (upper 32 bits)
*/
void (*update)(void *data,
struct zwp_vsync_timing_v1 *zwp_vsync_timing_v1,
uint32_t timebase_l,
uint32_t timebase_h,
uint32_t interval_l,
uint32_t interval_h);
};
/**
* @ingroup zwp_vsync_timing_v1_iface
*/
static inline int
zwp_vsync_timing_v1_add_listener(struct zwp_vsync_timing_v1 *zwp_vsync_timing_v1,
const struct zwp_vsync_timing_v1_listener *listener, void *data)
{
return wl_proxy_add_listener((struct wl_proxy *) zwp_vsync_timing_v1,
(void (**)(void)) listener, data);
}
#define ZWP_VSYNC_TIMING_V1_DESTROY 0
/**
* @ingroup iface_zwp_vsync_timing_v1
*/
#define ZWP_VSYNC_TIMING_V1_DESTROY_SINCE_VERSION 1
/** @ingroup iface_zwp_vsync_timing_v1 */
static inline void
zwp_vsync_timing_v1_set_user_data(struct zwp_vsync_timing_v1 *zwp_vsync_timing_v1, void *user_data)
{
wl_proxy_set_user_data((struct wl_proxy *) zwp_vsync_timing_v1, user_data);
}
/** @ingroup iface_zwp_vsync_timing_v1 */
static inline void *
zwp_vsync_timing_v1_get_user_data(struct zwp_vsync_timing_v1 *zwp_vsync_timing_v1)
{
return wl_proxy_get_user_data((struct wl_proxy *) zwp_vsync_timing_v1);
}
static inline uint32_t
zwp_vsync_timing_v1_get_version(struct zwp_vsync_timing_v1 *zwp_vsync_timing_v1)
{
return wl_proxy_get_version((struct wl_proxy *) zwp_vsync_timing_v1);
}
/**
* @ingroup iface_zwp_vsync_timing_v1
*
* Destroy this vsync timing object.
*/
static inline void
zwp_vsync_timing_v1_destroy(struct zwp_vsync_timing_v1 *zwp_vsync_timing_v1)
{
wl_proxy_marshal((struct wl_proxy *) zwp_vsync_timing_v1,
ZWP_VSYNC_TIMING_V1_DESTROY);
wl_proxy_destroy((struct wl_proxy *) zwp_vsync_timing_v1);
}
#ifdef __cplusplus
}
#endif
......
......@@ -35,8 +35,6 @@ struct wl_resource;
* @section page_ifaces_vsync_feedback_unstable_v1 Interfaces
* - @subpage page_iface_zcr_vsync_feedback_v1 - Protocol for providing vertical synchronization timing
* - @subpage page_iface_zcr_vsync_timing_v1 -
* - @subpage page_iface_zwp_vsync_feedback_v1 - DEPRECATED
* - @subpage page_iface_zwp_vsync_timing_v1 -
* @section page_copyright_vsync_feedback_unstable_v1 Copyright
* <pre>
*
......@@ -65,8 +63,6 @@ struct wl_resource;
struct wl_output;
struct zcr_vsync_feedback_v1;
struct zcr_vsync_timing_v1;
struct zwp_vsync_feedback_v1;
struct zwp_vsync_timing_v1;
/**
* @page page_iface_zcr_vsync_feedback_v1 zcr_vsync_feedback_v1
......@@ -93,31 +89,6 @@ extern const struct wl_interface zcr_vsync_feedback_v1_interface;
* @defgroup iface_zcr_vsync_timing_v1 The zcr_vsync_timing_v1 interface
*/
extern const struct wl_interface zcr_vsync_timing_v1_interface;
/**
* @page page_iface_zwp_vsync_feedback_v1 zwp_vsync_feedback_v1
* @section page_iface_zwp_vsync_feedback_v1_desc Description
*
* The global interface that allows clients to subscribe for vertical
* synchronization timing data for given wl_output.
* @section page_iface_zwp_vsync_feedback_v1_api API
* See @ref iface_zwp_vsync_feedback_v1.
*/
/**
* @defgroup iface_zwp_vsync_feedback_v1 The zwp_vsync_feedback_v1 interface
*
* The global interface that allows clients to subscribe for vertical
* synchronization timing data for given wl_output.
*/
extern const struct wl_interface zwp_vsync_feedback_v1_interface;
/**
* @page page_iface_zwp_vsync_timing_v1 zwp_vsync_timing_v1
* @section page_iface_zwp_vsync_timing_v1_api API
* See @ref iface_zwp_vsync_timing_v1.
*/
/**
* @defgroup iface_zwp_vsync_timing_v1 The zwp_vsync_timing_v1 interface
*/
extern const struct wl_interface zwp_vsync_timing_v1_interface;
/**
* @ingroup iface_zcr_vsync_feedback_v1
......@@ -187,74 +158,6 @@ zcr_vsync_timing_v1_send_update(struct wl_resource *resource_, uint32_t timebase
wl_resource_post_event(resource_, ZCR_VSYNC_TIMING_V1_UPDATE, timebase_l, timebase_h, interval_l, interval_h);
}
/**
* @ingroup iface_zwp_vsync_feedback_v1
* @struct zwp_vsync_feedback_v1_interface
*/
struct zwp_vsync_feedback_v1_interface {
/**
* destroy vsync feedback object
*
* Destroy this vsync feedback object. Existing vsync timing
* objects shall not be affected by this request.
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
/**
* get vsync timing object for given wl_output
*
* Create a new vsync timing object that represents a
* subscription to vertical synchronization timing updates of given
* wl_output object.
*
* The newly created object will immediately signal an update to
* notify the subscriber of initial timing parameters.
* @param id the new vsync timing interface id
* @param output the wl_output object to subscribe for timings of
*/
void (*get_vsync_timing)(struct wl_client *client,
struct wl_resource *resource,
uint32_t id,
struct wl_resource *output);
};
/**
* @ingroup iface_zwp_vsync_timing_v1
* @struct zwp_vsync_timing_v1_interface
*/
struct zwp_vsync_timing_v1_interface {
/**
* destroy vsync timing object
*
* Destroy this vsync timing object.
*/
void (*destroy)(struct wl_client *client,
struct wl_resource *resource);
};
#define ZWP_VSYNC_TIMING_V1_UPDATE 0
/**
* @ingroup iface_zwp_vsync_timing_v1
*/
#define ZWP_VSYNC_TIMING_V1_UPDATE_SINCE_VERSION 1
/**
* @ingroup iface_zwp_vsync_timing_v1
* Sends an update event to the client owning the resource.
* @param resource_ The client's resource
* @param timebase_l new vsync timebase (lower 32 bits)
* @param timebase_h new vsync timebase (upper 32 bits)
* @param interval_l new vsync interval (lower 32 bits)
* @param interval_h new vsync interval (upper 32 bits)
*/
static inline void
zwp_vsync_timing_v1_send_update(struct wl_resource *resource_, uint32_t timebase_l, uint32_t timebase_h, uint32_t interval_l, uint32_t interval_h)
{
wl_resource_post_event(resource_, ZWP_VSYNC_TIMING_V1_UPDATE, timebase_l, timebase_h, interval_l, interval_h);
}
#ifdef __cplusplus
}
#endif
......
......@@ -29,14 +29,11 @@
extern const struct wl_interface wl_surface_interface;
extern const struct wl_interface zcr_blending_v1_interface;
extern const struct wl_interface zwp_blending_v1_interface;
static const struct wl_interface *types[] = {
NULL,
&zcr_blending_v1_interface,
&wl_surface_interface,
&zwp_blending_v1_interface,
&wl_surface_interface,
};
static const struct wl_message zcr_alpha_compositing_v1_requests[] = {
......@@ -62,26 +59,3 @@ WL_EXPORT const struct wl_interface zcr_blending_v1_interface = {
0, NULL,
};
static const struct wl_message zwp_alpha_compositing_v1_requests[] = {
{ "destroy", "", types + 0 },
{ "get_blending", "no", types + 3 },
};
WL_EXPORT const struct wl_interface zwp_alpha_compositing_v1_interface = {
"zwp_alpha_compositing_v1", 1,
2, zwp_alpha_compositing_v1_requests,
0, NULL,
};
static const struct wl_message zwp_blending_v1_requests[] = {
{ "destroy", "", types + 0 },
{ "set_blending", "u", types + 0 },
{ "set_alpha", "f", types + 0 },
};
WL_EXPORT const struct wl_interface zwp_blending_v1_interface = {
"zwp_blending_v1", 1,
3, zwp_blending_v1_requests,
0, NULL,
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment