elc_popup: support siganl emit for the main layout of popup 05/65905/1
authorTaehyub Kim <taehyub.kim@samsung.com>
Thu, 14 Apr 2016 02:20:39 +0000 (11:20 +0900)
committerTaehyub Kim <taehyub.kim@samsung.com>
Thu, 14 Apr 2016 02:20:47 +0000 (11:20 +0900)
Summary:
Popup has the main layout to show popup view, but it is not resize object of popup.
As the result, we cannot emit the signal to the main layout when we want to change the state of the popup.
So, popup inherited a layout signal emit and redirect the signal to the main layout.

Test Plan:
1. add the custom signal in elm/popup/base/default layout
2. send the custom siganl in application code
Reviewers: woohyun, raster, cedric, Hermet, singh.amitesh

Reviewed By: singh.amitesh

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D3852

Change-Id: I12f0f313dc76b2e27dde95ec5e13f8a5c04e6792

src/lib/elc_popup.c
src/lib/elc_popup.h
src/lib/elm_popup.eo

index 6e75868edba6929befe6ed24e7bdceab2a3a798c..89ac9a4bd23d33459e7afb48cb11436fba0d6cd4 100644 (file)
@@ -516,6 +516,12 @@ _elm_popup_elm_layout_sizing_eval(Eo *obj, Elm_Popup_Data *sd)
    evas_object_size_hint_max_set(obj, -1, -1);
 }
 
+EOLIAN static void
+_elm_popup_elm_layout_signal_emit(Eo *obj EINA_UNUSED, Elm_Popup_Data *sd, const char *emission, const char *source)
+{
+   elm_layout_signal_emit(sd->main_layout, emission, source);
+}
+
 EOLIAN static Eina_Bool
 _elm_popup_elm_widget_sub_object_del(Eo *obj, Elm_Popup_Data *sd, Evas_Object *sobj)
 {
index d672db234584cb036c935769558fdfff66869408..0613d6c50a4f6e5b15e42cb7cbb31ab202f99537 100644 (file)
  * @li @ref elm_object_item_del
  * @li @ref elm_object_item_signal_emit
  *
+ * supported elm_object common APIs.
+ * @li @ref elm_object_part_text_set
+ * @li @ref elm_object_part_text_get
+ * @li @ref elm_object_part_content_set
+ * @li @ref elm_object_part_content_get
+ * @li @ref elm_object_part_content_unset
+ * @li @ref elm_object_signal_emit
+ *
  * Here are some sample code to illustrate Popup usage:
  * @li @ref popup_example_01_c
  * @li @ref popup_example_02_c
index 95d51d05f8b563c1b9d9253e328b80ddb8357acd..44e56c6624d487307393852e6a3411ceb04d4e9f 100644 (file)
@@ -181,6 +181,7 @@ class Elm.Popup (Elm.Layout, Elm_Interface_Atspi_Widget_Action)
       Elm.Layout.text_set;
       Elm.Layout.text_get;
       Elm.Layout.sizing_eval;
+      Elm.Layout.signal_emit;
       Elm_Interface_Atspi_Widget_Action.elm_actions.get;
       Elm_Interface_Atspi_Accessible.state_set.get;
    }