Start to process mouse down & up events ... Prelude to working menus ;)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
parent
be68f0e840
commit
c322573793
|
@ -15,6 +15,8 @@ static void _output_cb_destroy(E_Output *output);
|
|||
static Eina_Bool _output_cb_window_damage(void *data EINA_UNUSED, int type EINA_UNUSED, void *event);
|
||||
static Eina_Bool _output_cb_window_destroy(void *data EINA_UNUSED, int type EINA_UNUSED, void *event);
|
||||
static Eina_Bool _output_cb_window_mouse_move(void *data EINA_UNUSED, int type EINA_UNUSED, void *event);
|
||||
static Eina_Bool _output_cb_window_mouse_down(void *data EINA_UNUSED, int type EINA_UNUSED, void *event);
|
||||
static Eina_Bool _output_cb_window_mouse_up(void *data EINA_UNUSED, int type EINA_UNUSED, void *event);
|
||||
|
||||
/* local variables */
|
||||
static E_Compositor_X11 *_e_x11_comp;
|
||||
|
@ -78,6 +80,10 @@ e_modapi_init(E_Module *m)
|
|||
_output_cb_window_destroy, NULL);
|
||||
E_LIST_HANDLER_APPEND(_hdlrs, ECORE_EVENT_MOUSE_MOVE,
|
||||
_output_cb_window_mouse_move, NULL);
|
||||
E_LIST_HANDLER_APPEND(_hdlrs, ECORE_EVENT_MOUSE_BUTTON_DOWN,
|
||||
_output_cb_window_mouse_down, NULL);
|
||||
E_LIST_HANDLER_APPEND(_hdlrs, ECORE_EVENT_MOUSE_BUTTON_UP,
|
||||
_output_cb_window_mouse_up, NULL);
|
||||
|
||||
/* flush any pending events
|
||||
*
|
||||
|
@ -443,3 +449,49 @@ _output_cb_window_mouse_move(void *data EINA_UNUSED, int type EINA_UNUSED, void
|
|||
|
||||
return ECORE_CALLBACK_PASS_ON;
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_output_cb_window_mouse_down(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
|
||||
{
|
||||
Ecore_Event_Mouse_Button *ev;
|
||||
E_Output_X11 *output;
|
||||
Eina_List *l;
|
||||
|
||||
ev = event;
|
||||
|
||||
/* loop the existing outputs */
|
||||
EINA_LIST_FOREACH(_e_x11_comp->base.outputs, l, output)
|
||||
{
|
||||
/* try to match the output window */
|
||||
if (ev->window == output->win)
|
||||
{
|
||||
printf("Send Mouse Down !!\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return ECORE_CALLBACK_PASS_ON;
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_output_cb_window_mouse_up(void *data EINA_UNUSED, int type EINA_UNUSED, void *event)
|
||||
{
|
||||
Ecore_Event_Mouse_Button *ev;
|
||||
E_Output_X11 *output;
|
||||
Eina_List *l;
|
||||
|
||||
ev = event;
|
||||
|
||||
/* loop the existing outputs */
|
||||
EINA_LIST_FOREACH(_e_x11_comp->base.outputs, l, output)
|
||||
{
|
||||
/* try to match the output window */
|
||||
if (ev->window == output->win)
|
||||
{
|
||||
printf("Send Mouse Up !!\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return ECORE_CALLBACK_PASS_ON;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue