diff --git a/src/e_mod_main.c b/src/e_mod_main.c index 39c6e81..d720daf 100644 --- a/src/e_mod_main.c +++ b/src/e_mod_main.c @@ -512,22 +512,32 @@ ngi_input_extents_calc(Ng *ng) case E_GADCON_ORIENT_BOTTOM: e_drop_handler_geometry_set (box->drop_handler, - box->pos, win->popup->h - item_zoomed, w, item_zoomed); + ng->zone->x + box->pos, + ng->zone->y + win->popup->h - item_zoomed, + w, item_zoomed); break; case E_GADCON_ORIENT_TOP: e_drop_handler_geometry_set - (box->drop_handler, box->pos, 0, w, item_zoomed); + (box->drop_handler, + ng->zone->x + box->pos, + ng->zone->y, + w, item_zoomed); break; case E_GADCON_ORIENT_LEFT: e_drop_handler_geometry_set - (box->drop_handler, 0, box->pos, item_zoomed, w); + (box->drop_handler, + ng->zone->x, + ng->zone->y + box->pos, + item_zoomed, w); break; case E_GADCON_ORIENT_RIGHT: e_drop_handler_geometry_set - (box->drop_handler, win->popup->w - item_zoomed, box->pos, + (box->drop_handler, + ng->zone->x + win->popup->w - item_zoomed, + ng->zone->y + box->pos, item_zoomed, w); break; } diff --git a/src/ng_launcher.c b/src/ng_launcher.c index f643fc1..9738917 100644 --- a/src/ng_launcher.c +++ b/src/ng_launcher.c @@ -152,9 +152,9 @@ _drop_handle_move(Ngi_Box *box, int x, int y) Eina_List *l; if (box->ng->horizontal) - box->ng->pos = x + box->ng->size/2; + box->ng->pos = x + box->ng->size/2 - box->ng->zone->x; else - box->ng->pos = y + box->ng->size/2; + box->ng->pos = y + box->ng->size/2 - box->ng->zone->y; item = ngi_item_at_position_get(box->ng); @@ -266,7 +266,8 @@ _cb_drop_end(void *data, const char *type, void *event_info) l = eina_list_data_find_list(box->items, box->item_drop); if (l) it = eina_list_data_get(l->next); - ngi_item_free(box->item_drop); + if (box->item_drop) + ngi_item_free(box->item_drop); if (it && it->app) e_order_prepend_relative(box->apps, app, it->app);