ecore-drm: Don't send mouse_move event too early

We cannot be sending an ecore_event for mouse move here as it is too
early in the startup process for that too happen. Raising the event
here never gets caught because the ecore_evas has not yet registered
for ecore_input listening.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
Chris Michael 2015-11-17 15:54:34 -05:00 committed by Mike Blumenkrantz
parent f73e1fea16
commit 3c1cfca3b2
1 changed files with 0 additions and 32 deletions

View File

@ -80,40 +80,8 @@ _device_output_set(Ecore_Drm_Evdev *edev)
if (libinput_device_has_capability(edev->device,
LIBINPUT_DEVICE_CAP_POINTER))
{
Ecore_Drm_Input *pointer_input;
Ecore_Event_Mouse_Move *ev;
edev->mouse.dx = edev->output->current_mode->width / 2;
edev->mouse.dy = edev->output->current_mode->height / 2;
/* send a fake motion event to let other know the initial pos of mouse */
if (!(pointer_input = edev->seat->input)) return;
if (!(ev = calloc(1, sizeof(Ecore_Event_Mouse_Move)))) return;
ev->window = (Ecore_Window)pointer_input->dev->window;
ev->event_window = (Ecore_Window)pointer_input->dev->window;
ev->root_window = (Ecore_Window)pointer_input->dev->window;
_device_modifiers_update(edev);
ev->modifiers = edev->xkb.modifiers;
ev->same_screen = 1;
ev->x = edev->mouse.dx;
ev->y = edev->mouse.dy;
ev->root.x = ev->x;
ev->root.y = ev->y;
ev->multi.device = edev->mt_slot;
ev->multi.radius = 1;
ev->multi.radius_x = 1;
ev->multi.radius_y = 1;
ev->multi.pressure = 1.0;
ev->multi.angle = 0.0;
ev->multi.x = ev->x;
ev->multi.y = ev->y;
ev->multi.root.x = ev->x;
ev->multi.root.y = ev->y;
ecore_event_add(ECORE_EVENT_MOUSE_MOVE, ev, NULL, NULL);
}
}