@ -24,7 +24,7 @@
//
//========================================================================
# include <wayland-client.h>
# include <wayland-client-core .h>
# include <xkbcommon/xkbcommon.h>
# ifdef HAVE_XKBCOMMON_COMPOSE_H
# include <xkbcommon/xkbcommon-compose.h>
@ -54,12 +54,80 @@ typedef VkBool32 (APIENTRY *PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR
# endif
# include "xkb_unicode.h"
# include "wayland-xdg-shell-client-protocol.h"
# include "wayland-xdg-decoration-client-protocol.h"
# include "wayland-viewporter-client-protocol.h"
# include "wayland-relative-pointer-unstable-v1-client-protocol.h"
# include "wayland-pointer-constraints-unstable-v1-client-protocol.h"
# include "wayland-idle-inhibit-unstable-v1-client-protocol.h"
typedef int ( * PFN_wl_display_flush ) ( struct wl_display * display ) ;
typedef void ( * PFN_wl_display_cancel_read ) ( struct wl_display * display ) ;
typedef int ( * PFN_wl_display_dispatch_pending ) ( struct wl_display * display ) ;
typedef int ( * PFN_wl_display_read_events ) ( struct wl_display * display ) ;
typedef struct wl_display * ( * PFN_wl_display_connect ) ( const char * ) ;
typedef void ( * PFN_wl_display_disconnect ) ( struct wl_display * ) ;
typedef int ( * PFN_wl_display_roundtrip ) ( struct wl_display * ) ;
typedef int ( * PFN_wl_display_get_fd ) ( struct wl_display * ) ;
typedef int ( * PFN_wl_display_prepare_read ) ( struct wl_display * ) ;
typedef void ( * PFN_wl_proxy_marshal ) ( struct wl_proxy * , uint32_t , . . . ) ;
typedef int ( * PFN_wl_proxy_add_listener ) ( struct wl_proxy * , void ( * * ) ( void ) , void * ) ;
typedef void ( * PFN_wl_proxy_destroy ) ( struct wl_proxy * ) ;
typedef struct wl_proxy * ( * PFN_wl_proxy_marshal_constructor ) ( struct wl_proxy * , uint32_t , const struct wl_interface * , . . . ) ;
typedef struct wl_proxy * ( * PFN_wl_proxy_marshal_constructor_versioned ) ( struct wl_proxy * , uint32_t , const struct wl_interface * , uint32_t , . . . ) ;
typedef void * ( * PFN_wl_proxy_get_user_data ) ( struct wl_proxy * ) ;
typedef void ( * PFN_wl_proxy_set_user_data ) ( struct wl_proxy * , void * ) ;
# define wl_display_flush _glfw.wl.client.display_flush
# define wl_display_cancel_read _glfw.wl.client.display_cancel_read
# define wl_display_dispatch_pending _glfw.wl.client.display_dispatch_pending
# define wl_display_read_events _glfw.wl.client.display_read_events
# define wl_display_connect _glfw.wl.client.display_connect
# define wl_display_disconnect _glfw.wl.client.display_disconnect
# define wl_display_roundtrip _glfw.wl.client.display_roundtrip
# define wl_display_get_fd _glfw.wl.client.display_get_fd
# define wl_display_prepare_read _glfw.wl.client.display_prepare_read
# define wl_proxy_marshal _glfw.wl.client.proxy_marshal
# define wl_proxy_add_listener _glfw.wl.client.proxy_add_listener
# define wl_proxy_destroy _glfw.wl.client.proxy_destroy
# define wl_proxy_marshal_constructor _glfw.wl.client.proxy_marshal_constructor
# define wl_proxy_marshal_constructor_versioned _glfw.wl.client.proxy_marshal_constructor_versioned
# define wl_proxy_get_user_data _glfw.wl.client.proxy_get_user_data
# define wl_proxy_set_user_data _glfw.wl.client.proxy_set_user_data
struct wl_shm ;
# define wl_display_interface _glfw_wl_display_interface
# define wl_subcompositor_interface _glfw_wl_subcompositor_interface
# define wl_compositor_interface _glfw_wl_compositor_interface
# define wl_shm_interface _glfw_wl_shm_interface
# define wl_data_device_manager_interface _glfw_wl_data_device_manager_interface
# define wl_shell_interface _glfw_wl_shell_interface
# define wl_buffer_interface _glfw_wl_buffer_interface
# define wl_callback_interface _glfw_wl_callback_interface
# define wl_data_device_interface _glfw_wl_data_device_interface
# define wl_data_offer_interface _glfw_wl_data_offer_interface
# define wl_data_source_interface _glfw_wl_data_source_interface
# define wl_keyboard_interface _glfw_wl_keyboard_interface
# define wl_output_interface _glfw_wl_output_interface
# define wl_pointer_interface _glfw_wl_pointer_interface
# define wl_region_interface _glfw_wl_region_interface
# define wl_registry_interface _glfw_wl_registry_interface
# define wl_seat_interface _glfw_wl_seat_interface
# define wl_shell_surface_interface _glfw_wl_shell_surface_interface
# define wl_shm_pool_interface _glfw_wl_shm_pool_interface
# define wl_subsurface_interface _glfw_wl_subsurface_interface
# define wl_surface_interface _glfw_wl_surface_interface
# define wl_touch_interface _glfw_wl_touch_interface
# define zwp_idle_inhibitor_v1_interface _glfw_zwp_idle_inhibitor_v1_interface
# define zwp_idle_inhibit_manager_v1_interface _glfw_zwp_idle_inhibit_manager_v1_interface
# define zwp_confined_pointer_v1_interface _glfw_zwp_confined_pointer_v1_interface
# define zwp_locked_pointer_v1_interface _glfw_zwp_locked_pointer_v1_interface
# define zwp_pointer_constraints_v1_interface _glfw_zwp_pointer_constraints_v1_interface
# define zwp_relative_pointer_v1_interface _glfw_zwp_relative_pointer_v1_interface
# define zwp_relative_pointer_manager_v1_interface _glfw_zwp_relative_pointer_manager_v1_interface
# define wp_viewport_interface _glfw_wp_viewport_interface
# define wp_viewporter_interface _glfw_wp_viewporter_interface
# define xdg_toplevel_interface _glfw_xdg_toplevel_interface
# define zxdg_toplevel_decoration_v1_interface _glfw_zxdg_toplevel_decoration_v1_interface
# define zxdg_decoration_manager_v1_interface _glfw_zxdg_decoration_manager_v1_interface
# define xdg_popup_interface _glfw_xdg_popup_interface
# define xdg_positioner_interface _glfw_xdg_positioner_interface
# define xdg_surface_interface _glfw_xdg_surface_interface
# define xdg_toplevel_interface _glfw_xdg_toplevel_interface
# define xdg_wm_base_interface _glfw_xdg_wm_base_interface
# define _glfw_dlopen(name) dlopen(name, RTLD_LAZY | RTLD_LOCAL)
# define _glfw_dlclose(handle) dlclose(handle)
@ -302,6 +370,26 @@ typedef struct _GLFWlibraryWayland
_GLFWwindow * pointerFocus ;
_GLFWwindow * keyboardFocus ;
struct {
void * handle ;
PFN_wl_display_flush display_flush ;
PFN_wl_display_cancel_read display_cancel_read ;
PFN_wl_display_dispatch_pending display_dispatch_pending ;
PFN_wl_display_read_events display_read_events ;
PFN_wl_display_connect display_connect ;
PFN_wl_display_disconnect display_disconnect ;
PFN_wl_display_roundtrip display_roundtrip ;
PFN_wl_display_get_fd display_get_fd ;
PFN_wl_display_prepare_read display_prepare_read ;
PFN_wl_proxy_marshal proxy_marshal ;
PFN_wl_proxy_add_listener proxy_add_listener ;
PFN_wl_proxy_destroy proxy_destroy ;
PFN_wl_proxy_marshal_constructor proxy_marshal_constructor ;
PFN_wl_proxy_marshal_constructor_versioned proxy_marshal_constructor_versioned ;
PFN_wl_proxy_get_user_data proxy_get_user_data ;
PFN_wl_proxy_set_user_data proxy_set_user_data ;
} client ;
struct {
void * handle ;