From: SooChan Lim Date: Fri, 25 Apr 2025 02:03:23 +0000 (+0900) Subject: e_view_client: add e_view_client_external_view_type_get X-Git-Tag: accepted/tizen/unified/20250429.071401~26 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9af7700d203c0ec2c418044a08494cdc9a62a43e;p=platform%2Fupstream%2Fenlightenment.git e_view_client: add e_view_client_external_view_type_get This function get the external_view_type from e_view_client Change-Id: I0461423a7c0e5f5fb430ebdcbb807f9d9d3c3ee1 --- diff --git a/src/bin/core/e_view_client.c b/src/bin/core/e_view_client.c index 96c60af554..7327321de9 100644 --- a/src/bin/core/e_view_client.c +++ b/src/bin/core/e_view_client.c @@ -399,6 +399,26 @@ e_view_client_content_type_get(E_View_Client *client) return e_comp_object_content_type_get(client->view.eo); } +E_API E_View_Client_External_View_Type +e_view_client_external_view_type_get(E_View_Client *client) +{ + if (client == NULL) return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_NONE; + if (!client->external_view) return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_NONE; + + switch (e_comp_object_content_type_get(client->view.eo)) + { + case E_COMP_OBJECT_CONTENT_TYPE_EXT_IMAGE: + return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_IMAGE; + case E_COMP_OBJECT_CONTENT_TYPE_EXT_EDJE: + return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_EDJE; + case E_COMP_OBJECT_CONTENT_TYPE_INT_IMAGE: // return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_NONE + default: + return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_NONE; + } + + return E_VIEW_CLIENT_EXTERNAL_VIEW_TYPE_NONE; +} + EINTERN bool e_view_client_content_unset(E_View_Client *client) { diff --git a/src/include/e_view_client.h b/src/include/e_view_client.h index 5e75c41bca..4e0968cd8b 100644 --- a/src/include/e_view_client.h +++ b/src/include/e_view_client.h @@ -26,6 +26,7 @@ void e_view_client_color_get(E_View_Client *client, int *r, int *g, int *b, int bool e_view_client_content_set(E_View_Client *client, E_View *content, E_Comp_Object_Content_Type type); E_Comp_Object_Content_Type e_view_client_content_type_get(E_View_Client *client); bool e_view_client_external_view_image_set(E_View_Client *client, E_View_Image *view_image); +E_View_Client_External_View_Type e_view_client_external_view_type_get(E_View_Client *client); void e_view_client_damage(E_View_Client *client, int x, int y, int width, int height); void e_view_client_dirty(E_View_Client *client); E_View *e_view_client_effect_object_get(E_View_Client *client);