struct _E_Input_Panel_Floating_Info
{
Eina_Bool moving_req;
+ Eina_Bool mouse_pressed;
Eina_Bool init_portrait_position;
Eina_Bool init_landscape_position;
int before_canvas_x;
if (e_object_is_del(E_OBJECT(ec)) || !ec->vkbd.floating || !g_floating_info)
return;
+ g_floating_info->mouse_pressed = EINA_FALSE;
g_floating_info->moving_req = EINA_FALSE;
}
if (e_object_is_del(E_OBJECT(ec)) || !ec->vkbd.floating || !g_floating_info)
return;
+ g_floating_info->mouse_pressed = EINA_TRUE;
g_floating_info->before_canvas_x = ev->cur.canvas.x;
g_floating_info->before_canvas_y = ev->cur.canvas.y;
}
if (e_object_is_del(E_OBJECT(ec)) || !ec->vkbd.floating || !g_floating_info)
return;
- if (!g_floating_info->moving_req)
+ if (!g_floating_info->moving_req || !g_floating_info->mouse_pressed)
return;
evas_object_geometry_get(obj, &x, &y, &w, &h);