Emit "elm,key,action,activate" signal 67/171667/10
authorShinwoo Kim <cinoo.kim@samsung.com>
Tue, 6 Mar 2018 09:18:59 +0000 (18:18 +0900)
committerShinwoo Kim <cinoo.kim@samsung.com>
Mon, 26 Mar 2018 05:57:04 +0000 (05:57 +0000)
An widget could be activated by key event, or AT-client such as screen-reader.
User could want to get sound feedback for this kind of activation.
The "elm,key,action,activate" signal will work for this.

Change-Id: I152b77dcc46dcdba4f73c9a5c962db7e5f8bfa1f

src/lib/elm_button.c
src/lib/elm_check.c
src/lib/elm_entry.c
src/lib/elm_radio.c
src/mobile_lib/elc_ctxpopup.c

index 6d9321c..77b219e 100644 (file)
@@ -168,6 +168,7 @@ static Eina_Bool
 _key_action_activate(Evas_Object *obj, const char *params EINA_UNUSED)
 {
    elm_layout_signal_emit(obj, "elm,anim,activate", "elm");
+   elm_layout_signal_emit(obj, "elm,key,action,activate", "elm");
    _activate(obj);
    return EINA_TRUE;
 }
index 5966a64..4010a24 100644 (file)
@@ -178,6 +178,7 @@ _elm_check_elm_layout_sizing_eval(Eo *obj, Elm_Check_Data *_pd EINA_UNUSED)
 static Eina_Bool
 _key_action_activate(Evas_Object *obj, const char *params EINA_UNUSED)
 {
+   elm_layout_signal_emit(obj, "elm,key,action,activate", "elm");
    _activate(obj);
    return EINA_TRUE;
 }
index cf3baf4..e35a78b 100644 (file)
@@ -7636,6 +7636,7 @@ _textblock_node_format_to_atspi_text_attr(const Evas_Object_Textblock_Node_Forma
 static Eina_Bool
 _action_activate(Evas_Object *obj, const char *params EINA_UNUSED)
 {
+   elm_layout_signal_emit(obj, "elm,key,action,activate", "elm");
    _activate(obj);
    return EINA_TRUE;
 }
index 247a8ec..8e93c86 100644 (file)
@@ -195,6 +195,7 @@ _elm_radio_elm_container_content_set(Eo *obj, Elm_Radio_Data *_pd EINA_UNUSED, c
 static Eina_Bool
 _key_action_activate(Evas_Object *obj, const char *params EINA_UNUSED)
 {
+   elm_layout_signal_emit(obj, "elm,key,action,activate", "elm");
    _activate(obj);
    return EINA_TRUE;
 }
index 1b5554a..5e0ee07 100644 (file)
@@ -2735,6 +2735,10 @@ _item_action_activate(Evas_Object *obj, const char *params EINA_UNUSED)
 {
    ELM_CTXPOPUP_ITEM_DATA_GET(obj, item);
 
+   edje_object_signal_emit
+      (VIEW(item), "elm,key,action,activate", "elm");
+   edje_object_message_signal_process(VIEW(item));
+
    if (item->wcb.org_func_cb)
      item->wcb.org_func_cb((void*)item->wcb.org_data, WIDGET(item), EO_OBJ(item));
    return EINA_TRUE;