summaryrefslogtreecommitdiff
path: root/applets/wncklet/wayland-protocol/wlr-foreign-toplevel-management-unstable-v1-client.h
diff options
context:
space:
mode:
Diffstat (limited to 'applets/wncklet/wayland-protocol/wlr-foreign-toplevel-management-unstable-v1-client.h')
-rw-r--r--applets/wncklet/wayland-protocol/wlr-foreign-toplevel-management-unstable-v1-client.h594
1 files changed, 594 insertions, 0 deletions
diff --git a/applets/wncklet/wayland-protocol/wlr-foreign-toplevel-management-unstable-v1-client.h b/applets/wncklet/wayland-protocol/wlr-foreign-toplevel-management-unstable-v1-client.h
new file mode 100644
index 00000000..c5f28aab
--- /dev/null
+++ b/applets/wncklet/wayland-protocol/wlr-foreign-toplevel-management-unstable-v1-client.h
@@ -0,0 +1,594 @@
+/* Generated by wayland-scanner 1.18.0 */
+
+#ifndef WLR_FOREIGN_TOPLEVEL_MANAGEMENT_UNSTABLE_V1_CLIENT_PROTOCOL_H
+#define WLR_FOREIGN_TOPLEVEL_MANAGEMENT_UNSTABLE_V1_CLIENT_PROTOCOL_H
+
+#include <stdint.h>
+#include <stddef.h>
+#include "wayland-client-core.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * @page page_wlr_foreign_toplevel_management_unstable_v1 The wlr_foreign_toplevel_management_unstable_v1 protocol
+ * @section page_ifaces_wlr_foreign_toplevel_management_unstable_v1 Interfaces
+ * - @subpage page_iface_zwlr_foreign_toplevel_manager_v1 - list and control opened apps
+ * - @subpage page_iface_zwlr_foreign_toplevel_handle_v1 - an opened toplevel
+ * @section page_copyright_wlr_foreign_toplevel_management_unstable_v1 Copyright
+ * <pre>
+ *
+ * Copyright © 2018 Ilia Bozhinov
+ *
+ * Permission to use, copy, modify, distribute, and sell this
+ * software and its documentation for any purpose is hereby granted
+ * without fee, provided that the above copyright notice appear in
+ * all copies and that both that copyright notice and this permission
+ * notice appear in supporting documentation, and that the name of
+ * the copyright holders not be used in advertising or publicity
+ * pertaining to distribution of the software without specific,
+ * written prior permission. The copyright holders make no
+ * representations about the suitability of this software for any
+ * purpose. It is provided "as is" without express or implied
+ * warranty.
+ *
+ * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
+ * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
+ * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
+ * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
+ * THIS SOFTWARE.
+ * </pre>
+ */
+struct wl_output;
+struct wl_seat;
+struct wl_surface;
+struct zwlr_foreign_toplevel_handle_v1;
+struct zwlr_foreign_toplevel_manager_v1;
+
+/**
+ * @page page_iface_zwlr_foreign_toplevel_manager_v1 zwlr_foreign_toplevel_manager_v1
+ * @section page_iface_zwlr_foreign_toplevel_manager_v1_desc Description
+ *
+ * The purpose of this protocol is to enable the creation of taskbars
+ * and docks by providing them with a list of opened applications and
+ * letting them request certain actions on them, like maximizing, etc.
+ *
+ * After a client binds the zwlr_foreign_toplevel_manager_v1, each opened
+ * toplevel window will be sent via the toplevel event
+ * @section page_iface_zwlr_foreign_toplevel_manager_v1_api API
+ * See @ref iface_zwlr_foreign_toplevel_manager_v1.
+ */
+/**
+ * @defgroup iface_zwlr_foreign_toplevel_manager_v1 The zwlr_foreign_toplevel_manager_v1 interface
+ *
+ * The purpose of this protocol is to enable the creation of taskbars
+ * and docks by providing them with a list of opened applications and
+ * letting them request certain actions on them, like maximizing, etc.
+ *
+ * After a client binds the zwlr_foreign_toplevel_manager_v1, each opened
+ * toplevel window will be sent via the toplevel event
+ */
+extern const struct wl_interface zwlr_foreign_toplevel_manager_v1_interface;
+/**
+ * @page page_iface_zwlr_foreign_toplevel_handle_v1 zwlr_foreign_toplevel_handle_v1
+ * @section page_iface_zwlr_foreign_toplevel_handle_v1_desc Description
+ *
+ * A zwlr_foreign_toplevel_handle_v1 object represents an opened toplevel
+ * window. Each app may have multiple opened toplevels.
+ *
+ * Each toplevel has a list of outputs it is visible on, conveyed to the
+ * client with the output_enter and output_leave events.
+ * @section page_iface_zwlr_foreign_toplevel_handle_v1_api API
+ * See @ref iface_zwlr_foreign_toplevel_handle_v1.
+ */
+/**
+ * @defgroup iface_zwlr_foreign_toplevel_handle_v1 The zwlr_foreign_toplevel_handle_v1 interface
+ *
+ * A zwlr_foreign_toplevel_handle_v1 object represents an opened toplevel
+ * window. Each app may have multiple opened toplevels.
+ *
+ * Each toplevel has a list of outputs it is visible on, conveyed to the
+ * client with the output_enter and output_leave events.
+ */
+extern const struct wl_interface zwlr_foreign_toplevel_handle_v1_interface;
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_manager_v1
+ * @struct zwlr_foreign_toplevel_manager_v1_listener
+ */
+struct zwlr_foreign_toplevel_manager_v1_listener {
+ /**
+ * a toplevel has been created
+ *
+ * This event is emitted whenever a new toplevel window is
+ * created. It is emitted for all toplevels, regardless of the app
+ * that has created them.
+ *
+ * All initial details of the toplevel(title, app_id, states, etc.)
+ * will be sent immediately after this event via the corresponding
+ * events in zwlr_foreign_toplevel_handle_v1.
+ */
+ void (*toplevel)(void *data,
+ struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1,
+ struct zwlr_foreign_toplevel_handle_v1 *toplevel);
+ /**
+ * the compositor has finished with the toplevel manager
+ *
+ * This event indicates that the compositor is done sending
+ * events to the zwlr_foreign_toplevel_manager_v1. The server will
+ * destroy the object immediately after sending this request, so it
+ * will become invalid and the client should free any resources
+ * associated with it.
+ */
+ void (*finished)(void *data,
+ struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1);
+};
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_manager_v1
+ */
+static inline int
+zwlr_foreign_toplevel_manager_v1_add_listener(struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1,
+ const struct zwlr_foreign_toplevel_manager_v1_listener *listener, void *data)
+{
+ return wl_proxy_add_listener((struct wl_proxy *) zwlr_foreign_toplevel_manager_v1,
+ (void (**)(void)) listener, data);
+}
+
+#define ZWLR_FOREIGN_TOPLEVEL_MANAGER_V1_STOP 0
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_manager_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_MANAGER_V1_TOPLEVEL_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_manager_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_MANAGER_V1_FINISHED_SINCE_VERSION 1
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_manager_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_MANAGER_V1_STOP_SINCE_VERSION 1
+
+/** @ingroup iface_zwlr_foreign_toplevel_manager_v1 */
+static inline void
+zwlr_foreign_toplevel_manager_v1_set_user_data(struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1, void *user_data)
+{
+ wl_proxy_set_user_data((struct wl_proxy *) zwlr_foreign_toplevel_manager_v1, user_data);
+}
+
+/** @ingroup iface_zwlr_foreign_toplevel_manager_v1 */
+static inline void *
+zwlr_foreign_toplevel_manager_v1_get_user_data(struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1)
+{
+ return wl_proxy_get_user_data((struct wl_proxy *) zwlr_foreign_toplevel_manager_v1);
+}
+
+static inline uint32_t
+zwlr_foreign_toplevel_manager_v1_get_version(struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1)
+{
+ return wl_proxy_get_version((struct wl_proxy *) zwlr_foreign_toplevel_manager_v1);
+}
+
+/** @ingroup iface_zwlr_foreign_toplevel_manager_v1 */
+static inline void
+zwlr_foreign_toplevel_manager_v1_destroy(struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1)
+{
+ wl_proxy_destroy((struct wl_proxy *) zwlr_foreign_toplevel_manager_v1);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_manager_v1
+ *
+ * Indicates the client no longer wishes to receive events for new toplevels.
+ * However the compositor may emit further toplevel_created events, until
+ * the finished event is emitted.
+ *
+ * The client must not send any more requests after this one.
+ */
+static inline void
+zwlr_foreign_toplevel_manager_v1_stop(struct zwlr_foreign_toplevel_manager_v1 *zwlr_foreign_toplevel_manager_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_manager_v1,
+ ZWLR_FOREIGN_TOPLEVEL_MANAGER_V1_STOP);
+}
+
+#ifndef ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_ENUM
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_ENUM
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ * types of states on the toplevel
+ *
+ * The different states that a toplevel can have. These have the same meaning
+ * as the states with the same names defined in xdg-toplevel
+ */
+enum zwlr_foreign_toplevel_handle_v1_state {
+ /**
+ * the toplevel is maximized
+ */
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_MAXIMIZED = 0,
+ /**
+ * the toplevel is minimized
+ */
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_MINIMIZED = 1,
+ /**
+ * the toplevel is active
+ */
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_ACTIVATED = 2,
+ /**
+ * the toplevel is fullscreen
+ * @since 2
+ */
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_FULLSCREEN = 3,
+};
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_FULLSCREEN_SINCE_VERSION 2
+#endif /* ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_ENUM */
+
+#ifndef ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ERROR_ENUM
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ERROR_ENUM
+enum zwlr_foreign_toplevel_handle_v1_error {
+ /**
+ * the provided rectangle is invalid
+ */
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ERROR_INVALID_RECTANGLE = 0,
+};
+#endif /* ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ERROR_ENUM */
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ * @struct zwlr_foreign_toplevel_handle_v1_listener
+ */
+struct zwlr_foreign_toplevel_handle_v1_listener {
+ /**
+ * title change
+ *
+ * This event is emitted whenever the title of the toplevel
+ * changes.
+ */
+ void (*title)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1,
+ const char *title);
+ /**
+ * app-id change
+ *
+ * This event is emitted whenever the app-id of the toplevel
+ * changes.
+ */
+ void (*app_id)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1,
+ const char *app_id);
+ /**
+ * toplevel entered an output
+ *
+ * This event is emitted whenever the toplevel becomes visible on
+ * the given output. A toplevel may be visible on multiple outputs.
+ */
+ void (*output_enter)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1,
+ struct wl_output *output);
+ /**
+ * toplevel left an output
+ *
+ * This event is emitted whenever the toplevel stops being
+ * visible on the given output. It is guaranteed that an
+ * entered-output event with the same output has been emitted
+ * before this event.
+ */
+ void (*output_leave)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1,
+ struct wl_output *output);
+ /**
+ * the toplevel state changed
+ *
+ * This event is emitted immediately after the
+ * zlw_foreign_toplevel_handle_v1 is created and each time the
+ * toplevel state changes, either because of a compositor action or
+ * because of a request in this protocol.
+ */
+ void (*state)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1,
+ struct wl_array *state);
+ /**
+ * all information about the toplevel has been sent
+ *
+ * This event is sent after all changes in the toplevel state
+ * have been sent.
+ *
+ * This allows changes to the zwlr_foreign_toplevel_handle_v1
+ * properties to be seen as atomic, even if they happen via
+ * multiple events.
+ */
+ void (*done)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1);
+ /**
+ * this toplevel has been destroyed
+ *
+ * This event means the toplevel has been destroyed. It is
+ * guaranteed there won't be any more events for this
+ * zwlr_foreign_toplevel_handle_v1. The toplevel itself becomes
+ * inert so any requests will be ignored except the destroy
+ * request.
+ */
+ void (*closed)(void *data,
+ struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1);
+};
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+static inline int
+zwlr_foreign_toplevel_handle_v1_add_listener(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1,
+ const struct zwlr_foreign_toplevel_handle_v1_listener *listener, void *data)
+{
+ return wl_proxy_add_listener((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ (void (**)(void)) listener, data);
+}
+
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_MAXIMIZED 0
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_MAXIMIZED 1
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_MINIMIZED 2
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_MINIMIZED 3
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ACTIVATE 4
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_CLOSE 5
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_RECTANGLE 6
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_DESTROY 7
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_FULLSCREEN 8
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_FULLSCREEN 9
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_TITLE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_APP_ID_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_OUTPUT_ENTER_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_OUTPUT_LEAVE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_STATE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_DONE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_CLOSED_SINCE_VERSION 1
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_MAXIMIZED_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_MAXIMIZED_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_MINIMIZED_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_MINIMIZED_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ACTIVATE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_CLOSE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_RECTANGLE_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_DESTROY_SINCE_VERSION 1
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_FULLSCREEN_SINCE_VERSION 2
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ */
+#define ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_FULLSCREEN_SINCE_VERSION 2
+
+/** @ingroup iface_zwlr_foreign_toplevel_handle_v1 */
+static inline void
+zwlr_foreign_toplevel_handle_v1_set_user_data(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1, void *user_data)
+{
+ wl_proxy_set_user_data((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1, user_data);
+}
+
+/** @ingroup iface_zwlr_foreign_toplevel_handle_v1 */
+static inline void *
+zwlr_foreign_toplevel_handle_v1_get_user_data(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ return wl_proxy_get_user_data((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1);
+}
+
+static inline uint32_t
+zwlr_foreign_toplevel_handle_v1_get_version(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ return wl_proxy_get_version((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Requests that the toplevel be maximized. If the maximized state actually
+ * changes, this will be indicated by the state event.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_set_maximized(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_MAXIMIZED);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Requests that the toplevel be unmaximized. If the maximized state actually
+ * changes, this will be indicated by the state event.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_unset_maximized(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_MAXIMIZED);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Requests that the toplevel be minimized. If the minimized state actually
+ * changes, this will be indicated by the state event.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_set_minimized(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_MINIMIZED);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Requests that the toplevel be unminimized. If the minimized state actually
+ * changes, this will be indicated by the state event.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_unset_minimized(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_MINIMIZED);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Request that this toplevel be activated on the given seat.
+ * There is no guarantee the toplevel will be actually activated.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_activate(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1, struct wl_seat *seat)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_ACTIVATE, seat);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Send a request to the toplevel to close itself. The compositor would
+ * typically use a shell-specific method to carry out this request, for
+ * example by sending the xdg_toplevel.close event. However, this gives
+ * no guarantees the toplevel will actually be destroyed. If and when
+ * this happens, the zwlr_foreign_toplevel_handle_v1.closed event will
+ * be emitted.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_close(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_CLOSE);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * The rectangle of the surface specified in this request corresponds to
+ * the place where the app using this protocol represents the given toplevel.
+ * It can be used by the compositor as a hint for some operations, e.g
+ * minimizing. The client is however not required to set this, in which
+ * case the compositor is free to decide some default value.
+ *
+ * If the client specifies more than one rectangle, only the last one is
+ * considered.
+ *
+ * The dimensions are given in surface-local coordinates.
+ * Setting width=height=0 removes the already-set rectangle.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_set_rectangle(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1, struct wl_surface *surface, int32_t x, int32_t y, int32_t width, int32_t height)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_RECTANGLE, surface, x, y, width, height);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Destroys the zwlr_foreign_toplevel_handle_v1 object.
+ *
+ * This request should be called either when the client does not want to
+ * use the toplevel anymore or after the closed event to finalize the
+ * destruction of the object.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_destroy(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_DESTROY);
+
+ wl_proxy_destroy((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Requests that the toplevel be fullscreened on the given output. If the
+ * fullscreen state and/or the outputs the toplevel is visible on actually
+ * change, this will be indicated by the state and output_enter/leave
+ * events.
+ *
+ * The output parameter is only a hint to the compositor. Also, if output
+ * is NULL, the compositor should decide which output the toplevel will be
+ * fullscreened on, if at all.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_set_fullscreen(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1, struct wl_output *output)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_SET_FULLSCREEN, output);
+}
+
+/**
+ * @ingroup iface_zwlr_foreign_toplevel_handle_v1
+ *
+ * Requests that the toplevel be unfullscreened. If the fullscreen state
+ * actually changes, this will be indicated by the state event.
+ */
+static inline void
+zwlr_foreign_toplevel_handle_v1_unset_fullscreen(struct zwlr_foreign_toplevel_handle_v1 *zwlr_foreign_toplevel_handle_v1)
+{
+ wl_proxy_marshal((struct wl_proxy *) zwlr_foreign_toplevel_handle_v1,
+ ZWLR_FOREIGN_TOPLEVEL_HANDLE_V1_UNSET_FULLSCREEN);
+}
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif