Evas_Device *dev = NULL;
const char *dev_name;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_mouse_move);
-
ev = event;
e_comp->wl_comp_data->ptr.x = wl_fixed_from_int(ev->cur.canvas.x);
e_comp->wl_comp_data->ptr.y = wl_fixed_from_int(ev->cur.canvas.y);
- if (!(ec = data))
- {
- TRACE_INPUT_END();
- return;
- }
-
- if (ec->cur_mouse_action)
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
- if (ec->ignored)
- {
- TRACE_INPUT_END();
- return;
- }
- if (!ec->comp_data->surface)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!(ec = data)) return;
+ if (ec->cur_mouse_action) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
+ if (ec->ignored) return;
+ if (!ec->comp_data->surface) return;
if ((!e_comp_wl->drag_client) ||
(!e_client_has_xwindow(e_comp_wl->drag_client)))
else
e_comp_wl->ptr.hide_tmr = ecore_timer_add(e_config->cursor_timer_interval, _e_comp_wl_cursor_timer, ec);
}
-
- TRACE_INPUT_END();
}
static void
{
if (wl_resource_get_client(res) != wc) continue;
if (!e_comp_wl_input_touch_check(res)) continue;
+ TRACE_INPUT_BEGIN(_e_comp_wl_evas_handle_mouse_button_to_touch);
if (flag)
wl_touch_send_down(res, serial, timestamp, ec->comp_data->surface, 0, x, y); //id 0 for the 1st finger
else
wl_touch_send_up(res, serial, timestamp, 0);
+ TRACE_INPUT_END();
}
}
Evas_Device *dev = NULL;
const char *dev_name;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_mouse_down);
-
- if (!ec)
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!ec) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
dev = ev->dev;
else
e_comp_wl_evas_handle_mouse_button(ec, ev->timestamp, ev->button,
WL_POINTER_BUTTON_STATE_PRESSED);
-
- TRACE_INPUT_END();
}
static void
Evas_Device *dev = NULL;
const char *dev_name;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_mouse_up);
-
- if (!ec)
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!ec) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
dev = ev->dev;
else
e_comp_wl_evas_handle_mouse_button(ec, ev->timestamp, ev->button,
WL_POINTER_BUTTON_STATE_RELEASED);
-
- TRACE_INPUT_END();
}
static void
Eina_List *l;
uint32_t axis, dir;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_mouse_wheel);
-
ev = event;
- if (!(ec = data))
- {
- TRACE_INPUT_END();
- return;
- }
- if (ec->cur_mouse_action)
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!(ec = data)) return;
+ if (ec->cur_mouse_action) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
if (ec->ignored) return;
- {
- TRACE_INPUT_END();
- return;
- }
if (ev->direction == 0)
axis = WL_POINTER_AXIS_VERTICAL_SCROLL;
else
dir = wl_fixed_from_int(ev->z);
- if (!ec->comp_data->surface)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!ec->comp_data->surface) return;
+ if (ec->comp_data->transform.start) return;
- if (ec->comp_data->transform.start)
- {
- TRACE_INPUT_END();
- return;
- }
if (ec->comp_data->transform.enabled)
{
if (ec->comp_data->transform.stime == 0)
{
ec->comp_data->transform.stime = ev->timestamp;
- TRACE_INPUT_END();
return;
}
}
/* do not send wheel event to client */
- TRACE_INPUT_END();
return;
}
if (wl_resource_get_client(res) != wc) continue;
wl_pointer_send_axis(res, ev->timestamp, axis, dir);
}
-
- TRACE_INPUT_END();
}
static void
const char *dev_name;
Evas_Device_Class dev_class;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_multi_down);
-
- if (!ec)
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
- if (!ec->comp_data->surface)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!ec) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
+ if (!ec->comp_data->surface) return;
dev = ev->dev;
}
/* Do not deliver emulated single touch events to client */
- if (ev->device == 0)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (ev->device == 0) return;
wc = wl_resource_get_client(ec->comp_data->surface);
serial = wl_display_next_serial(e_comp_wl->wl.disp);
{
if (wl_resource_get_client(res) != wc) continue;
if (!e_comp_wl_input_touch_check(res)) continue;
+ TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_multi_down);
wl_touch_send_down(res, serial, ev->timestamp,
ec->comp_data->surface, ev->device, x, y);
+ TRACE_INPUT_END();
}
-
- TRACE_INPUT_END();
}
static void
const char *dev_name;
Evas_Device_Class dev_class;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_multi_up);
-
- if (!ec)
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
- if (!ec->comp_data->surface)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (!ec) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
+ if (!ec->comp_data->surface) return;
dev = ev->dev;
}
/* Do not deliver emulated single touch events to client */
- if (ev->device == 0)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (ev->device == 0) return;
wc = wl_resource_get_client(ec->comp_data->surface);
serial = wl_display_next_serial(e_comp_wl->wl.disp);
{
if (wl_resource_get_client(res) != wc) continue;
if (!e_comp_wl_input_touch_check(res)) continue;
+ TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_multi_up);
wl_touch_send_up(res, serial, ev->timestamp, ev->device);
+ TRACE_INPUT_END();
}
-
- TRACE_INPUT_END();
}
static void
const char *dev_name;
Evas_Device_Class dev_class;
- TRACE_INPUT_BEGIN(_e_comp_wl_evas_cb_multi_move);
-
if (!ec) return;
- {
- TRACE_INPUT_END();
- return;
- }
- if (e_object_is_del(E_OBJECT(ec)))
- {
- TRACE_INPUT_END();
- return;
- }
- if (!ec->comp_data->surface)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (e_object_is_del(E_OBJECT(ec))) return;
+ if (!ec->comp_data->surface) return;
dev = ev->dev;
}
/* Do not deliver emulated single touch events to client */
- if (ev->device == 0)
- {
- TRACE_INPUT_END();
- return;
- }
+ if (ev->device == 0) return;
wc = wl_resource_get_client(ec->comp_data->surface);
if (!e_comp_wl_input_touch_check(res)) continue;
wl_touch_send_motion(res, ev->timestamp, ev->device, x, y);
}
-
- TRACE_INPUT_END();
}
static void
E_Client *ec = NULL;
uint32_t serial, *end, *k, keycode;
- TRACE_INPUT_BEGIN(e_comp_wl_key_down);
-
if ((e_comp->comp_type != E_PIXMAP_TYPE_WL) || (ev->window != e_comp->ee_win))
{
- TRACE_INPUT_END();
return EINA_FALSE;
}
_last_event_time = ecore_loop_time_get();
keycode = (ev->keycode - 8);
if (!(e_comp_wl = e_comp->wl_comp_data))
{
- TRACE_INPUT_END();
return EINA_FALSE;
}
(ev->modifiers & ECORE_EVENT_MODIFIER_ALTGR)) &&
eina_streq(ev->key, "BackSpace"))
{
- TRACE_INPUT_END();
exit(0);
}
#endif
/* ignore server-generated key repeats */
if (*k == keycode)
{
- TRACE_INPUT_END();
return EINA_FALSE;
}
}
serial = wl_display_next_serial(e_comp_wl->wl.disp);
EINA_LIST_FOREACH(e_comp_wl->kbd.focused, l, res)
- wl_keyboard_send_key(res, serial, ev->timestamp,
- keycode, WL_KEYBOARD_KEY_STATE_PRESSED);
+ {
+ TRACE_INPUT_BEGIN(e_comp_wl_key_down);
+ wl_keyboard_send_key(res, serial, ev->timestamp,
+ keycode, WL_KEYBOARD_KEY_STATE_PRESSED);
+ TRACE_INPUT_END();
+ }
/* A key only sent to clients is added to the list */
e_comp_wl->kbd.keys.size = (const char *)end - (const char *)e_comp_wl->kbd.keys.data;
if (!(k = wl_array_add(&e_comp_wl->kbd.keys, sizeof(*k))))
{
DBG("wl_array_add: Out of memory\n");
- TRACE_INPUT_END();
return EINA_FALSE;
}
*k = keycode;
/* update modifier state */
e_comp_wl_input_keyboard_state_update(keycode, EINA_TRUE);
- TRACE_INPUT_END();
return !!ec;
}
Eina_List *l;
uint32_t delivered_key;
- TRACE_INPUT_BEGIN(e_comp_wl_key_up);
if ((e_comp->comp_type != E_PIXMAP_TYPE_WL) ||
(ev->window != e_comp->ee_win))
{
- TRACE_INPUT_END();
return EINA_FALSE;
}
delivered_key = 0;
if (!(e_comp_wl = e_comp->wl_comp_data))
{
- TRACE_INPUT_END();
return EINA_FALSE;
}
{
serial = wl_display_next_serial(e_comp_wl->wl.disp);
EINA_LIST_FOREACH(e_comp_wl->kbd.focused, l, res)
- wl_keyboard_send_key(res, serial, ev->timestamp,
- keycode, WL_KEYBOARD_KEY_STATE_RELEASED);
+ {
+ TRACE_INPUT_BEGIN(e_comp_wl_key_up);
+ wl_keyboard_send_key(res, serial, ev->timestamp,
+ keycode, WL_KEYBOARD_KEY_STATE_RELEASED);
+ TRACE_INPUT_END();
+ }
}
}
/* update modifier state */
e_comp_wl_input_keyboard_state_update(keycode, EINA_FALSE);
- TRACE_INPUT_END();
return !!ec;
}
{
if (wl_resource_get_client(res) != wc) continue;
if (!e_comp_wl_input_pointer_check(res)) continue;
+ TRACE_INPUT_BEGIN(e_comp_wl_evas_handle_mouse_button);
wl_pointer_send_button(res, serial, timestamp, btn, state);
+ TRACE_INPUT_END();
}
return EINA_TRUE;
}
wl_keyboard_send_repeat_info(res, e_config->keyboard.repeat_rate, e_config->keyboard.repeat_delay);
/* send current keymap */
- TRACE_BEGIN(wl_keyboard_send_keymap);
+ TRACE_INPUT_BEGIN(wl_keyboard_send_keymap);
wl_keyboard_send_keymap(res, WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1,
e_comp_wl->xkb.fd,
e_comp_wl->xkb.size);
- TRACE_END();
+ TRACE_INPUT_END();
/* if the client owns the focused surface, we need to send an enter */
focused = e_client_focused_get();
_e_comp_wl_input_keymap_cache_create(const char *keymap_path, char *keymap_data)
{
FILE *file = NULL;
- TRACE_BEGIN(_e_comp_wl_input_keymap_cache_create);
+ TRACE_INPUT_BEGIN(_e_comp_wl_input_keymap_cache_create);
if ((EINA_FALSE == e_config->xkb.use_cache) && !dont_use_xkb_cache)
{
- TRACE_END();
+ TRACE_INPUT_END();
return;
}
fclose(file);
}
}
- TRACE_END();
+ TRACE_INPUT_END();
}
static int
free(tmp);
/* send updated keymap */
- TRACE_BEGIN(wl_keyboard_send_keymap_update);
+ TRACE_INPUT_BEGIN(wl_keyboard_send_keymap_update);
EINA_LIST_FOREACH(e_comp_wl->kbd.resources, l, res)
wl_keyboard_send_keymap(res, WL_KEYBOARD_KEYMAP_FORMAT_XKB_V1,
e_comp_wl->xkb.fd,
e_comp_wl->xkb.size);
- TRACE_END();
+ TRACE_INPUT_END();
/* update modifiers */
e_comp_wl_input_keyboard_modifiers_update();
EINA_SAFETY_ON_NULL_RETURN_VAL(ctx, NULL);
- TRACE_BEGIN(e_comp_wl_input_keymap_compile);
+ TRACE_INPUT_BEGIN(e_comp_wl_input_keymap_compile);
if (e_config->xkb.use_cache && !dont_use_xkb_cache)
{
*keymap_path = cache_path;
EINA_SAFETY_ON_NULL_RETURN_VAL(keymap, NULL);
- TRACE_END();
+ TRACE_INPUT_END();
return keymap;
}
Eina_Bool use_dflt_xkb = EINA_FALSE;
/* DBG("COMP_WL: Keymap Set: %s %s %s", rules, model, layout); */
- TRACE_BEGIN(e_comp_wl_input_keymap_set);
+ TRACE_INPUT_BEGIN(e_comp_wl_input_keymap_set);
if (dflt_ctx && dflt_map) use_dflt_xkb = EINA_TRUE;
if (!e_comp_wl->xkb.context)
{
- TRACE_END();
+ TRACE_INPUT_END();
return;
}
if (layout) names.layout = strdup(layout);
else names.layout = strdup("us");
- TRACE_BEGIN(e_comp_wl_input_keymap_set_keymap_compile);
+ TRACE_INPUT_BEGIN(e_comp_wl_input_keymap_set_keymap_compile);
if (use_dflt_xkb)
{
keymap = dflt_map;
}
else
keymap = e_comp_wl_input_keymap_compile(e_comp_wl->xkb.context, names, &keymap_path);
- TRACE_END();
+ TRACE_INPUT_END();
/* update compositor keymap */
_e_comp_wl_input_keymap_update(keymap, keymap_path);
free((char *)names.rules);
free((char *)names.model);
free((char *)names.layout);
- TRACE_END();
+ TRACE_INPUT_END();
}
E_API void