From 35995be7b0592b11a849575a4e51033b92495e75 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Fri, 14 Oct 2016 16:01:54 -0500 Subject: [PATCH] ecore_wl2: add API for testing if a window has a shell surface --- src/lib/ecore_wl2/Ecore_Wl2.h | 9 +++++++++ src/lib/ecore_wl2/ecore_wl2_window.c | 8 ++++++++ 2 files changed, 17 insertions(+) diff --git a/src/lib/ecore_wl2/Ecore_Wl2.h b/src/lib/ecore_wl2/Ecore_Wl2.h index fec234c..e101037 100644 --- a/src/lib/ecore_wl2/Ecore_Wl2.h +++ b/src/lib/ecore_wl2/Ecore_Wl2.h @@ -1233,6 +1233,15 @@ EAPI Eina_Bool ecore_wl2_offer_supprts_mime(Ecore_Wl2_Offer *offer, const char * */ EAPI void ecore_wl2_offer_finish(Ecore_Wl2_Offer *offer); +/** + * Check if a window has a shell surface - without one it can't be visible. + * + * @param The window to check + * + * @return Returns true if the window has an associated shell surface. + * @since 1.19 + */ +EAPI Eina_Bool ecore_wl2_window_has_shell_surface(Ecore_Wl2_Window *win); # endif diff --git a/src/lib/ecore_wl2/ecore_wl2_window.c b/src/lib/ecore_wl2/ecore_wl2_window.c index e11518f..cd796e9 100644 --- a/src/lib/ecore_wl2/ecore_wl2_window.c +++ b/src/lib/ecore_wl2/ecore_wl2_window.c @@ -1002,3 +1002,11 @@ ecore_wl2_window_input_get(Ecore_Wl2_Window *window) return NULL; } + +EAPI Eina_Bool +ecore_wl2_window_has_shell_surface(Ecore_Wl2_Window *window) +{ + EINA_SAFETY_ON_NULL_RETURN_VAL(window, EINA_FALSE); + + return (window->xdg_surface || window->wl_shell_surface); +} -- 2.7.4