following line could be removed when DALi atspi is working */
unsigned char quickpanel_info;
+ Ecore_Timer *move_outed_timer;
+ AtspiMoveOutedType move_outed_type;
};
char *state_to_char(AtspiStateType state)
DEBUG("END");
}
+static Eina_Bool _check_context_valid_again(void *user_data)
+{
+ NavigatorData *nd = (NavigatorData *) user_data;
+ AppTrackerContextValidility val = app_tracker_context_valid_check(nd->app_tracker_data);
+ if (val == APP_TRACKER_CONTEXT_VALID) {
+ if (nd->move_outed_timer) {
+ ecore_timer_del(nd->move_outed_timer);
+ nd->move_outed_timer = NULL;
+ nd->move_outed_type = ATSPI_MOVE_OUTED_NULL;
+ }
+ return ECORE_CALLBACK_CANCEL;
+ }
+ if (nd->move_outed_type == ATSPI_MOVE_OUTED_TOP_LEFT) {
+ navigator_focus_next_visible(nd);
+ } else if (nd->move_outed_type == ATSPI_MOVE_OUTED_BOTTOM_RIGHT) {
+ navigator_focus_prev_visible(nd);
+ }
+ return ECORE_CALLBACK_RENEW;
+}
+
void navigator_focus_next_visible(NavigatorData *nd)
{
DEBUG("START");
if (val == APP_TRACKER_CONTEXT_VALID) {
DEBUG("END - found");
_current_highlight_object_set(nd, obj, HIGHLIGHT_FIRST);
+ if (!nd->move_outed_timer) {
+ nd->move_outed_type = ATSPI_MOVE_OUTED_TOP_LEFT;
+ nd->move_outed_timer = ecore_timer_add(0.2, _check_context_valid_again, nd);
+ }
break;
}
if (val != APP_TRACKER_CONTEXT_CURRENT_NOT_VISIBLE) {
if (val == APP_TRACKER_CONTEXT_VALID) {
DEBUG("END - found");
_current_highlight_object_set(nd, obj, HIGHLIGHT_FIRST);
+ if (!nd->move_outed_timer) {
+ nd->move_outed_type = ATSPI_MOVE_OUTED_BOTTOM_RIGHT;
+ nd->move_outed_timer = ecore_timer_add(0.2, _check_context_valid_again, nd);
+ }
break;
}
if (val != APP_TRACKER_CONTEXT_CURRENT_NOT_VISIBLE) {
ERROR("calloc(1,%zu) failed", sizeof(NavigatorData));
return NULL;
}
-
+ nd->move_outed_type = ATSPI_MOVE_OUTED_NULL;
nd->gesture_start_p = (point_t) { .x = -1, .y = -1};
nd->last_focus = (point_t) { .x = -1, .y = -1};
nd->last_pos = (point_t) { .x = -1, .y = -1};
}
}
+ if (nd->move_outed_timer) {
+ ecore_timer_del(nd->move_outed_timer);
+ nd->move_outed_timer = NULL;
+ }
+
keyboard_tracker_unregister_top_window_info_get(nd->keyboard_tracker_data);
keyboard_tracker_shutdown(nd->keyboard_tracker_data);
nd->keyboard_tracker_data = NULL;