}
static void
-_e_client_cb_drag_finished(E_Drag *drag, int dropped EINA_UNUSED)
-{
- E_Client *ec;
-
- ec = drag->data;
- UNREFD(ec, 1);
- e_object_unref(E_OBJECT(ec));
- client_drag = NULL;
-}
-
-static void
_e_client_desk_window_profile_wait_desk_delfn(void *data, void *obj)
{
E_Client *ec = data;
ec->mouse.last_up[button - 1].x = ec->x;
ec->mouse.last_up[button - 1].y = ec->y;
}
-
- ec->drag.start = 0;
}
E_API void
{
_e_client_resize_handle(ec);
}
- else if (ec->drag.start)
- {
- if ((ec->drag.x == -1) && (ec->drag.y == -1))
- {
- ec->drag.x = output->x;
- ec->drag.y = output->y;
- }
- else if (ec->zone)
- {
- int dx, dy;
-
- dx = ec->drag.x - output->x;
- dy = ec->drag.y - output->y;
- if (((dx * dx) + (dy * dy)) > (16 * 16))
- {
- /* start drag! */
- if (ec->netwm.icons || ec->internal_icon)
- {
- Evas_Object *o = NULL;
- int x = 0, y = 0, w = 0, h = 0;
- const char *drag_types[] = { "enlightenment/border" };
-
- REFD(ec, 1);
- e_object_ref(E_OBJECT(ec));
-
- client_drag = e_drag_new(output->x, output->y,
- drag_types, 1, ec, -1,
- NULL,
- _e_client_cb_drag_finished);
- client_drag->button_mask = evas_pointer_button_down_mask_get(e_comp->evas);
- e_drag_resize(client_drag, w, h);
-
- /* FIXME: fallback icon for drag */
- o = evas_object_rectangle_add(client_drag->evas);
- evas_object_color_set(o, 255, 255, 255, 255);
-
- e_drag_object_set(client_drag, o);
- e_drag_start(client_drag,
- output->x + (ec->drag.x - x),
- output->y + (ec->drag.y - y));
- }
- ec->drag.start = 0;
- }
- }
- }
}
///////////////////////////////////////////////////////