From e7cbbb4ed1952756ac777161bcc62c5e80f74968 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 1 Oct 2012 10:42:58 +0000 Subject: [PATCH] use mover geom to determine gadman gadget zone, also don't save until drag is over SVN revision: 77264 --- src/modules/gadman/e_mod_gadman.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/modules/gadman/e_mod_gadman.c b/src/modules/gadman/e_mod_gadman.c index 3694421bd..db413b8c9 100644 --- a/src/modules/gadman/e_mod_gadman.c +++ b/src/modules/gadman/e_mod_gadman.c @@ -1440,6 +1440,7 @@ _on_mouse_up_cb(void *data, int type __UNUSED__, void *event) E_Config_Gadcon_Client *cf; E_Zone *dst_zone = NULL; E_Gadcon *dst_gadcon; + Evas_Object *mover; int gx, gy; if (ev->buttons != 1) return ECORE_CALLBACK_RENEW; @@ -1448,7 +1449,8 @@ _on_mouse_up_cb(void *data, int type __UNUSED__, void *event) gcc->dx = gcc->dy = 0; /* checking if zone was changed for dragged gadget */ - evas_object_geometry_get(gcc->o_frame, &gx, &gy, NULL, NULL); + mover = _get_mover(gcc); + evas_object_geometry_get(mover, &gx, &gy, NULL, NULL); dst_zone = e_container_zone_at_point_get(e_container_current_get(e_manager_current_get()), gx, gy); if (dst_zone && (gcc->gadcon->zone != dst_zone)) { @@ -1463,8 +1465,6 @@ _on_mouse_up_cb(void *data, int type __UNUSED__, void *event) e_config_save_queue(); } } - else - _save_widget_position(gcc); E_FREE_LIST(Man->drag_handlers, ecore_event_handler_del); return ECORE_CALLBACK_RENEW; }