From 5206933399775e5ff46baefbbb3a776c2a9bb84c Mon Sep 17 00:00:00 2001 From: Berke Güzel Date: Mon, 12 Oct 2026 10:53:22 +0300 Subject: feat: add type-safe native platform headers and portable drag support - Add include/yasl/native/{wayland,cocoa,x11}.h with type-safe handle accessors. - Unify drag-and-drop and window carry support across Wayland, X11, and Cocoa. - Preserve full ABI compatibility for capability flags. - Install native headers conditionally based on enabled backend. - Include missing tablet example and backend test suites. --- include/yasl/native/x11.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 include/yasl/native/x11.h (limited to 'include/yasl/native/x11.h') diff --git a/include/yasl/native/x11.h b/include/yasl/native/x11.h new file mode 100644 index 0000000..c0105cb --- /dev/null +++ b/include/yasl/native/x11.h @@ -0,0 +1,22 @@ +#ifndef YASL_NATIVE_X11_H +#define YASL_NATIVE_X11_H + +#include "yasl/yasl.h" +#include + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct _XDisplay Display; + +/* Return borrowed X11 handles (expire on display/surface destruction). + * Return NULL / 0 if display/surface is not an X11 object or destroyed. */ +YASL_API Display *yasl_x11_display_get_display(struct yasl_display *d); +YASL_API uintptr_t yasl_x11_surface_get_window(struct yasl_surface *s); + +#ifdef __cplusplus +} +#endif + +#endif /* YASL_NATIVE_X11_H */ -- cgit v1.2.3