| OLD | NEW |
| 1 /* Generated by wayland-scanner 1.11.0 */ | 1 /* Generated by wayland-scanner 1.11.0 */ |
| 2 | 2 |
| 3 #ifndef REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H | 3 #ifndef REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H |
| 4 #define REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H | 4 #define REMOTE_SHELL_UNSTABLE_V1_CLIENT_PROTOCOL_H |
| 5 | 5 |
| 6 #include <stdint.h> | 6 #include <stdint.h> |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include "wayland-client.h" | 8 #include "wayland-client.h" |
| 9 | 9 |
| 10 #ifdef __cplusplus | 10 #ifdef __cplusplus |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 * incompatible changes are done by bumping the version number in the protocol | 26 * incompatible changes are done by bumping the version number in the protocol |
| 27 * and interface names and resetting the interface version. Once the protocol | 27 * and interface names and resetting the interface version. Once the protocol |
| 28 * is to be declared stable, the 'z' prefix and the version number in the | 28 * is to be declared stable, the 'z' prefix and the version number in the |
| 29 * protocol and interface names are removed and the interface version number is | 29 * protocol and interface names are removed and the interface version number is |
| 30 * reset. | 30 * reset. |
| 31 * | 31 * |
| 32 * @section page_ifaces_remote_shell_unstable_v1 Interfaces | 32 * @section page_ifaces_remote_shell_unstable_v1 Interfaces |
| 33 * - @subpage page_iface_zcr_remote_shell_v1 - remote_shell | 33 * - @subpage page_iface_zcr_remote_shell_v1 - remote_shell |
| 34 * - @subpage page_iface_zcr_remote_surface_v1 - A desktop window | 34 * - @subpage page_iface_zcr_remote_surface_v1 - A desktop window |
| 35 * - @subpage page_iface_zcr_notification_surface_v1 - A notification window | 35 * - @subpage page_iface_zcr_notification_surface_v1 - A notification window |
| 36 * - @subpage page_iface_zwp_remote_shell_v1 - DEPRECATED | |
| 37 * - @subpage page_iface_zwp_remote_surface_v1 - DEPRECATED | |
| 38 * - @subpage page_iface_zwp_notification_surface_v1 - DEPRECATED | |
| 39 * @section page_copyright_remote_shell_unstable_v1 Copyright | 36 * @section page_copyright_remote_shell_unstable_v1 Copyright |
| 40 * <pre> | 37 * <pre> |
| 41 * | 38 * |
| 42 * Copyright 2016 The Chromium Authors. | 39 * Copyright 2016 The Chromium Authors. |
| 43 * | 40 * |
| 44 * Permission is hereby granted, free of charge, to any person obtaining a | 41 * Permission is hereby granted, free of charge, to any person obtaining a |
| 45 * copy of this software and associated documentation files (the "Software"), | 42 * copy of this software and associated documentation files (the "Software"), |
| 46 * to deal in the Software without restriction, including without limitation | 43 * to deal in the Software without restriction, including without limitation |
| 47 * the rights to use, copy, modify, merge, publish, distribute, sublicense, | 44 * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| 48 * and/or sell copies of the Software, and to permit persons to whom the | 45 * and/or sell copies of the Software, and to permit persons to whom the |
| 49 * Software is furnished to do so, subject to the following conditions: | 46 * Software is furnished to do so, subject to the following conditions: |
| 50 * | 47 * |
| 51 * The above copyright notice and this permission notice (including the next | 48 * The above copyright notice and this permission notice (including the next |
| 52 * paragraph) shall be included in all copies or substantial portions of the | 49 * paragraph) shall be included in all copies or substantial portions of the |
| 53 * Software. | 50 * Software. |
| 54 * | 51 * |
| 55 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | 52 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| 56 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | 53 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 57 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | 54 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| 58 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | 55 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| 59 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | 56 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| 60 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 57 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
| 61 * DEALINGS IN THE SOFTWARE. | 58 * DEALINGS IN THE SOFTWARE. |
| 62 * </pre> | 59 * </pre> |
| 63 */ | 60 */ |
| 64 struct wl_surface; | 61 struct wl_surface; |
| 65 struct zcr_notification_surface_v1; | 62 struct zcr_notification_surface_v1; |
| 66 struct zcr_remote_shell_v1; | 63 struct zcr_remote_shell_v1; |
| 67 struct zcr_remote_surface_v1; | 64 struct zcr_remote_surface_v1; |
| 68 struct zwp_notification_surface_v1; | |
| 69 struct zwp_remote_shell_v1; | |
| 70 struct zwp_remote_surface_v1; | |
| 71 | 65 |
| 72 /** | 66 /** |
| 73 * @page page_iface_zcr_remote_shell_v1 zcr_remote_shell_v1 | 67 * @page page_iface_zcr_remote_shell_v1 zcr_remote_shell_v1 |
| 74 * @section page_iface_zcr_remote_shell_v1_desc Description | 68 * @section page_iface_zcr_remote_shell_v1_desc Description |
| 75 * | 69 * |
| 76 * The global interface that allows clients to turn a wl_surface into a | 70 * The global interface that allows clients to turn a wl_surface into a |
| 77 * "real window" which is remotely managed but can be stacked, activated | 71 * "real window" which is remotely managed but can be stacked, activated |
| 78 * and made fullscreen by the user. | 72 * and made fullscreen by the user. |
| 79 * @section page_iface_zcr_remote_shell_v1_api API | 73 * @section page_iface_zcr_remote_shell_v1_api API |
| 80 * See @ref iface_zcr_remote_shell_v1. | 74 * See @ref iface_zcr_remote_shell_v1. |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 132 * @section page_iface_zcr_notification_surface_v1_api API | 126 * @section page_iface_zcr_notification_surface_v1_api API |
| 133 * See @ref iface_zcr_notification_surface_v1. | 127 * See @ref iface_zcr_notification_surface_v1. |
| 134 */ | 128 */ |
| 135 /** | 129 /** |
| 136 * @defgroup iface_zcr_notification_surface_v1 The zcr_notification_surface_v1 i
nterface | 130 * @defgroup iface_zcr_notification_surface_v1 The zcr_notification_surface_v1 i
nterface |
| 137 * | 131 * |
| 138 * An interface that may be implemented by a wl_surface to host | 132 * An interface that may be implemented by a wl_surface to host |
| 139 * notification contents. | 133 * notification contents. |
| 140 */ | 134 */ |
| 141 extern const struct wl_interface zcr_notification_surface_v1_interface; | 135 extern const struct wl_interface zcr_notification_surface_v1_interface; |
| 142 /** | |
| 143 * @page page_iface_zwp_remote_shell_v1 zwp_remote_shell_v1 | |
| 144 * @section page_iface_zwp_remote_shell_v1_desc Description | |
| 145 * | |
| 146 * The global interface that allows clients to turn a wl_surface into a | |
| 147 * "real window" which is remotely managed but can be stacked, activated | |
| 148 * and made fullscreen by the user. | |
| 149 * @section page_iface_zwp_remote_shell_v1_api API | |
| 150 * See @ref iface_zwp_remote_shell_v1. | |
| 151 */ | |
| 152 /** | |
| 153 * @defgroup iface_zwp_remote_shell_v1 The zwp_remote_shell_v1 interface | |
| 154 * | |
| 155 * The global interface that allows clients to turn a wl_surface into a | |
| 156 * "real window" which is remotely managed but can be stacked, activated | |
| 157 * and made fullscreen by the user. | |
| 158 */ | |
| 159 extern const struct wl_interface zwp_remote_shell_v1_interface; | |
| 160 /** | |
| 161 * @page page_iface_zwp_remote_surface_v1 zwp_remote_surface_v1 | |
| 162 * @section page_iface_zwp_remote_surface_v1_desc Description | |
| 163 * | |
| 164 * An interface that may be implemented by a wl_surface, for | |
| 165 * implementations that provide a desktop-style user interface | |
| 166 * and allows for remotely managed windows. | |
| 167 * | |
| 168 * It provides requests to treat surfaces like windows, allowing to set | |
| 169 * properties like app id and geometry. | |
| 170 * | |
| 171 * The client must call wl_surface.commit on the corresponding wl_surface | |
| 172 * for the remote_surface state to take effect. | |
| 173 * | |
| 174 * For a surface to be mapped by the compositor the client must have | |
| 175 * committed both an remote_surface state and a buffer. | |
| 176 * @section page_iface_zwp_remote_surface_v1_api API | |
| 177 * See @ref iface_zwp_remote_surface_v1. | |
| 178 */ | |
| 179 /** | |
| 180 * @defgroup iface_zwp_remote_surface_v1 The zwp_remote_surface_v1 interface | |
| 181 * | |
| 182 * An interface that may be implemented by a wl_surface, for | |
| 183 * implementations that provide a desktop-style user interface | |
| 184 * and allows for remotely managed windows. | |
| 185 * | |
| 186 * It provides requests to treat surfaces like windows, allowing to set | |
| 187 * properties like app id and geometry. | |
| 188 * | |
| 189 * The client must call wl_surface.commit on the corresponding wl_surface | |
| 190 * for the remote_surface state to take effect. | |
| 191 * | |
| 192 * For a surface to be mapped by the compositor the client must have | |
| 193 * committed both an remote_surface state and a buffer. | |
| 194 */ | |
| 195 extern const struct wl_interface zwp_remote_surface_v1_interface; | |
| 196 /** | |
| 197 * @page page_iface_zwp_notification_surface_v1 zwp_notification_surface_v1 | |
| 198 * @section page_iface_zwp_notification_surface_v1_desc Description | |
| 199 * | |
| 200 * An interface that may be implemented by a wl_surface to host | |
| 201 * notification contents. | |
| 202 * @section page_iface_zwp_notification_surface_v1_api API | |
| 203 * See @ref iface_zwp_notification_surface_v1. | |
| 204 */ | |
| 205 /** | |
| 206 * @defgroup iface_zwp_notification_surface_v1 The zwp_notification_surface_v1 i
nterface | |
| 207 * | |
| 208 * An interface that may be implemented by a wl_surface to host | |
| 209 * notification contents. | |
| 210 */ | |
| 211 extern const struct wl_interface zwp_notification_surface_v1_interface; | |
| 212 | 136 |
| 213 #ifndef ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM | 137 #ifndef ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM |
| 214 #define ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM | 138 #define ZCR_REMOTE_SHELL_V1_CONTAINER_ENUM |
| 215 /** | 139 /** |
| 216 * @ingroup iface_zcr_remote_shell_v1 | 140 * @ingroup iface_zcr_remote_shell_v1 |
| 217 * containers for remote surfaces | 141 * containers for remote surfaces |
| 218 * | 142 * |
| 219 * Determine how a remote surface should be stacked relative to other | 143 * Determine how a remote surface should be stacked relative to other |
| 220 * shell surfaces. | 144 * shell surfaces. |
| 221 */ | 145 */ |
| (...skipping 702 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 924 */ | 848 */ |
| 925 static inline void | 849 static inline void |
| 926 zcr_notification_surface_v1_destroy(struct zcr_notification_surface_v1 *zcr_noti
fication_surface_v1) | 850 zcr_notification_surface_v1_destroy(struct zcr_notification_surface_v1 *zcr_noti
fication_surface_v1) |
| 927 { | 851 { |
| 928 wl_proxy_marshal((struct wl_proxy *) zcr_notification_surface_v1, | 852 wl_proxy_marshal((struct wl_proxy *) zcr_notification_surface_v1, |
| 929 ZCR_NOTIFICATION_SURFACE_V1_DESTROY); | 853 ZCR_NOTIFICATION_SURFACE_V1_DESTROY); |
| 930 | 854 |
| 931 wl_proxy_destroy((struct wl_proxy *) zcr_notification_surface_v1); | 855 wl_proxy_destroy((struct wl_proxy *) zcr_notification_surface_v1); |
| 932 } | 856 } |
| 933 | 857 |
| 934 #ifndef ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM | |
| 935 #define ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM | |
| 936 /** | |
| 937 * @ingroup iface_zwp_remote_shell_v1 | |
| 938 * containers for remote surfaces | |
| 939 * | |
| 940 * Determine how a remote surface should be stacked relative to other | |
| 941 * shell surfaces. | |
| 942 */ | |
| 943 enum zwp_remote_shell_v1_container { | |
| 944 /** | |
| 945 * default container | |
| 946 */ | |
| 947 ZWP_REMOTE_SHELL_V1_CONTAINER_DEFAULT = 1, | |
| 948 /** | |
| 949 * system modal container | |
| 950 */ | |
| 951 ZWP_REMOTE_SHELL_V1_CONTAINER_OVERLAY = 2, | |
| 952 }; | |
| 953 #endif /* ZWP_REMOTE_SHELL_V1_CONTAINER_ENUM */ | |
| 954 | |
| 955 #ifndef ZWP_REMOTE_SHELL_V1_STATE_TYPE_ENUM | |
| 956 #define ZWP_REMOTE_SHELL_V1_STATE_TYPE_ENUM | |
| 957 /** | |
| 958 * @ingroup iface_zwp_remote_shell_v1 | |
| 959 * state types for remote surfaces | |
| 960 * | |
| 961 * Defines common show states for shell surfaces. | |
| 962 */ | |
| 963 enum zwp_remote_shell_v1_state_type { | |
| 964 /** | |
| 965 * normal window state | |
| 966 */ | |
| 967 ZWP_REMOTE_SHELL_V1_STATE_TYPE_NORMAL = 1, | |
| 968 /** | |
| 969 * minimized window state | |
| 970 */ | |
| 971 ZWP_REMOTE_SHELL_V1_STATE_TYPE_MINIMIZED = 2, | |
| 972 /** | |
| 973 * maximized window state | |
| 974 */ | |
| 975 ZWP_REMOTE_SHELL_V1_STATE_TYPE_MAXIMIZED = 3, | |
| 976 /** | |
| 977 * fullscreen window state | |
| 978 */ | |
| 979 ZWP_REMOTE_SHELL_V1_STATE_TYPE_FULLSCREEN = 4, | |
| 980 /** | |
| 981 * pinned window state | |
| 982 */ | |
| 983 ZWP_REMOTE_SHELL_V1_STATE_TYPE_PINNED = 5, | |
| 984 /** | |
| 985 * trusted pinned window state | |
| 986 */ | |
| 987 ZWP_REMOTE_SHELL_V1_STATE_TYPE_TRUSTED_PINNED = 6, | |
| 988 }; | |
| 989 #endif /* ZWP_REMOTE_SHELL_V1_STATE_TYPE_ENUM */ | |
| 990 | |
| 991 #ifndef ZWP_REMOTE_SHELL_V1_ERROR_ENUM | |
| 992 #define ZWP_REMOTE_SHELL_V1_ERROR_ENUM | |
| 993 enum zwp_remote_shell_v1_error { | |
| 994 /** | |
| 995 * given wl_surface has another role | |
| 996 */ | |
| 997 ZWP_REMOTE_SHELL_V1_ERROR_ROLE = 0, | |
| 998 /** | |
| 999 * invalid notification id | |
| 1000 */ | |
| 1001 ZWP_REMOTE_SHELL_V1_ERROR_INVALID_NOTIFICATION_ID = 1, | |
| 1002 }; | |
| 1003 #endif /* ZWP_REMOTE_SHELL_V1_ERROR_ENUM */ | |
| 1004 | |
| 1005 #ifndef ZWP_REMOTE_SHELL_V1_LAYOUT_MODE_ENUM | |
| 1006 #define ZWP_REMOTE_SHELL_V1_LAYOUT_MODE_ENUM | |
| 1007 /** | |
| 1008 * @ingroup iface_zwp_remote_shell_v1 | |
| 1009 * the layout mode | |
| 1010 * | |
| 1011 * Determine how a client should layout surfaces. | |
| 1012 */ | |
| 1013 enum zwp_remote_shell_v1_layout_mode { | |
| 1014 /** | |
| 1015 * multiple windows | |
| 1016 */ | |
| 1017 ZWP_REMOTE_SHELL_V1_LAYOUT_MODE_WINDOWED = 1, | |
| 1018 /** | |
| 1019 * restricted mode for tablet | |
| 1020 */ | |
| 1021 ZWP_REMOTE_SHELL_V1_LAYOUT_MODE_TABLET = 2, | |
| 1022 }; | |
| 1023 #endif /* ZWP_REMOTE_SHELL_V1_LAYOUT_MODE_ENUM */ | |
| 1024 | |
| 1025 /** | |
| 1026 * @ingroup iface_zwp_remote_shell_v1 | |
| 1027 * @struct zwp_remote_shell_v1_listener | |
| 1028 */ | |
| 1029 struct zwp_remote_shell_v1_listener { | |
| 1030 /** | |
| 1031 * suggests a re-layout of remote shell | |
| 1032 * | |
| 1033 * Obsolete: Suggests a re-layout of remote surface geometry. | |
| 1034 */ | |
| 1035 void (*configure)(void *data, | |
| 1036 struct zwp_remote_shell_v1 *zwp_remote_shell_v1, | |
| 1037 int32_t width, | |
| 1038 int32_t height, | |
| 1039 int32_t work_area_inset_left, | |
| 1040 int32_t work_area_inset_top, | |
| 1041 int32_t work_area_inset_right, | |
| 1042 int32_t work_area_inset_bottom); | |
| 1043 /** | |
| 1044 * activated surface changed | |
| 1045 * | |
| 1046 * Notifies client that the activated surface changed. | |
| 1047 */ | |
| 1048 void (*activated)(void *data, | |
| 1049 struct zwp_remote_shell_v1 *zwp_remote_shell_v1, | |
| 1050 struct wl_surface *gained_active, | |
| 1051 struct wl_surface *lost_active); | |
| 1052 /** | |
| 1053 * layout mode changed | |
| 1054 * | |
| 1055 * The shell_mode_changed event is sent by the compositor when | |
| 1056 * the shell mode was changed. | |
| 1057 * | |
| 1058 * This is an event to notify that the shell mode has switched. | |
| 1059 * @since 8 | |
| 1060 */ | |
| 1061 void (*layout_mode_changed)(void *data, | |
| 1062 struct zwp_remote_shell_v1 *zwp_remote_shell
_v1, | |
| 1063 uint32_t layout_mode); | |
| 1064 /** | |
| 1065 * suggests a re-configuration of remote shell | |
| 1066 * | |
| 1067 * Suggests a re-configuration of remote shell. | |
| 1068 * @since 9 | |
| 1069 */ | |
| 1070 void (*configuration_changed)(void *data, | |
| 1071 struct zwp_remote_shell_v1 *zwp_remote_she
ll_v1, | |
| 1072 int32_t width, | |
| 1073 int32_t height, | |
| 1074 int32_t transform, | |
| 1075 wl_fixed_t scale_factor, | |
| 1076 int32_t work_area_inset_left, | |
| 1077 int32_t work_area_inset_top, | |
| 1078 int32_t work_area_inset_right, | |
| 1079 int32_t work_area_inset_bottom, | |
| 1080 uint32_t layout_mode); | |
| 1081 }; | |
| 1082 | |
| 1083 /** | |
| 1084 * @ingroup zwp_remote_shell_v1_iface | |
| 1085 */ | |
| 1086 static inline int | |
| 1087 zwp_remote_shell_v1_add_listener(struct zwp_remote_shell_v1 *zwp_remote_shell_v1
, | |
| 1088 const struct zwp_remote_shell_v1_listener *list
ener, void *data) | |
| 1089 { | |
| 1090 return wl_proxy_add_listener((struct wl_proxy *) zwp_remote_shell_v1, | |
| 1091 (void (**)(void)) listener, data); | |
| 1092 } | |
| 1093 | |
| 1094 #define ZWP_REMOTE_SHELL_V1_DESTROY 0 | |
| 1095 #define ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE 1 | |
| 1096 #define ZWP_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE 2 | |
| 1097 | |
| 1098 /** | |
| 1099 * @ingroup iface_zwp_remote_shell_v1 | |
| 1100 */ | |
| 1101 #define ZWP_REMOTE_SHELL_V1_DESTROY_SINCE_VERSION 1 | |
| 1102 /** | |
| 1103 * @ingroup iface_zwp_remote_shell_v1 | |
| 1104 */ | |
| 1105 #define ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE_SINCE_VERSION 1 | |
| 1106 /** | |
| 1107 * @ingroup iface_zwp_remote_shell_v1 | |
| 1108 */ | |
| 1109 #define ZWP_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE_SINCE_VERSION 6 | |
| 1110 | |
| 1111 /** @ingroup iface_zwp_remote_shell_v1 */ | |
| 1112 static inline void | |
| 1113 zwp_remote_shell_v1_set_user_data(struct zwp_remote_shell_v1 *zwp_remote_shell_v
1, void *user_data) | |
| 1114 { | |
| 1115 wl_proxy_set_user_data((struct wl_proxy *) zwp_remote_shell_v1, user_dat
a); | |
| 1116 } | |
| 1117 | |
| 1118 /** @ingroup iface_zwp_remote_shell_v1 */ | |
| 1119 static inline void * | |
| 1120 zwp_remote_shell_v1_get_user_data(struct zwp_remote_shell_v1 *zwp_remote_shell_v
1) | |
| 1121 { | |
| 1122 return wl_proxy_get_user_data((struct wl_proxy *) zwp_remote_shell_v1); | |
| 1123 } | |
| 1124 | |
| 1125 static inline uint32_t | |
| 1126 zwp_remote_shell_v1_get_version(struct zwp_remote_shell_v1 *zwp_remote_shell_v1) | |
| 1127 { | |
| 1128 return wl_proxy_get_version((struct wl_proxy *) zwp_remote_shell_v1); | |
| 1129 } | |
| 1130 | |
| 1131 /** | |
| 1132 * @ingroup iface_zwp_remote_shell_v1 | |
| 1133 * | |
| 1134 * Destroy this remote_shell object. | |
| 1135 * | |
| 1136 * Destroying a bound remote_shell object while there are surfaces | |
| 1137 * still alive created by this remote_shell object instance is illegal | |
| 1138 * and will result in a protocol error. | |
| 1139 */ | |
| 1140 static inline void | |
| 1141 zwp_remote_shell_v1_destroy(struct zwp_remote_shell_v1 *zwp_remote_shell_v1) | |
| 1142 { | |
| 1143 wl_proxy_marshal((struct wl_proxy *) zwp_remote_shell_v1, | |
| 1144 ZWP_REMOTE_SHELL_V1_DESTROY); | |
| 1145 | |
| 1146 wl_proxy_destroy((struct wl_proxy *) zwp_remote_shell_v1); | |
| 1147 } | |
| 1148 | |
| 1149 /** | |
| 1150 * @ingroup iface_zwp_remote_shell_v1 | |
| 1151 * | |
| 1152 * This creates an remote_surface for the given surface and gives it the | |
| 1153 * remote_surface role. A wl_surface can only be given a remote_surface | |
| 1154 * role once. If get_remote_surface is called with a wl_surface that | |
| 1155 * already has an active remote_surface associated with it, or if it had | |
| 1156 * any other role, an error is raised. | |
| 1157 * | |
| 1158 * See the documentation of remote_surface for more details about what an | |
| 1159 * remote_surface is and how it is used. | |
| 1160 */ | |
| 1161 static inline struct zwp_remote_surface_v1 * | |
| 1162 zwp_remote_shell_v1_get_remote_surface(struct zwp_remote_shell_v1 *zwp_remote_sh
ell_v1, struct wl_surface *surface, uint32_t container) | |
| 1163 { | |
| 1164 struct wl_proxy *id; | |
| 1165 | |
| 1166 id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_remote_shell_v
1, | |
| 1167 ZWP_REMOTE_SHELL_V1_GET_REMOTE_SURFACE, &zwp_remote_sur
face_v1_interface, NULL, surface, container); | |
| 1168 | |
| 1169 return (struct zwp_remote_surface_v1 *) id; | |
| 1170 } | |
| 1171 | |
| 1172 /** | |
| 1173 * @ingroup iface_zwp_remote_shell_v1 | |
| 1174 * | |
| 1175 * Creates a notification_surface for the given surface, gives it the | |
| 1176 * notification_surface role and associated it with a notification id. | |
| 1177 */ | |
| 1178 static inline struct zwp_notification_surface_v1 * | |
| 1179 zwp_remote_shell_v1_get_notification_surface(struct zwp_remote_shell_v1 *zwp_rem
ote_shell_v1, struct wl_surface *surface, const char *notification_id) | |
| 1180 { | |
| 1181 struct wl_proxy *id; | |
| 1182 | |
| 1183 id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_remote_shell_v
1, | |
| 1184 ZWP_REMOTE_SHELL_V1_GET_NOTIFICATION_SURFACE, &zwp_noti
fication_surface_v1_interface, NULL, surface, notification_id); | |
| 1185 | |
| 1186 return (struct zwp_notification_surface_v1 *) id; | |
| 1187 } | |
| 1188 | |
| 1189 /** | |
| 1190 * @ingroup iface_zwp_remote_surface_v1 | |
| 1191 * @struct zwp_remote_surface_v1_listener | |
| 1192 */ | |
| 1193 struct zwp_remote_surface_v1_listener { | |
| 1194 /** | |
| 1195 * surface wants to be fullscreen | |
| 1196 * | |
| 1197 * The set_fullscreen event is sent by the compositor when the | |
| 1198 * user wants the surface to be made fullscreen. | |
| 1199 * | |
| 1200 * This is only a request that the user intends to make your window | |
| 1201 * fullscreen. The client may choose to ignore this request. | |
| 1202 */ | |
| 1203 void (*set_fullscreen)(void *data, | |
| 1204 struct zwp_remote_surface_v1 *zwp_remote_surface_
v1); | |
| 1205 /** | |
| 1206 * surface wants to be non-fullscreen | |
| 1207 * | |
| 1208 * The unset_fullscreen event is sent by the compositor when the | |
| 1209 * user wants the surface to be made non-fullscreen. | |
| 1210 * | |
| 1211 * This is only a request that the user intends to make your window | |
| 1212 * non-fullscreen. The client may choose to ignore this request. | |
| 1213 */ | |
| 1214 void (*unset_fullscreen)(void *data, | |
| 1215 struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1); | |
| 1216 /** | |
| 1217 * surface wants to be closed | |
| 1218 * | |
| 1219 * The close event is sent by the compositor when the user wants | |
| 1220 * the surface to be closed. This should be equivalent to the user | |
| 1221 * clicking the close button in client-side decorations, if your | |
| 1222 * application has any... | |
| 1223 * | |
| 1224 * This is only a request that the user intends to close your | |
| 1225 * window. The client may choose to ignore this request, or show a | |
| 1226 * dialog to ask the user to save their data... | |
| 1227 */ | |
| 1228 void (*close)(void *data, | |
| 1229 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); | |
| 1230 /** | |
| 1231 * surface wants to be maximized | |
| 1232 * | |
| 1233 * The set_maximized event is sent by the compositor when the | |
| 1234 * user wants the surface to be maximized. | |
| 1235 * | |
| 1236 * This is only a request that the user intends to maximized the | |
| 1237 * window. The client may choose to ignore this request. | |
| 1238 * @since 2 | |
| 1239 */ | |
| 1240 void (*set_maximized)(void *data, | |
| 1241 struct zwp_remote_surface_v1 *zwp_remote_surface_v
1); | |
| 1242 /** | |
| 1243 * surface wants to be restored | |
| 1244 * | |
| 1245 * The unset_maximized event is sent by the compositor when the | |
| 1246 * user wants the surface to be made visible. | |
| 1247 * | |
| 1248 * This is only a request that the user intends to make your window | |
| 1249 * visible. The client may choose to ignore this request. | |
| 1250 * @since 2 | |
| 1251 */ | |
| 1252 void (*unset_maximized)(void *data, | |
| 1253 struct zwp_remote_surface_v1 *zwp_remote_surface
_v1); | |
| 1254 /** | |
| 1255 * surface wants to be minimized | |
| 1256 * | |
| 1257 * The set_minimized event is sent by the compositor when the | |
| 1258 * user wants the surface to be minimized. | |
| 1259 * | |
| 1260 * This is only a request that the user intends to minimize the | |
| 1261 * window. The client may choose to ignore this request. | |
| 1262 * @since 2 | |
| 1263 */ | |
| 1264 void (*set_minimized)(void *data, | |
| 1265 struct zwp_remote_surface_v1 *zwp_remote_surface_v
1); | |
| 1266 /** | |
| 1267 * surface wants to be restored | |
| 1268 * | |
| 1269 * The unset_minimized event is sent by the compositor when the | |
| 1270 * user wants the surface to be made visible. | |
| 1271 * | |
| 1272 * This is only a request that the user intends to make your window | |
| 1273 * visible. The client may choose to ignore this request. | |
| 1274 * @since 2 | |
| 1275 */ | |
| 1276 void (*unset_minimized)(void *data, | |
| 1277 struct zwp_remote_surface_v1 *zwp_remote_surface
_v1); | |
| 1278 /** | |
| 1279 * surface was pinned | |
| 1280 * | |
| 1281 * The set_pinned event is sent by the compositor when the | |
| 1282 * surface was pinned. | |
| 1283 * | |
| 1284 * This is an event to notify that the window is pinned in | |
| 1285 * compositor. The pin may be triggered by a client's request, or | |
| 1286 * some user action directly handled by the compositor. The client | |
| 1287 * may choose to ignore this event. | |
| 1288 * @since 3 | |
| 1289 */ | |
| 1290 void (*set_pinned)(void *data, | |
| 1291 struct zwp_remote_surface_v1 *zwp_remote_surface_v1); | |
| 1292 /** | |
| 1293 * surface was unpinned | |
| 1294 * | |
| 1295 * The unset_pinned event is sent by the compositor when the | |
| 1296 * surface was unpinned. | |
| 1297 * | |
| 1298 * This is an event to notify that the window is unpinned in | |
| 1299 * compositor. The unpin may be triggered by a client's request, or | |
| 1300 * some user action directly handled by the compositor. The client | |
| 1301 * may choose to ignore this event. | |
| 1302 * @since 3 | |
| 1303 */ | |
| 1304 void (*unset_pinned)(void *data, | |
| 1305 struct zwp_remote_surface_v1 *zwp_remote_surface_v1
); | |
| 1306 /** | |
| 1307 * surface state type changed | |
| 1308 * | |
| 1309 * The state_type_changed event is sent by the compositor when | |
| 1310 * the surface state changed. | |
| 1311 * | |
| 1312 * This is an event to notify that the window state changed in | |
| 1313 * compositor. The state change may be triggered by a client's | |
| 1314 * request, or some user action directly handled by the compositor. | |
| 1315 * The client may choose to ignore this event. | |
| 1316 * @since 7 | |
| 1317 */ | |
| 1318 void (*state_type_changed)(void *data, | |
| 1319 struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1, | |
| 1320 uint32_t state_type); | |
| 1321 }; | |
| 1322 | |
| 1323 /** | |
| 1324 * @ingroup zwp_remote_surface_v1_iface | |
| 1325 */ | |
| 1326 static inline int | |
| 1327 zwp_remote_surface_v1_add_listener(struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1, | |
| 1328 const struct zwp_remote_surface_v1_listener *
listener, void *data) | |
| 1329 { | |
| 1330 return wl_proxy_add_listener((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1331 (void (**)(void)) listener, data); | |
| 1332 } | |
| 1333 | |
| 1334 #define ZWP_REMOTE_SURFACE_V1_DESTROY 0 | |
| 1335 #define ZWP_REMOTE_SURFACE_V1_SET_APP_ID 1 | |
| 1336 #define ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY 2 | |
| 1337 #define ZWP_REMOTE_SURFACE_V1_SET_SCALE 3 | |
| 1338 #define ZWP_REMOTE_SURFACE_V1_FULLSCREEN 4 | |
| 1339 #define ZWP_REMOTE_SURFACE_V1_MAXIMIZE 5 | |
| 1340 #define ZWP_REMOTE_SURFACE_V1_MINIMIZE 6 | |
| 1341 #define ZWP_REMOTE_SURFACE_V1_RESTORE 7 | |
| 1342 #define ZWP_REMOTE_SURFACE_V1_PIN 8 | |
| 1343 #define ZWP_REMOTE_SURFACE_V1_UNPIN 9 | |
| 1344 #define ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN 10 | |
| 1345 #define ZWP_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW 11 | |
| 1346 #define ZWP_REMOTE_SURFACE_V1_SET_TITLE 12 | |
| 1347 #define ZWP_REMOTE_SURFACE_V1_SET_TOP_INSET 13 | |
| 1348 #define ZWP_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL 14 | |
| 1349 #define ZWP_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL 15 | |
| 1350 #define ZWP_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND_OPACITY 16 | |
| 1351 #define ZWP_REMOTE_SURFACE_V1_ACTIVATE 17 | |
| 1352 #define ZWP_REMOTE_SURFACE_V1_PIN_WITH_TRUSTED_FLAG 18 | |
| 1353 | |
| 1354 /** | |
| 1355 * @ingroup iface_zwp_remote_surface_v1 | |
| 1356 */ | |
| 1357 #define ZWP_REMOTE_SURFACE_V1_DESTROY_SINCE_VERSION 1 | |
| 1358 /** | |
| 1359 * @ingroup iface_zwp_remote_surface_v1 | |
| 1360 */ | |
| 1361 #define ZWP_REMOTE_SURFACE_V1_SET_APP_ID_SINCE_VERSION 1 | |
| 1362 /** | |
| 1363 * @ingroup iface_zwp_remote_surface_v1 | |
| 1364 */ | |
| 1365 #define ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY_SINCE_VERSION 1 | |
| 1366 /** | |
| 1367 * @ingroup iface_zwp_remote_surface_v1 | |
| 1368 */ | |
| 1369 #define ZWP_REMOTE_SURFACE_V1_SET_SCALE_SINCE_VERSION 1 | |
| 1370 /** | |
| 1371 * @ingroup iface_zwp_remote_surface_v1 | |
| 1372 */ | |
| 1373 #define ZWP_REMOTE_SURFACE_V1_FULLSCREEN_SINCE_VERSION 2 | |
| 1374 /** | |
| 1375 * @ingroup iface_zwp_remote_surface_v1 | |
| 1376 */ | |
| 1377 #define ZWP_REMOTE_SURFACE_V1_MAXIMIZE_SINCE_VERSION 2 | |
| 1378 /** | |
| 1379 * @ingroup iface_zwp_remote_surface_v1 | |
| 1380 */ | |
| 1381 #define ZWP_REMOTE_SURFACE_V1_MINIMIZE_SINCE_VERSION 2 | |
| 1382 /** | |
| 1383 * @ingroup iface_zwp_remote_surface_v1 | |
| 1384 */ | |
| 1385 #define ZWP_REMOTE_SURFACE_V1_RESTORE_SINCE_VERSION 2 | |
| 1386 /** | |
| 1387 * @ingroup iface_zwp_remote_surface_v1 | |
| 1388 */ | |
| 1389 #define ZWP_REMOTE_SURFACE_V1_PIN_SINCE_VERSION 3 | |
| 1390 /** | |
| 1391 * @ingroup iface_zwp_remote_surface_v1 | |
| 1392 */ | |
| 1393 #define ZWP_REMOTE_SURFACE_V1_UNPIN_SINCE_VERSION 3 | |
| 1394 /** | |
| 1395 * @ingroup iface_zwp_remote_surface_v1 | |
| 1396 */ | |
| 1397 #define ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN_SINCE_VERSION 3 | |
| 1398 /** | |
| 1399 * @ingroup iface_zwp_remote_surface_v1 | |
| 1400 */ | |
| 1401 #define ZWP_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_SINCE_VERSION 4 | |
| 1402 /** | |
| 1403 * @ingroup iface_zwp_remote_surface_v1 | |
| 1404 */ | |
| 1405 #define ZWP_REMOTE_SURFACE_V1_SET_TITLE_SINCE_VERSION 5 | |
| 1406 /** | |
| 1407 * @ingroup iface_zwp_remote_surface_v1 | |
| 1408 */ | |
| 1409 #define ZWP_REMOTE_SURFACE_V1_SET_TOP_INSET_SINCE_VERSION 5 | |
| 1410 /** | |
| 1411 * @ingroup iface_zwp_remote_surface_v1 | |
| 1412 */ | |
| 1413 #define ZWP_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL_SINCE_VERSION 8 | |
| 1414 /** | |
| 1415 * @ingroup iface_zwp_remote_surface_v1 | |
| 1416 */ | |
| 1417 #define ZWP_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL_SINCE_VERSION 8 | |
| 1418 /** | |
| 1419 * @ingroup iface_zwp_remote_surface_v1 | |
| 1420 */ | |
| 1421 #define ZWP_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND_OPACITY_SINCE_VE
RSION 9 | |
| 1422 /** | |
| 1423 * @ingroup iface_zwp_remote_surface_v1 | |
| 1424 */ | |
| 1425 #define ZWP_REMOTE_SURFACE_V1_ACTIVATE_SINCE_VERSION 10 | |
| 1426 /** | |
| 1427 * @ingroup iface_zwp_remote_surface_v1 | |
| 1428 */ | |
| 1429 #define ZWP_REMOTE_SURFACE_V1_PIN_WITH_TRUSTED_FLAG_SINCE_VERSION 11 | |
| 1430 | |
| 1431 /** @ingroup iface_zwp_remote_surface_v1 */ | |
| 1432 static inline void | |
| 1433 zwp_remote_surface_v1_set_user_data(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1, void *user_data) | |
| 1434 { | |
| 1435 wl_proxy_set_user_data((struct wl_proxy *) zwp_remote_surface_v1, user_d
ata); | |
| 1436 } | |
| 1437 | |
| 1438 /** @ingroup iface_zwp_remote_surface_v1 */ | |
| 1439 static inline void * | |
| 1440 zwp_remote_surface_v1_get_user_data(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1) | |
| 1441 { | |
| 1442 return wl_proxy_get_user_data((struct wl_proxy *) zwp_remote_surface_v1)
; | |
| 1443 } | |
| 1444 | |
| 1445 static inline uint32_t | |
| 1446 zwp_remote_surface_v1_get_version(struct zwp_remote_surface_v1 *zwp_remote_surfa
ce_v1) | |
| 1447 { | |
| 1448 return wl_proxy_get_version((struct wl_proxy *) zwp_remote_surface_v1); | |
| 1449 } | |
| 1450 | |
| 1451 /** | |
| 1452 * @ingroup iface_zwp_remote_surface_v1 | |
| 1453 * | |
| 1454 * Unmap and destroy the window. The window will be effectively | |
| 1455 * hidden from the user's point of view, and all state will be lost. | |
| 1456 */ | |
| 1457 static inline void | |
| 1458 zwp_remote_surface_v1_destroy(struct zwp_remote_surface_v1 *zwp_remote_surface_v
1) | |
| 1459 { | |
| 1460 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1461 ZWP_REMOTE_SURFACE_V1_DESTROY); | |
| 1462 | |
| 1463 wl_proxy_destroy((struct wl_proxy *) zwp_remote_surface_v1); | |
| 1464 } | |
| 1465 | |
| 1466 /** | |
| 1467 * @ingroup iface_zwp_remote_surface_v1 | |
| 1468 * | |
| 1469 * Set an application identifier for the surface. | |
| 1470 */ | |
| 1471 static inline void | |
| 1472 zwp_remote_surface_v1_set_app_id(struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1, const char *app_id) | |
| 1473 { | |
| 1474 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1475 ZWP_REMOTE_SURFACE_V1_SET_APP_ID, app_id); | |
| 1476 } | |
| 1477 | |
| 1478 /** | |
| 1479 * @ingroup iface_zwp_remote_surface_v1 | |
| 1480 * | |
| 1481 * The window geometry of a window is its "visible bounds" from the | |
| 1482 * user's perspective. Client-side decorations often have invisible | |
| 1483 * portions like drop-shadows which should be ignored for the | |
| 1484 * purposes of aligning, placing and constraining windows. | |
| 1485 * | |
| 1486 * The window geometry is double buffered, and will be applied at the | |
| 1487 * time wl_surface.commit of the corresponding wl_surface is called. | |
| 1488 * | |
| 1489 * Once the window geometry of the surface is set once, it is not | |
| 1490 * possible to unset it, and it will remain the same until | |
| 1491 * set_window_geometry is called again, even if a new subsurface or | |
| 1492 * buffer is attached. | |
| 1493 * | |
| 1494 * If never set, the value is the full bounds of the output. This | |
| 1495 * updates dynamically on every commit. | |
| 1496 * | |
| 1497 * The arguments are given in the output coordinate space. | |
| 1498 * | |
| 1499 * The width and height must be greater than zero. | |
| 1500 */ | |
| 1501 static inline void | |
| 1502 zwp_remote_surface_v1_set_window_geometry(struct zwp_remote_surface_v1 *zwp_remo
te_surface_v1, int32_t x, int32_t y, int32_t width, int32_t height) | |
| 1503 { | |
| 1504 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1505 ZWP_REMOTE_SURFACE_V1_SET_WINDOW_GEOMETRY, x, y, width,
height); | |
| 1506 } | |
| 1507 | |
| 1508 /** | |
| 1509 * @ingroup iface_zwp_remote_surface_v1 | |
| 1510 * | |
| 1511 * Set a scale factor that will be applied to surface and all descendants. | |
| 1512 */ | |
| 1513 static inline void | |
| 1514 zwp_remote_surface_v1_set_scale(struct zwp_remote_surface_v1 *zwp_remote_surface
_v1, wl_fixed_t scale) | |
| 1515 { | |
| 1516 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1517 ZWP_REMOTE_SURFACE_V1_SET_SCALE, scale); | |
| 1518 } | |
| 1519 | |
| 1520 /** | |
| 1521 * @ingroup iface_zwp_remote_surface_v1 | |
| 1522 * | |
| 1523 * Request that surface is made fullscreen. | |
| 1524 * | |
| 1525 * This is only a request that the window should be made fullscreen. | |
| 1526 * The compositor may choose to ignore this request. The client should | |
| 1527 * listen to set_fullscreen events to determine if the window was | |
| 1528 * made fullscreen or not. | |
| 1529 */ | |
| 1530 static inline void | |
| 1531 zwp_remote_surface_v1_fullscreen(struct zwp_remote_surface_v1 *zwp_remote_surfac
e_v1) | |
| 1532 { | |
| 1533 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1534 ZWP_REMOTE_SURFACE_V1_FULLSCREEN); | |
| 1535 } | |
| 1536 | |
| 1537 /** | |
| 1538 * @ingroup iface_zwp_remote_surface_v1 | |
| 1539 * | |
| 1540 * Request that surface is maximized. The window geometry will be updated | |
| 1541 * to whatever the compositor finds appropriate for a maximized window. | |
| 1542 * | |
| 1543 * This is only a request that the window should be maximized. The | |
| 1544 * compositor may choose to ignore this request. The client should | |
| 1545 * listen to set_maximized events to determine if the window was | |
| 1546 * maximized or not. | |
| 1547 */ | |
| 1548 static inline void | |
| 1549 zwp_remote_surface_v1_maximize(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1) | |
| 1550 { | |
| 1551 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1552 ZWP_REMOTE_SURFACE_V1_MAXIMIZE); | |
| 1553 } | |
| 1554 | |
| 1555 /** | |
| 1556 * @ingroup iface_zwp_remote_surface_v1 | |
| 1557 * | |
| 1558 * Request that surface is minimized. | |
| 1559 * | |
| 1560 * This is only a request that the window should be minimized. The | |
| 1561 * compositor may choose to ignore this request. The client should | |
| 1562 * listen to set_minimized events to determine if the window was | |
| 1563 * minimized or not. | |
| 1564 */ | |
| 1565 static inline void | |
| 1566 zwp_remote_surface_v1_minimize(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1) | |
| 1567 { | |
| 1568 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1569 ZWP_REMOTE_SURFACE_V1_MINIMIZE); | |
| 1570 } | |
| 1571 | |
| 1572 /** | |
| 1573 * @ingroup iface_zwp_remote_surface_v1 | |
| 1574 * | |
| 1575 * Request that surface is restored. This restores the window geometry | |
| 1576 * to what it was before the window was minimized, maximized or made | |
| 1577 * fullscreen. | |
| 1578 * | |
| 1579 * This is only a request that the window should be restored. The | |
| 1580 * compositor may choose to ignore this request. The client should | |
| 1581 * listen to unset_maximized, unset_minimize and unset_fullscreen | |
| 1582 * events to determine if the window was restored or not. | |
| 1583 */ | |
| 1584 static inline void | |
| 1585 zwp_remote_surface_v1_restore(struct zwp_remote_surface_v1 *zwp_remote_surface_v
1) | |
| 1586 { | |
| 1587 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1588 ZWP_REMOTE_SURFACE_V1_RESTORE); | |
| 1589 } | |
| 1590 | |
| 1591 /** | |
| 1592 * @ingroup iface_zwp_remote_surface_v1 | |
| 1593 * | |
| 1594 * Request that surface is pinned. | |
| 1595 * | |
| 1596 * This is only a request that the window should be pinned. | |
| 1597 * The compositor may choose to ignore this request. The client should | |
| 1598 * listen to set_pinned events to determine if the window was | |
| 1599 * pinned or not. | |
| 1600 */ | |
| 1601 static inline void | |
| 1602 zwp_remote_surface_v1_pin(struct zwp_remote_surface_v1 *zwp_remote_surface_v1) | |
| 1603 { | |
| 1604 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1605 ZWP_REMOTE_SURFACE_V1_PIN); | |
| 1606 } | |
| 1607 | |
| 1608 /** | |
| 1609 * @ingroup iface_zwp_remote_surface_v1 | |
| 1610 * | |
| 1611 * Request that surface is unpinned. | |
| 1612 * | |
| 1613 * This is only a request that the window should be unpinned. | |
| 1614 * The compositor may choose to ignore this request. The client should | |
| 1615 * listen to unset_pinned events to determine if the window was | |
| 1616 * unpinned or not. | |
| 1617 */ | |
| 1618 static inline void | |
| 1619 zwp_remote_surface_v1_unpin(struct zwp_remote_surface_v1 *zwp_remote_surface_v1) | |
| 1620 { | |
| 1621 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1622 ZWP_REMOTE_SURFACE_V1_UNPIN); | |
| 1623 } | |
| 1624 | |
| 1625 /** | |
| 1626 * @ingroup iface_zwp_remote_surface_v1 | |
| 1627 * | |
| 1628 * Request that surface is made unfullscreen. | |
| 1629 * | |
| 1630 * This is only a request that the window should be made unfullscreen. | |
| 1631 * The compositor may choose to ignore this request. The client should | |
| 1632 * listen to unset_fullscreen events to determine if the window was | |
| 1633 * made unfullscreen or not. | |
| 1634 */ | |
| 1635 static inline void | |
| 1636 zwp_remote_surface_v1_unfullscreen(struct zwp_remote_surface_v1 *zwp_remote_surf
ace_v1) | |
| 1637 { | |
| 1638 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1639 ZWP_REMOTE_SURFACE_V1_UNFULLSCREEN); | |
| 1640 } | |
| 1641 | |
| 1642 /** | |
| 1643 * @ingroup iface_zwp_remote_surface_v1 | |
| 1644 * | |
| 1645 * Request that surface needs a rectangular shadow. | |
| 1646 * | |
| 1647 * This is only a request that the surface should have a rectangular | |
| 1648 * shadow. The compositor may choose to ignore this request. | |
| 1649 * | |
| 1650 * The arguments are given in the output coordinate space and specifies | |
| 1651 * the inner bounds of the shadow. | |
| 1652 * | |
| 1653 * The arguments are given in the output coordinate space. | |
| 1654 * Specifying zero width and height will disable the shadow. | |
| 1655 */ | |
| 1656 static inline void | |
| 1657 zwp_remote_surface_v1_set_rectangular_shadow(struct zwp_remote_surface_v1 *zwp_r
emote_surface_v1, int32_t x, int32_t y, int32_t width, int32_t height) | |
| 1658 { | |
| 1659 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1660 ZWP_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW, x, y, wid
th, height); | |
| 1661 } | |
| 1662 | |
| 1663 /** | |
| 1664 * @ingroup iface_zwp_remote_surface_v1 | |
| 1665 * | |
| 1666 * Set a short title for the surface. | |
| 1667 * | |
| 1668 * This string may be used to identify the surface in a task bar, | |
| 1669 * window list, or other user interface elements provided by the | |
| 1670 * compositor. | |
| 1671 * | |
| 1672 * The string must be encoded in UTF-8. | |
| 1673 */ | |
| 1674 static inline void | |
| 1675 zwp_remote_surface_v1_set_title(struct zwp_remote_surface_v1 *zwp_remote_surface
_v1, const char *title) | |
| 1676 { | |
| 1677 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1678 ZWP_REMOTE_SURFACE_V1_SET_TITLE, title); | |
| 1679 } | |
| 1680 | |
| 1681 /** | |
| 1682 * @ingroup iface_zwp_remote_surface_v1 | |
| 1683 * | |
| 1684 * Set distance from the top of the surface to the contents. | |
| 1685 * | |
| 1686 * This distance typically represents the size of the window caption. | |
| 1687 */ | |
| 1688 static inline void | |
| 1689 zwp_remote_surface_v1_set_top_inset(struct zwp_remote_surface_v1 *zwp_remote_sur
face_v1, int32_t height) | |
| 1690 { | |
| 1691 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1692 ZWP_REMOTE_SURFACE_V1_SET_TOP_INSET, height); | |
| 1693 } | |
| 1694 | |
| 1695 /** | |
| 1696 * @ingroup iface_zwp_remote_surface_v1 | |
| 1697 * | |
| 1698 * Suggests a surface should become system modal. | |
| 1699 */ | |
| 1700 static inline void | |
| 1701 zwp_remote_surface_v1_set_system_modal(struct zwp_remote_surface_v1 *zwp_remote_
surface_v1) | |
| 1702 { | |
| 1703 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1704 ZWP_REMOTE_SURFACE_V1_SET_SYSTEM_MODAL); | |
| 1705 } | |
| 1706 | |
| 1707 /** | |
| 1708 * @ingroup iface_zwp_remote_surface_v1 | |
| 1709 * | |
| 1710 * Suggests a surface should become non system modal. | |
| 1711 */ | |
| 1712 static inline void | |
| 1713 zwp_remote_surface_v1_unset_system_modal(struct zwp_remote_surface_v1 *zwp_remot
e_surface_v1) | |
| 1714 { | |
| 1715 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1716 ZWP_REMOTE_SURFACE_V1_UNSET_SYSTEM_MODAL); | |
| 1717 } | |
| 1718 | |
| 1719 /** | |
| 1720 * @ingroup iface_zwp_remote_surface_v1 | |
| 1721 * | |
| 1722 * Suggests the window's background opacity when the shadow is requested. | |
| 1723 */ | |
| 1724 static inline void | |
| 1725 zwp_remote_surface_v1_set_rectangular_shadow_background_opacity(struct zwp_remot
e_surface_v1 *zwp_remote_surface_v1, wl_fixed_t opacity) | |
| 1726 { | |
| 1727 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1728 ZWP_REMOTE_SURFACE_V1_SET_RECTANGULAR_SHADOW_BACKGROUND
_OPACITY, opacity); | |
| 1729 } | |
| 1730 | |
| 1731 /** | |
| 1732 * @ingroup iface_zwp_remote_surface_v1 | |
| 1733 * | |
| 1734 * Make the surface active and bring it to the front. | |
| 1735 */ | |
| 1736 static inline void | |
| 1737 zwp_remote_surface_v1_activate(struct zwp_remote_surface_v1 *zwp_remote_surface_
v1, uint32_t serial) | |
| 1738 { | |
| 1739 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1740 ZWP_REMOTE_SURFACE_V1_ACTIVATE, serial); | |
| 1741 } | |
| 1742 | |
| 1743 /** | |
| 1744 * @ingroup iface_zwp_remote_surface_v1 | |
| 1745 * | |
| 1746 * Request that surface is pinned. | |
| 1747 * | |
| 1748 * This is only a request that the window should be pinned. | |
| 1749 * The compositor may choose to ignore this request. The client should | |
| 1750 * listen to set_pinned events to determine if the window was | |
| 1751 * pinned or not. If trusted flag is non-zero, the app can prevent users | |
| 1752 * from exiting the pinned mode. | |
| 1753 */ | |
| 1754 static inline void | |
| 1755 zwp_remote_surface_v1_pin_with_trusted_flag(struct zwp_remote_surface_v1 *zwp_re
mote_surface_v1, int32_t trusted) | |
| 1756 { | |
| 1757 wl_proxy_marshal((struct wl_proxy *) zwp_remote_surface_v1, | |
| 1758 ZWP_REMOTE_SURFACE_V1_PIN_WITH_TRUSTED_FLAG, trusted); | |
| 1759 } | |
| 1760 | |
| 1761 #define ZWP_NOTIFICATION_SURFACE_V1_DESTROY 0 | |
| 1762 | |
| 1763 /** | |
| 1764 * @ingroup iface_zwp_notification_surface_v1 | |
| 1765 */ | |
| 1766 #define ZWP_NOTIFICATION_SURFACE_V1_DESTROY_SINCE_VERSION 1 | |
| 1767 | |
| 1768 /** @ingroup iface_zwp_notification_surface_v1 */ | |
| 1769 static inline void | |
| 1770 zwp_notification_surface_v1_set_user_data(struct zwp_notification_surface_v1 *zw
p_notification_surface_v1, void *user_data) | |
| 1771 { | |
| 1772 wl_proxy_set_user_data((struct wl_proxy *) zwp_notification_surface_v1,
user_data); | |
| 1773 } | |
| 1774 | |
| 1775 /** @ingroup iface_zwp_notification_surface_v1 */ | |
| 1776 static inline void * | |
| 1777 zwp_notification_surface_v1_get_user_data(struct zwp_notification_surface_v1 *zw
p_notification_surface_v1) | |
| 1778 { | |
| 1779 return wl_proxy_get_user_data((struct wl_proxy *) zwp_notification_surfa
ce_v1); | |
| 1780 } | |
| 1781 | |
| 1782 static inline uint32_t | |
| 1783 zwp_notification_surface_v1_get_version(struct zwp_notification_surface_v1 *zwp_
notification_surface_v1) | |
| 1784 { | |
| 1785 return wl_proxy_get_version((struct wl_proxy *) zwp_notification_surface
_v1); | |
| 1786 } | |
| 1787 | |
| 1788 /** | |
| 1789 * @ingroup iface_zwp_notification_surface_v1 | |
| 1790 * | |
| 1791 * Unmap and destroy the notification surface. | |
| 1792 */ | |
| 1793 static inline void | |
| 1794 zwp_notification_surface_v1_destroy(struct zwp_notification_surface_v1 *zwp_noti
fication_surface_v1) | |
| 1795 { | |
| 1796 wl_proxy_marshal((struct wl_proxy *) zwp_notification_surface_v1, | |
| 1797 ZWP_NOTIFICATION_SURFACE_V1_DESTROY); | |
| 1798 | |
| 1799 wl_proxy_destroy((struct wl_proxy *) zwp_notification_surface_v1); | |
| 1800 } | |
| 1801 | |
| 1802 #ifdef __cplusplus | 858 #ifdef __cplusplus |
| 1803 } | 859 } |
| 1804 #endif | 860 #endif |
| 1805 | 861 |
| 1806 #endif | 862 #endif |
| OLD | NEW |