forked from enlightenment/efl
efl_wl: add function for returning the evas object for an extracted surface
@feature
This commit is contained in:
parent
c7f9f2eef1
commit
e9572a6537
|
@ -143,6 +143,17 @@ EAPI void *efl_wl_global_add(Evas_Object *obj, const void *interface, uint32_t v
|
|||
* @since 1.21
|
||||
*/
|
||||
EAPI Eina_Bool efl_wl_surface_extract(Evas_Object *surface);
|
||||
|
||||
/**
|
||||
* Get the Evas_Object for an extracted wl_surface resource created by an efl_wl object
|
||||
*
|
||||
* @note Passing anything other than a valid wl_surface resource from an efl_wl object will guarantee a crash.
|
||||
*
|
||||
* @param surface_resource The wl_resource for a wl_surface
|
||||
* @return The Evas_Object of the surface, NULL on failure
|
||||
* @since 1.21
|
||||
*/
|
||||
EAPI Evas_Object *efl_wl_extracted_surface_object_find(void *surface_resource);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -5561,3 +5561,15 @@ efl_wl_surface_extract(Evas_Object *surface)
|
|||
evas_object_smart_member_del(surface);
|
||||
return EINA_TRUE;
|
||||
}
|
||||
|
||||
Evas_Object *
|
||||
efl_wl_extracted_surface_object_find(void *surface_resource)
|
||||
{
|
||||
Comp_Surface *cs = wl_resource_get_user_data(surface_resource);
|
||||
|
||||
EINA_SAFETY_ON_NULL_RETURN_VAL(cs, NULL);
|
||||
EINA_SAFETY_ON_TRUE_RETURN_VAL(!cs->extracted, NULL);
|
||||
EINA_SAFETY_ON_TRUE_RETURN_VAL(cs->dead, NULL);
|
||||
|
||||
return cs->obj;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue