/* unset previous content */
e_comp_object_content_unset(ec->frame);
+ /* apply zoom */
+ e_desk_client_zoom_apply(ec->desk, ec);
+
/* map this surface if needed */
ec->visible = EINA_TRUE;
evas_object_show(ec->frame);
evas_object_smart_member_del(obj);
}
+EINTERN void
+e_desk_client_zoom_apply(E_Desk *desk, E_Client *ec)
+{
+ if (!e_config->use_desk_smart_obj)
+ return;
+
+ E_OBJECT_CHECK(desk);
+ E_OBJECT_TYPE_CHECK(desk, E_DESK_TYPE);
+
+ E_OBJECT_CHECK(ec);
+ E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE);
+
+ E_DESK_SMART_DATA_GET_OR_RETURN(desk->smart_obj, sd);
+
+ if (sd->zoom.enabled)
+ {
+ _e_desk_client_zoom(ec,
+ sd->zoom.ratio_x, sd->zoom.ratio_y,
+ sd->zoom.cord_x, sd->zoom.cord_y);
+ }
+}
+
static void
_e_desk_free(E_Desk *desk)
{
E_API void e_desk_client_add(E_Desk *desk, E_Client *ec);
E_API void e_desk_client_del(E_Desk *desk, E_Client *ec);
+EINTERN void e_desk_client_zoom_apply(E_Desk *desk, E_Client *ec);
+
extern E_API int E_EVENT_DESK_SHOW;
extern E_API int E_EVENT_DESK_BEFORE_SHOW;
extern E_API int E_EVENT_DESK_AFTER_SHOW;