E_Comp_Wl_Data_Source *source;
E_Client *drag_icon_ec = NULL, *ec = NULL;
E_Client *ec_under_pointer = NULL;
+ E_Zone *zone;
E_Desk *desk;
int x, y;
struct wl_client *wc;
//TODO: consider multi-seat
e_seat_pointer_send_leave(seat, wc, ec, e_comp_wl_client_surface_get(ec));
}
+ zone = e_comp_zone_find_by_ec(ec);
+ desk = e_zone_desk_find_by_ec(zone, ec);
evas_pointer_canvas_xy_get(e_comp_evas_get(), &x, &y);
comp_wl->drag = e_drag_new(x, y, _e_comp_wl_data_device_drag_finished);
}
e_drag_start(comp_wl->drag, x, y);
- desk = e_desk_current_get(e_comp_zone_find_by_ec(ec));
+ desk = e_zone_desk_find_by_ec(zone, ec);
ec_under_pointer = e_client_under_position_input_get(desk, x, y);
if (ec_under_pointer)
e_comp_wl_data_device_send_enter(ec_under_pointer);