From: Shinwoo Kim Date: Wed, 1 May 2013 02:18:54 +0000 (+0900) Subject: [access] call ELM_ACCESS_ACTION_SCROLL callback X-Git-Tag: accepted/tizen/20130927.071315^2~478 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1a6d774b98932742d830f39bba0751b924e9b1ab;p=profile%2Fmobile%2Felementary.git [access] call ELM_ACCESS_ACTION_SCROLL callback Change-Id: I509b947667b6b1715c016a130a32321500860ca2 --- diff --git a/src/lib/elm_access.c b/src/lib/elm_access.c index ff47ba4..b626391 100644 --- a/src/lib/elm_access.c +++ b/src/lib/elm_access.c @@ -1450,10 +1450,18 @@ elm_access_action(Evas_Object *obj, const Elm_Access_Action_Type type, void *act case ELM_ACCESS_ACTION_SCROLL: _elm_access_highlight_object_scroll(obj, a->mouse_type, a->x, a->y); + + ho = _access_highlight_object_get(obj); + if (ho) + _access_action_callback_call(ho, ELM_ACCESS_ACTION_SCROLL, a); break; case ELM_ACCESS_ACTION_MOUSE: _elm_access_highlight_object_mouse(obj, a->mouse_type, a->x, a->y); + + ho = _access_highlight_object_get(obj); + if (ho) + _access_action_callback_call(ho, ELM_ACCESS_ACTION_MOUSE, a); break; case ELM_ACCESS_ACTION_BACK: diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c index c8fedbb..515efa4 100755 --- a/src/lib/elm_win.c +++ b/src/lib/elm_win.c @@ -2046,6 +2046,8 @@ _elm_win_client_message(void *data, if (!evas) return ECORE_CALLBACK_PASS_ON; a = calloc(1, sizeof(Elm_Access_Action_Info)); + if (!a) return ECORE_CALLBACK_PASS_ON; + a->x = e->data.l[2]; a->y = e->data.l[3]; elm_access_action(ELM_WIDGET_DATA(sd)->obj, ELM_ACCESS_ACTION_HIGHLIGHT, a); @@ -2076,14 +2078,28 @@ _elm_win_client_message(void *data, else if ((unsigned int)e->data.l[1] == ECORE_X_ATOM_E_ILLUME_ACCESS_ACTION_SCROLL) { - _elm_access_highlight_object_scroll(ELM_WIDGET_DATA(sd)->obj, - e->data.l[2], e->data.l[3], e->data.l[4]); + a = calloc(1, sizeof(Elm_Access_Action_Info)); + if (!a) return ECORE_CALLBACK_PASS_ON; + + a->mouse_type = e->data.l[2]; + a->x = e->data.l[3]; + a->y = e->data.l[4]; + elm_access_action(ELM_WIDGET_DATA(sd)->obj, + ELM_ACCESS_ACTION_SCROLL, a); + free(a); } else if ((unsigned int)e->data.l[1] == ECORE_X_ATOM_E_ILLUME_ACCESS_ACTION_MOUSE) { - _elm_access_highlight_object_mouse(ELM_WIDGET_DATA(sd)->obj, - e->data.l[2], e->data.l[3], e->data.l[4]); + a = calloc(1, sizeof(Elm_Access_Action_Info)); + if (!a) return ECORE_CALLBACK_PASS_ON; + + a->mouse_type = e->data.l[2]; + a->x = e->data.l[3]; + a->y = e->data.l[4]; + elm_access_action(ELM_WIDGET_DATA(sd)->obj, + ELM_ACCESS_ACTION_MOUSE, a); + free(a); } else if ((unsigned int)e->data.l[1] == ECORE_X_ATOM_E_ILLUME_ACCESS_ACTION_BACK)