#define GESTURE_DETECTED_SIGNAL 0
static Eldbus_Message *_sc_enable(const Eldbus_Service_Interface *iface, const Eldbus_Message *msg);
static Eldbus_Message *_is_slider(const Eldbus_Service_Interface *iface, const Eldbus_Message *msg);
+static Eldbus_Message *_highlighted_object_info(const Eldbus_Service_Interface *iface, const Eldbus_Message *msg);
static const Eldbus_Method methods[] = {
{ "ScreenReaderEnabled", ELDBUS_ARGS({"b", "bool"}), ELDBUS_ARGS({"b", "bool"}),
_sc_enable
},
- { "IsSlider", ELDBUS_ARGS({"b", "bool"}), ELDBUS_ARGS({"b", "bool"}),
+ { "IsSlider", ELDBUS_ARGS({"b", "bool"}), NULL,
_is_slider
},
+ { "HighlightedObjectInfo", ELDBUS_ARGS({"i", "int"}, {"i", "int"}), NULL,
+ _highlighted_object_info
+ },
{ }
};
return NULL;
}
+static Eldbus_Message *
+_highlighted_object_info(const Eldbus_Service_Interface *iface, const Eldbus_Message *msg)
+{
+ if (!eldbus_message_arguments_get(msg, "ii", &highlighted_object_x, &highlighted_object_y))
+ ERROR("eldbus_message_arguments_get() error\n");
+
+ return NULL;
+}
+
static int
_fetch_a11y_bus_address(void)
{
{
if (cov->tap_n_hold_gesture_data.double_tap && !is_slider)
{
+ if (highlighted_object_x != -1 && highlighted_object_y != -1)
+ {
+ cov->tap_n_hold_gesture_data.ev_down->x = highlighted_object_x;
+ cov->tap_n_hold_gesture_data.ev_down->y = highlighted_object_y;
+ cov->tap_n_hold_gesture_data.ev_down->root.x = highlighted_object_x;
+ cov->tap_n_hold_gesture_data.ev_down->root.y = highlighted_object_y;
+ }
_emit_mouse_move_event(cov->tap_n_hold_gesture_data.ev_down);
cov->tap_n_hold_gesture_data.ev_down->multi.radius += MAGIC_NUMBER;
cov->tap_n_hold_gesture_data.drag_start = EINA_TRUE;
ev_up->multi.radius += MAGIC_NUMBER;
ecore_event_add(ECORE_EVENT_MOUSE_BUTTON_UP, ev_up, NULL, NULL);
cover->tap_n_hold_gesture_data.drag_start = EINA_FALSE;
+ highlighted_object_x = -1;
+ highlighted_object_y = -1;
}
cover->n_taps--;
cover->event_time = ev->timestamp;
return;
}
is_slider = EINA_FALSE;
+ highlighted_object_x = -1;
+ highlighted_object_y = -1;
}
static void