[focus] update child_can_focus on parents, when an widget becomes focusable
[framework/uifw/elementary.git] / src / lib / elm_access.h
index 667b18b..078cf82 100644 (file)
@@ -6,6 +6,8 @@
  *
  */
 
+#define MSG_DOMAIN_CONTROL_ACCESS (int)ECORE_X_ATOM_E_ILLUME_ACCESS_CONTROL
+
 enum _Elm_Access_Info_Type
 {
    ELM_ACCESS_INFO_FIRST = -1,
@@ -28,16 +30,6 @@ typedef char *(*Elm_Access_Info_Cb)(void *data, Evas_Object *obj);
 typedef void (*Elm_Access_Activate_Cb)(void *data, Evas_Object *part_obj, Elm_Object_Item *item);
 
 /**
- * @typedef Elm_Access_Action_Cb
- * User callback to make access object do specific action
- * @param data user data
- * @param action_info information to classify the action
- * Returns EINA_TRUE on success, EINA FALSE otherwise
- *
- */
-typedef Eina_Bool (*Elm_Access_Action_Cb)(void *data, Evas_Object *obj, void *action_info);
-
-/**
  * @enum _Elm_Access_Action_Type
  * Enum of supported access action types.
  */
@@ -50,9 +42,11 @@ enum _Elm_Access_Action_Type
    ELM_ACCESS_ACTION_HIGHLIGHT_NEXT, /* set highlight to next object */
    ELM_ACCESS_ACTION_HIGHLIGHT_PREV, /* set highlight to previous object */
    ELM_ACCESS_ACTION_ACTIVATE, /* activate a highlight object */
-   ELM_ACCESS_ACTION_VALUE_CHANGE, /* change value of highlight object */
+   ELM_ACCESS_ACTION_VALUE_CHANGE, /* TODO: deprecate this */
    ELM_ACCESS_ACTION_SCROLL, /* scroll if one of highlight object parents
                               * is scrollable */
+   ELM_ACCESS_ACTION_UP, /* change value up of highlight object */
+   ELM_ACCESS_ACTION_DOWN, /* change value down of highlight object */
    ELM_ACCESS_ACTION_BACK, /* go back to a previous view
                               ex: pop naviframe item */
    ELM_ACCESS_ACTION_READ, /* highlight an object */
@@ -74,12 +68,23 @@ struct _Elm_Access_Action_Info
                                2: mouse up   */
 
    Elm_Access_Action_Type action_type;
+   Elm_Access_Action_Type action_by;
    Eina_Bool              highlight_cycle : 1;
 };
 
 typedef struct _Elm_Access_Action_Info Elm_Access_Action_Info;
 
 /**
+ * @typedef Elm_Access_Action_Cb
+ * User callback to make access object do specific action
+ * @param data user data
+ * @param action_info information to classify the action
+ * Returns EINA_TRUE on success, EINA FALSE otherwise
+ *
+ */
+typedef Eina_Bool (*Elm_Access_Action_Cb)(void *data, Evas_Object *obj, Elm_Access_Action_Info *action_info);
+
+/**
  * @brief Register evas object as an accessible object.
  * @since 1.8
  *