[EGIT] [core/efl] master 01/01: test_check: fix build warning
jaehyun pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=948d20ab542b14b455aa25eaa4732a88d03bee70 commit 948d20ab542b14b455aa25eaa4732a88d03bee70 Author: JinYong Park Date: Wed Aug 23 13:52:24 2017 +0900 test_check: fix build warning Summary: In state_changed_cb2 callback function, obj is used. so it should not be EINA_UNUSED Reviewers: Jaehyun_Cho, cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5122 --- src/bin/elementary/test_check.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/elementary/test_check.c b/src/bin/elementary/test_check.c index 6841230db9..9633f141c2 100644 --- a/src/bin/elementary/test_check.c +++ b/src/bin/elementary/test_check.c @@ -21,7 +21,7 @@ state_changed_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *eve } static void -state_changed_cb2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +state_changed_cb2(void *data EINA_UNUSED, Evas_Object *obj, void *event_info EINA_UNUSED) { if (elm_check_state_get(obj) == EINA_FALSE) elm_object_text_set(obj, NULL); --
[EGIT] [core/efl] master 01/01: layout: call size calculating after text_set(NULL)
jaehyun pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=6f87330fe2f785a3d9d2711b808afdfb187f629b commit 6f87330fe2f785a3d9d2711b808afdfb187f629b Author: JinYong Park Date: Wed Aug 23 13:29:14 2017 +0900 layout: call size calculating after text_set(NULL) Summary: When text set NULL, size is not changed even text is removed. So, fix that case logic 1. send text,hidden signal 2. remove text 3. call sizing eval to resize layout Test Plan: 1. run elementary_test -to check 2. change value last check object 3. compare before and after Reviewers: Jaehyun_Cho, cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5086 --- src/bin/elementary/test_check.c| 16 src/lib/elementary/efl_ui_layout.c | 1 + 2 files changed, 17 insertions(+) diff --git a/src/bin/elementary/test_check.c b/src/bin/elementary/test_check.c index 1ee3935cc0..6841230db9 100644 --- a/src/bin/elementary/test_check.c +++ b/src/bin/elementary/test_check.c @@ -20,6 +20,15 @@ state_changed_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *eve printf("State Pointer Value: %d\n", eb); } +static void +state_changed_cb2(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + if (elm_check_state_get(obj) == EINA_FALSE) + elm_object_text_set(obj, NULL); + else + elm_object_text_set(obj, "text is visible when check state is true."); +} + void test_check(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) { @@ -106,6 +115,13 @@ test_check(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_inf evas_object_show(ck); evas_object_show(ic); + ck = elm_check_add(win); + elm_box_pack_end(bx, ck); + elm_object_text_set(ck, "text is visible when check state is true."); + elm_check_state_set(ck, EINA_TRUE); + evas_object_show(ck); + evas_object_smart_callback_add(ck, "changed", state_changed_cb2, NULL); + evas_object_show(win); } diff --git a/src/lib/elementary/efl_ui_layout.c b/src/lib/elementary/efl_ui_layout.c index b3fac74aeb..d64f873112 100644 --- a/src/lib/elementary/efl_ui_layout.c +++ b/src/lib/elementary/efl_ui_layout.c @@ -1240,6 +1240,7 @@ _efl_ui_layout_text_set(Eo *obj, Efl_Ui_Layout_Data *sd, const char *part, const edje_object_part_text_escaped_set (wd->resize_obj, part, NULL); sd->subs = eina_list_remove_list(sd->subs, l); + elm_layout_sizing_eval(obj); return EINA_TRUE; } else --
[EGIT] [core/efl] master 01/01: layout: fix "elm, state, text, hidden" signal never be emitted
jaehyun pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f2082c0412a5e1df6b1a53e209125e7fe37dccf8 commit f2082c0412a5e1df6b1a53e209125e7fe37dccf8 Author: JinYong Park Date: Fri Aug 4 15:33:27 2017 +0900 layout: fix "elm,state,text,hidden" signal never be emitted Summary: In _elm_layout_text_set function, text_signal_emit is called. But in that case, check text whether it is null or not null before call signal_emit. So "text" is not null always, and text_signal_emit's parameter "visible" is also always EINA_TRUE. Reviewers: Jaehyun_Cho, cedric, jpeg Reviewed By: Jaehyun_Cho Differential Revision: https://phab.enlightenment.org/D5049 --- src/lib/elementary/elm_layout.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/elm_layout.c b/src/lib/elementary/elm_layout.c index 0a78126c4c..790860f605 100644 --- a/src/lib/elementary/elm_layout.c +++ b/src/lib/elementary/elm_layout.c @@ -1231,6 +1231,7 @@ _elm_layout_text_set(Eo *obj, Elm_Layout_Smart_Data *sd, const char *part, const { if (!text) { + _text_signal_emit(sd, sub_d, EINA_FALSE); eina_stringshare_del(sub_d->part); free(sub_d); edje_object_part_text_escaped_set @@ -1258,7 +1259,7 @@ _elm_layout_text_set(Eo *obj, Elm_Layout_Smart_Data *sd, const char *part, const sd->subs = eina_list_append(sd->subs, sub_d); } - _text_signal_emit(sd, sub_d, !!text); + _text_signal_emit(sd, sub_d, EINA_TRUE); elm_layout_sizing_eval(obj); --
[EGIT] [core/efl] master 01/01: popup: fix sizing eval logic when scrollable set TRUE
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=10d5f11a1450fd7b4295fbd0a99cc799eaeda4f6 commit 10d5f11a1450fd7b4295fbd0a99cc799eaeda4f6 Author: JinYong Park Date: Tue Jul 11 15:36:06 2017 +0900 popup: fix sizing eval logic when scrollable set TRUE Summary: When scrollable set TRUE, scroller must be calculated its size except using item. If content is removed, scroller doesn't calculate its size, so it has previous size. So there is a empty space in this case. @fix Test Plan: 1. elementary_test -to popup 2. open "popup-center-title + list content + 2 button (with delete content)" 3. click "Delete" button 4. compare between scrollable set true and false Reviewers: herb, singh.amitesh, jpeg, cedric, conr2d Differential Revision: https://phab.enlightenment.org/D5010 --- src/bin/elementary/test_popup.c | 17 ++--- src/lib/elementary/elc_popup.c | 2 +- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/bin/elementary/test_popup.c b/src/bin/elementary/test_popup.c index 7de258836b..bfd17adefe 100644 --- a/src/bin/elementary/test_popup.c +++ b/src/bin/elementary/test_popup.c @@ -624,7 +624,13 @@ gl_popup_text_get(void *data, Evas_Object *obj EINA_UNUSED, const char *part EIN } static void -_popup_center_title_list_content_1button_cb(void *data, Evas_Object *obj EINA_UNUSED, +_delete_btn_clicked(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) +{ + elm_object_content_set(data, NULL); +} + +static void +_popup_center_title_list_content_2button_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) { Evas_Object *popup, *list; @@ -648,6 +654,11 @@ _popup_center_title_list_content_1button_cb(void *data, Evas_Object *obj EINA_UN elm_object_part_content_set(popup, "button1", btn); evas_object_smart_callback_add(btn, "clicked", _popup_close_cb, popup); + btn = elm_button_add(popup); + elm_object_text_set(btn, "Delete"); + elm_object_part_content_set(popup, "button2", btn); + evas_object_smart_callback_add(btn, "clicked", _delete_btn_clicked, popup); + // popup show should be called after adding all the contents and the buttons // of popup to set the focus into popup's contents correctly. evas_object_show(popup); @@ -885,8 +896,8 @@ test_popup(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, _popup_transparent_cb, win); elm_list_item_append(list, "popup-transparent-align", NULL, NULL, _popup_transparent_align_cb, win); - elm_list_item_append(list, "popup-center-title + list content + 1 button", -NULL, NULL, _popup_center_title_list_content_1button_cb, + elm_list_item_append(list, "popup-center-title + list content + 2 button (with delete content)", +NULL, NULL, _popup_center_title_list_content_2button_cb, win); elm_list_item_append(list, "popup-center-title + genlist content + 1 button", NULL, NULL, _popup_center_title_genlist_content_1button_cb, diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index 1cab8b7770..dc51f9749d 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -469,7 +469,7 @@ _elm_popup_elm_layout_sizing_eval(Eo *obj, Elm_Popup_Data *sd) efl_gfx_size_hint_combined_min_get(sd->scr, &minw, &minh); evas_object_size_hint_max_get(sd->scr, &minw, &minh); } - else if (sd->scroll && (sd->content || sd->text_content_obj)) + else if (sd->scroll) { double horizontal, vertical; Evas_Coord w, h; --
[EGIT] [core/efl] master 01/02: popup: fix wrong signal emit when remove all button
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d6652c1138a3edb28c5796ca9850047a69fc12cf commit d6652c1138a3edb28c5796ca9850047a69fc12cf Author: JinYong Park Date: Fri Jul 7 14:11:55 2017 +0900 popup: fix wrong signal emit when remove all button Summary: In visuals_set function, check action_area is NULL, and signal emit action_area,visible/hidden So, before call visuals_set, action_area should be deleted. Test Plan: Actually, action area has not min size, so it couldn't be observed. Reviewers: herb, singh.amitesh, jpeg, cedric, conr2d Reviewed By: jpeg Differential Revision: https://phab.enlightenment.org/D5007 --- src/lib/elementary/elc_popup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index ccb63c74a6..1cab8b7770 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -637,8 +637,8 @@ _button_remove(Evas_Object *obj, if (!sd->last_button_number) { -_visuals_set(obj); ELM_SAFE_FREE(sd->action_area, evas_object_del); +_visuals_set(obj); } else { --
[EGIT] [core/efl] master 07/28: popup: fix unintentional object deletion when change scrollable
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=2b2d22494714acb30d2adffd5bc67a85e472db50 commit 2b2d22494714acb30d2adffd5bc67a85e472db50 Author: JinYong Park Date: Mon Jun 5 11:08:45 2017 -0700 popup: fix unintentional object deletion when change scrollable Summary: If popup scrollable change from FALSE to TRUE after content or text is added, content_area is deleted, so it cause null pointer problem. main_layout has content_area in its CONTENT_PART, but in scrollable_set API, tbl set into main_layout's CONTENT_PART, so content_area is deleted. On the contrary, if scrollable change to FALSE, content object in content_area is deleted, because tbl set into content_area's CONTENT_PART. So if some object set into other object, unset previous object and set it into properly part after that. A case using item_append should be fixed by other patch. @fix Test Plan: Change scrollable repeatedly after adding content or text to popup. Reviewers: jpeg, singh.amitesh, conr2d, cedric, raster Reviewed By: cedric Subscribers: herb Differential Revision: https://phab.enlightenment.org/D4894 Signed-off-by: Cedric BAIL --- src/lib/elementary/elc_popup.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index afeb003be8..f519d7678b 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -673,6 +673,7 @@ _create_scroller(Evas_Object *obj) _on_table_del, obj); if (!sd->scroll) { +if (sd->content || sd->text_content_obj) efl_content_unset(efl_part(sd->content_area, CONTENT_PART)); efl_content_set(efl_part(sd->content_area, CONTENT_PART), sd->tbl); efl_content_set(efl_part(sd->main_layout, CONTENT_PART), sd->content_area); } @@ -1840,7 +1841,7 @@ _elm_popup_scrollable_set(Eo *obj, Elm_Popup_Data *pd, Eina_Bool scroll) _create_scroller(obj); else { -elm_layout_content_unset(pd->scr, "elm.swallow.content"); +elm_object_content_unset(pd->scr); ELM_SAFE_FREE(pd->tbl, evas_object_del); _create_scroller(obj); } @@ -1849,11 +1850,18 @@ _elm_popup_scrollable_set(Eo *obj, Elm_Popup_Data *pd, Eina_Bool scroll) { efl_content_set(efl_part(pd->content_area, CONTENT_PART), pd->tbl); efl_content_set(efl_part(pd->main_layout, CONTENT_PART), pd->content_area); +if (pd->content) efl_content_set(efl_part(pd->content_area, CONTENT_PART), pd->content); +else if (pd->text_content_obj) efl_content_set(efl_part(pd->content_area, CONTENT_PART), pd->text_content_obj); if (pd->theme_scroll) elm_layout_signal_emit(pd->content_area, "elm,scroll,disable", "elm"); } else { +if (pd->content || pd->text_content_obj) + { + efl_content_unset(efl_part(pd->main_layout, CONTENT_PART)); + elm_object_content_set(pd->scr, pd->content_area); + } efl_content_set(efl_part(pd->main_layout, CONTENT_PART), pd->tbl); if (pd->theme_scroll) elm_layout_signal_emit(pd->content_area, "elm,scroll,enable", "elm"); --
[EGIT] [core/efl] master 01/01: popup: fix object_mirrored_set didn't work
conr2d pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bcb7eb99b3c0390d0708fd80b0ef6718848092fe commit bcb7eb99b3c0390d0708fd80b0ef6718848092fe Author: JinYong Park Date: Fri Jun 2 16:25:11 2017 +0900 popup: fix object_mirrored_set didn't work Summary: object_mirroed_set as opposed to config_mirrored_set doesn't work with popup. This patch broadcasts a change on 'mirrored' to internal notify, main layout, scroller and action area layout to make API work. @fix Reviewers: singh.amitesh, jpeg, conr2d, cedric, raster Reviewed By: conr2d Subscribers: herb Differential Revision: https://phab.enlightenment.org/D4900 --- src/lib/elementary/elc_popup.c | 21 + 1 file changed, 21 insertions(+) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index 58a51c8f34..9608630783 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -280,6 +280,17 @@ _mirrored_set(Evas_Object *obj, ELM_POPUP_DATA_GET(obj, sd); elm_object_mirrored_set(sd->notify, rtl); + elm_object_mirrored_set(sd->main_layout, rtl); + if (sd->scr) elm_object_mirrored_set(sd->scr, rtl); + if (sd->action_area) elm_object_mirrored_set(sd->action_area, rtl); + if (sd->items) + { +Elm_Popup_Item_Data *it; +Eina_List *l; + +EINA_LIST_FOREACH(sd->items, l, it) + elm_object_mirrored_set(VIEW(it), rtl); + } } static void @@ -687,6 +698,8 @@ _create_scroller(Evas_Object *obj) elm_scroller_bounce_set(sd->scr, EINA_FALSE, EINA_TRUE); evas_object_event_callback_add(sd->scr, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _size_hints_changed_cb, obj); + elm_widget_mirrored_automatic_set(sd->scr, EINA_FALSE); + elm_object_mirrored_set(sd->scr, elm_object_mirrored_get(obj)); elm_table_pack(sd->tbl, sd->scr, 0, 0, 1, 1); evas_object_show(sd->scr); } @@ -914,6 +927,8 @@ _item_new(Elm_Popup_Item_Data *it) VIEW(it) = elm_layout_add(WIDGET(it)); elm_object_focus_allow_set(VIEW(it), EINA_TRUE); + elm_widget_mirrored_automatic_set(VIEW(it), EINA_FALSE); + elm_object_mirrored_set(VIEW(it), elm_object_mirrored_get(WIDGET(it))); snprintf(style, sizeof(style), "popup/%s", elm_widget_style_get(WIDGET(it))); if (!elm_layout_theme_set(VIEW(it), "popup", "item", style)) @@ -1194,6 +1209,8 @@ _action_button_set(Evas_Object *obj, evas_object_event_callback_add (sd->action_area, EVAS_CALLBACK_CHANGED_SIZE_HINTS, _size_hints_changed_cb, sd->main_layout); +elm_widget_mirrored_automatic_set(sd->action_area, EINA_FALSE); +elm_object_mirrored_set(sd->action_area, elm_object_mirrored_get(obj)); efl_content_set(efl_part(sd->main_layout, "elm.swallow.action_area"), sd->action_area); _visuals_set(obj); @@ -1512,6 +1529,8 @@ _elm_popup_efl_canvas_group_group_add(Eo *obj, Elm_Popup_Data *priv) evas_object_size_hint_align_set (priv->notify, EVAS_HINT_FILL, EVAS_HINT_FILL); evas_object_smart_member_add(priv->notify, obj); + elm_widget_mirrored_automatic_set(priv->notify, EINA_FALSE); + elm_object_mirrored_set(priv->notify, elm_object_mirrored_get(obj)); evas_object_event_callback_add(priv->notify, EVAS_CALLBACK_RESIZE, _notify_resize_cb, obj); @@ -1523,6 +1542,8 @@ _elm_popup_efl_canvas_group_group_add(Eo *obj, Elm_Popup_Data *priv) elm_object_content_set(priv->notify, priv->main_layout); evas_object_event_callback_add(obj, EVAS_CALLBACK_SHOW, _on_show, NULL); + elm_widget_mirrored_automatic_set(priv->main_layout, EINA_FALSE); + elm_object_mirrored_set(priv->main_layout, elm_object_mirrored_get(obj)); elm_layout_signal_callback_add (priv->main_layout, "elm,state,title_area,visible", "elm", _layout_change_cb, NULL); --
[EGIT] [core/efl] master 01/01: popup: remove previous object when setting new content
conr2d pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=2086530d0798e44aec163edec894e96bb90675e7 commit 2086530d0798e44aec163edec894e96bb90675e7 Author: JinYong Park Date: Wed May 31 13:12:59 2017 +0900 popup: remove previous object when setting new content Summary: Other widgets remove previous object when setting new content, but popup does nothing for the part whose name is "default". content_unset can be used to keep previous content object, so content_set (especially with NULL) should be able to delete previous content object for uniformity of the entire widgets. @fix Reviewers: jpeg, singh.amitesh, cedric, raster, conr2d Reviewed By: conr2d Subscribers: minkyu, herb Differential Revision: https://phab.enlightenment.org/D4885 --- src/lib/elementary/elc_popup.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index 9f97205afd..58a51c8f34 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -1128,7 +1128,9 @@ _content_set(Evas_Object *obj, _list_del(sd); } + evas_object_del(sd->content); sd->content = content; + if (content) { if (!sd->scroll) --
[EGIT] [core/efl] master 01/03: popup: move "visible_set(FALSE)" before calling dismissed callback
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ef2f37cad13114d765b8a041e2aea222cdf08c30 commit ef2f37cad13114d765b8a041e2aea222cdf08c30 Author: JinYong Park Date: Fri May 12 14:59:32 2017 +0900 popup: move "visible_set(FALSE)" before calling dismissed callback Summary: After hiding animation is finished, "dismissed" callback will be called. It means popup's visible state is FALSE. But if evas_object_show(popup) is called in it's custom dimssed callback function, popup's visible state is TRUE, so evas_object_show is canceled. So visible_set(FALSE) is must done before call dimissed callback. @fix Reviewers: Hermet, herb, jpeg, cedric, singh.amitesh, raster Reviewed By: jpeg Subscribers: woohyun Differential Revision: https://phab.enlightenment.org/D4869 --- src/lib/elementary/elc_popup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index a24c1c0..dcb78a3 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -118,8 +118,8 @@ _timeout_cb(void *data, const Efl_Event *event EINA_UNUSED) static void _hide_effect_finished_cb(void *data, const Efl_Event *event EINA_UNUSED) { - efl_event_callback_legacy_call(data, ELM_POPUP_EVENT_DISMISSED, NULL); efl_gfx_visible_set(data, EINA_FALSE); + efl_event_callback_legacy_call(data, ELM_POPUP_EVENT_DISMISSED, NULL); } --
[EGIT] [core/efl] master 05/05: popup: enable to set last_button_number to 0
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=9df368588465b37e8c6d775aeecded2173b1884f commit 9df368588465b37e8c6d775aeecded2173b1884f Author: JinYong Park Date: Fri May 12 14:57:01 2017 +0900 popup: enable to set last_button_number to 0 Summary: If last added button is removed, any statements to set last_button_number in for loop doesn't be executed. So last button number has previous value, not 0. Because of that, action area is not removed, but that area has zero height, so it doesn't be shown. @fix Reviewers: herb, jpeg, cedric, singh.amitesh, raster Reviewed By: jpeg Subscribers: woohyun Differential Revision: https://phab.enlightenment.org/D4870 --- src/lib/elementary/elc_popup.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index 7fa35ad..a24c1c0 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -613,6 +613,8 @@ _button_remove(Evas_Object *obj, ELM_SAFE_FREE(sd->buttons[pos], free); + sd->last_button_number = 0; + for (i = ELM_POPUP_ACTION_BUTTON_MAX - 1; i >= 0; i--) { if (sd->buttons[i]) --
[EGIT] [core/efl] master 01/02: notify: fix hide animation logic for popup
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=86008fa411378721ae3d772e778f0acfe477b057 commit 86008fa411378721ae3d772e778f0acfe477b057 Author: JinYong Park Date: Wed Apr 12 14:25:51 2017 -0700 notify: fix hide animation logic for popup Summary: When popup is timeout, notify call hide func, and send time out event to popup. After popup receiving time out event, popup hide object again, so hide animation doesn't show. And notify hide function doesn't send hide signal to block events part, (but dismiss function send it) So add that signal. Test Plan: 1. elementary_test -to popup 2. click first item, "popup+center+text" 3. compare time out event before this patch and after. @fix Reviewers: herb, singh.amitesh, Hermet, cedric, raster, jpeg Differential Revision: https://phab.enlightenment.org/D4780 Signed-off-by: Cedric BAIL --- src/bin/elementary/test_popup.c | 2 +- src/lib/elementary/elm_notify.c | 6 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/bin/elementary/test_popup.c b/src/bin/elementary/test_popup.c index dc1274e..7de2588 100644 --- a/src/bin/elementary/test_popup.c +++ b/src/bin/elementary/test_popup.c @@ -134,7 +134,7 @@ _popup_center_text_cb(void *data, Evas_Object *obj EINA_UNUSED, elm_object_text_set(popup, "This Popup has content area and " "timeout value is 3 seconds"); elm_popup_timeout_set(popup, 3.0); - evas_object_smart_callback_add(popup, "timeout", _response_cb, popup); + evas_object_smart_callback_add(popup, "dismissed", _response_cb, popup); evas_object_event_callback_add(popup, EVAS_CALLBACK_KEY_DOWN, _popup_key_down_cb, NULL); diff --git a/src/lib/elementary/elm_notify.c b/src/lib/elementary/elm_notify.c index 6bb58be..4ef5514 100644 --- a/src/lib/elementary/elm_notify.c +++ b/src/lib/elementary/elm_notify.c @@ -270,6 +270,7 @@ _timer_cb(void *data) if (!evas_object_visible_get(obj)) goto end; evas_object_hide(obj); + sd->in_timeout = EINA_TRUE; efl_event_callback_legacy_call(obj, ELM_NOTIFY_EVENT_TIMEOUT, NULL); end: @@ -312,7 +313,10 @@ _elm_notify_hide(Eo *obj EINA_UNUSED, Elm_Notify_Data *sd) if (eina_streq(hide_signal, "on")) { if (!sd->in_timeout) - edje_object_signal_emit(sd->notify, "elm,state,hide", "elm"); + { + elm_layout_signal_emit(sd->block_events, "elm,state,hide", "elm"); + edje_object_signal_emit(sd->notify, "elm,state,hide", "elm"); + } } else //for backport supporting: edc without emitting hide finished signal { --
[EGIT] [core/efl] master 01/08: edje_embryo: add function to know swallow has object
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=471a328ea0e5607f25391496b76aafedeb34a79f commit 471a328ea0e5607f25391496b76aafedeb34a79f Author: Jinyong Park Date: Mon Aug 1 14:56:00 2016 +0900 edje_embryo: add function to know swallow has object Summary: Using edc script, there is no way to know evas object is set on swallow part or not. So, to know that, some elm widget send signal and save some information to edc variables when object is set on swallow part. I think it is helpful to make better edc script. @feature Reviewers: herb, cedric, raster, id213sin, jpeg Reviewed By: jpeg Subscribers: jpeg Differential Revision: https://phab.enlightenment.org/D4176 --- data/edje/include/edje.inc | 1 + src/lib/edje/edje_embryo.c | 26 ++ 2 files changed, 27 insertions(+) diff --git a/data/edje/include/edje.inc b/data/edje/include/edje.inc index 4107344..7807383 100644 --- a/data/edje/include/edje.inc +++ b/data/edje/include/edje.inc @@ -329,3 +329,4 @@ enum Anim_Param native set_tween_state_anim (part_id, state1[], Float:state1_val, state2[], Float:state2_val, Anim_Param:p, Float:tween, ...); native set_state_anim (part_id, state[], Float:state1_val, Anim_Param:p, Float:tween, ...); +native swallow_has_content (part_id); diff --git a/src/lib/edje/edje_embryo.c b/src/lib/edje/edje_embryo.c index 1b899d7..d019f76 100644 --- a/src/lib/edje/edje_embryo.c +++ b/src/lib/edje/edje_embryo.c @@ -4391,6 +4391,30 @@ _edje_embryo_fn_physics_get_rotation(Embryo_Program *ep, Embryo_Cell *params) #endif +/* swallow_has_content(part_id) */ +static Embryo_Cell +_edje_embryo_fn_swallow_has_content(Embryo_Program *ep, Embryo_Cell *params) +{ + Edje *ed; + int part_id = 0; + Edje_Real_Part *rp; + + CHKPARAM(1); + ed = embryo_program_data_get(ep); + part_id = params[1]; + if (part_id < 0) return 0; + rp = ed->table_parts[part_id % ed->table_parts_size]; + + if ((!rp) || + (!rp->part) || + (rp->part->type != EDJE_PART_TYPE_SWALLOW) || + (!rp->typedata.swallow) || + (!rp->typedata.swallow->swallowed_object)) + return 0; + + return 1; +} + void _edje_embryo_script_init(Edje_Part_Collection *edc) { @@ -4516,6 +4540,8 @@ _edje_embryo_script_init(Edje_Part_Collection *edc) embryo_program_native_call_add(ep, "physics_set_rotation", _edje_embryo_fn_physics_set_rotation); embryo_program_native_call_add(ep, "physics_get_rotation", _edje_embryo_fn_physics_get_rotation); #endif + + embryo_program_native_call_add(ep, "swallow_has_content", _edje_embryo_fn_swallow_has_content); } void --
[EGIT] [core/efl] master 01/01: notify: change return value of "theme_apply" function with inner _theme_apply
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=84d48b498cf127edf9e36b0b250fa94117b62e85 commit 84d48b498cf127edf9e36b0b250fa94117b62e85 Author: Jinyong Park Date: Tue Jul 5 21:03:42 2016 +0900 notify: change return value of "theme_apply" function with inner _theme_apply Summary: notify's theme_apply function return value with eo_do_super(... elm_object_widget_theme_apply) but notify's super class is widget, widget_theme_apply return always ELM_THEME_APPLY_SUCCESS. so, notify's theme_apply function always return ELM_THEME_APPLY_SUCCESS, if it couldn't apply style correctly. notify apply style via _notify_theme_apply function, so that function must decide theme_apply function's return value. Reviewers: herb, singh.amitesh, Hermet, cedric, raster, jpeg Reviewed By: jpeg Differential Revision: https://phab.enlightenment.org/D4130 --- src/lib/elementary/elm_notify.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/elementary/elm_notify.c b/src/lib/elementary/elm_notify.c index 36d115b..57d53a8 100644 --- a/src/lib/elementary/elm_notify.c +++ b/src/lib/elementary/elm_notify.c @@ -19,7 +19,7 @@ #define MY_CLASS_NAME "Elm_Notify" #define MY_CLASS_NAME_LEGACY "elm_notify" -static void +static Elm_Theme_Apply _notify_theme_apply(Evas_Object *obj) { const char *style = elm_widget_style_get(obj); @@ -59,7 +59,7 @@ _notify_theme_apply(Evas_Object *obj) position = "center"; } - elm_widget_theme_object_set(obj, sd->notify, "notify", position, style); + return elm_widget_theme_object_set(obj, sd->notify, "notify", position, style); } /** @@ -149,7 +149,7 @@ _elm_notify_elm_widget_theme_apply(Eo *obj, Elm_Notify_Data *sd) _mirrored_set(obj, elm_widget_mirrored_get(obj)); - _notify_theme_apply(obj); + int_ret &= _notify_theme_apply(obj); if (sd->block_events) _block_events_theme_apply(obj); edje_object_scale_set --
[EGIT] [core/efl] master 01/01: theme: return enum from elm_widget_style_set instead of bool
jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3271ec8d18f715299dbf693c06d94cf08f2c8dc7 commit 3271ec8d18f715299dbf693c06d94cf08f2c8dc7 Author: Jinyong Park Date: Fri Jul 1 15:09:42 2016 +0900 theme: return enum from elm_widget_style_set instead of bool Summary: if trying to apply incorrect theme, widget apply default theme and return TRUE. so there is no way to check it really apply correct theme. To resolve this problem, _elm_theme_set return three type enum * related history : 4ca3ef45146e05908a13d1010909abeba9693ad6 * elm_object_style_set is public api, so I didn't change it. * typedef name [ Theme_Apply ] is temporarily, please suggest better one. @fix Reviewers: singh.amitesh, herb, Hermet, cedric, jpeg, raster Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D4073 --- src/lib/elementary/efl_ui_flip.c | 8 src/lib/elementary/efl_ui_grid.c | 8 src/lib/elementary/efl_ui_image.c| 8 src/lib/elementary/efl_ui_nstate.c | 8 src/lib/elementary/efl_ui_text.c | 10 +- src/lib/elementary/efl_ui_win.c | 28 src/lib/elementary/elc_combobox.c| 10 +- src/lib/elementary/elc_ctxpopup.c| 8 src/lib/elementary/elc_fileselector.c| 8 src/lib/elementary/elc_fileselector_button.c | 10 +- src/lib/elementary/elc_fileselector_entry.c | 10 +- src/lib/elementary/elc_hoversel.c| 10 +- src/lib/elementary/elc_multibuttonentry.c| 8 src/lib/elementary/elc_naviframe.c | 4 ++-- src/lib/elementary/elc_player.c | 8 src/lib/elementary/elc_popup.c | 4 ++-- src/lib/elementary/elm_actionslider.c| 10 +- src/lib/elementary/elm_box.c | 10 +- src/lib/elementary/elm_button.c | 8 src/lib/elementary/elm_calendar.c| 8 src/lib/elementary/elm_check.c | 10 +- src/lib/elementary/elm_clock.c | 8 src/lib/elementary/elm_colorselector.c | 10 +- src/lib/elementary/elm_conform.c | 8 src/lib/elementary/elm_datetime.c| 12 ++-- src/lib/elementary/elm_dayselector.c | 8 src/lib/elementary/elm_diskselector.c| 8 src/lib/elementary/elm_entry.c | 12 ++-- src/lib/elementary/elm_flipselector.c| 10 +- src/lib/elementary/elm_gengrid.c | 8 src/lib/elementary/elm_genlist.c | 8 src/lib/elementary/elm_grid.c| 8 src/lib/elementary/elm_hover.c | 8 src/lib/elementary/elm_icon.c| 8 src/lib/elementary/elm_index.c | 8 src/lib/elementary/elm_label.c | 8 src/lib/elementary/elm_layout.c | 26 -- src/lib/elementary/elm_list.c| 8 src/lib/elementary/elm_main.c| 4 +++- src/lib/elementary/elm_map.c | 10 +- src/lib/elementary/elm_mapbuf.c | 8 src/lib/elementary/elm_menu.c| 8 src/lib/elementary/elm_notify.c | 8 src/lib/elementary/elm_panel.c | 10 +- src/lib/elementary/elm_panes.c | 8 src/lib/elementary/elm_photo.c | 8 src/lib/elementary/elm_photocam.c| 8 src/lib/elementary/elm_plug.c| 8 src/lib/elementary/elm_priv.h| 4 ++-- src/lib/elementary/elm_progressbar.c | 10 +- src/lib/elementary/elm_radio.c | 10 +- src/lib/elementary/elm_route.c | 8 src/lib/elementary/elm_scroller.c| 8 src/lib/elementary/elm_segment_control.c | 8 src/lib/elementary/elm_separator.c | 8 src/lib/elementary/elm_slider.c | 10 +- src/lib/elementary/elm_spinner.c | 6 +++--- src/lib/elementary/elm_table.c | 8 src/lib/elementary/elm_theme.c | 13 ++--- src/lib/elementary/elm_toolbar.c | 12 ++-- src/lib/elementary/elm_widget.c | 25 + src/lib/elementary/elm_widget.eo | 13 ++--- src/lib/elementary/elm_widget.h | 6 +++--- 63 files changed, 305 insertions(+), 286 deletions(-) diff --git a/src/lib/elementary/efl_ui_flip.c b/src/lib/elementary/efl_ui_flip.c index 1c11d3d..78e6cb6 100644 --- a/sr
[EGIT] [core/efl] master 01/01: popup: remove max_sc_w because it's duplicate job
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5262fe7b9902d894eec9a82021b50e9afeecaaf5 commit 5262fe7b9902d894eec9a82021b50e9afeecaaf5 Author: Jinyong Park Date: Tue Jun 28 13:33:37 2016 +0900 popup: remove max_sc_w because it's duplicate job Summary: max_sc_w decide popup's "content" area size when popup scrollable is TRUE. but in popup's edc, "elm/popup/content/" has min size when scrollable is TRUE. (and it is content area layout) max_sc_w has fixed value, so I think deciding by edc is better than fixed code. Test Plan: 1. elementary_test -to popup 2. check "Enable popup scroll" 3. click any list item. 4. observe popup and compare before this patch. Reviewers: singh.amitesh, herb, Hermet, raster Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D4113 --- src/lib/elementary/elc_popup.c| 8 src/lib/elementary/elm_widget_popup.h | 1 - 2 files changed, 9 deletions(-) diff --git a/src/lib/elementary/elc_popup.c b/src/lib/elementary/elc_popup.c index 5ec3ca5..e99262c 100644 --- a/src/lib/elementary/elc_popup.c +++ b/src/lib/elementary/elc_popup.c @@ -405,10 +405,6 @@ _elm_popup_elm_widget_theme_apply(Eo *obj, Elm_Popup_Data *sd) elm_layout_signal_emit(sd->main_layout, "elm,state,title,icon,visible", "elm"); _populate_theme_scroll(sd); - if (sd->scroll && !sd->theme_scroll) - sd->max_sc_w = 240 * elm_config_scale_get() * elm_object_scale_get(obj); - else - sd->max_sc_w = 0; if (!sd->scroll && sd->theme_scroll) elm_layout_signal_emit(sd->content_area, "elm,scroll,disable", "elm"); else if (sd->scroll && sd->theme_scroll) @@ -477,10 +473,6 @@ _elm_popup_elm_layout_sizing_eval(Eo *obj, Elm_Popup_Data *sd) edje_object_size_min_restricted_calc(elm_layout_edje_get(sd->content_area), &minw, &minh, minw, minh); -if (!sd->theme_scroll && sd->scroll) - { - if (minw < sd->max_sc_w) minw = sd->max_sc_w; - } evas_object_size_hint_min_set(sd->content_area, minw, minh); if (minh > sd->max_sc_h) diff --git a/src/lib/elementary/elm_widget_popup.h b/src/lib/elementary/elm_widget_popup.h index e0669c4..27e9a59 100644 --- a/src/lib/elementary/elm_widget_popup.h +++ b/src/lib/elementary/elm_widget_popup.h @@ -48,7 +48,6 @@ struct _Elm_Popup_Data Action_Area_Data *buttons[ELM_POPUP_ACTION_BUTTON_MAX]; Elm_Wrap_Type content_text_wrap_type; unsigned int last_button_number; - Evas_Coordmax_sc_w; Evas_Coordmax_sc_h; Eina_Bool visible : 1; --
[EGIT] [core/efl] master 01/01: popup: add popup default scrollable flag config for other profiles.
jaehwan pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=1b765359ee4603b3b1713ca6973cecc072617b72 commit 1b765359ee4603b3b1713ca6973cecc072617b72 Author: Jinyong Park Date: Tue May 17 10:22:07 2016 +0900 popup: add popup default scrollable flag config for other profiles. Summary: The default scrollable flag of popup can be different in each profiles. So I added the scrollable configuration of popup. @feature Test Plan: 1. Before 1) elementary_test -to popup 2) resize window to smaller 3) Click 15th item, "popup-center-title + genlist content + 1 button" 4) Then popup will show, but its list is very long, only small part of popup could be shown. 2. After Patch 1) change "popup_scroller" value to 1 in base.src, then run elementary_test -to popup or ELM_POPUP_SCROLLABLE=1 elemantary_test -to popup 2) resize window to smaller 3) Click 15th item, "popup-center-title + genlist content + 1 button" 4) Then popup will show, popup's genlist will be in scroller, so entire popup can be shown. Reviewers: jaehwan, id213sin, cedric, raster, singh.amitesh, SanghyeonLee, Hermet Subscribers: Hermet, minkyu, herb, jpeg Differential Revision: https://phab.enlightenment.org/D3856 --- config/default/base.src.in | 1 + config/mobile/base.src.in | 1 + config/standard/base.src.in | 1 + src/bin/elementary/test_popup.c | 41 ++--- src/lib/elementary/elc_popup.c | 3 +++ src/lib/elementary/elm_config.c | 16 src/lib/elementary/elm_config.h | 22 ++ src/lib/elementary/elm_priv.h | 1 + 8 files changed, 63 insertions(+), 23 deletions(-) diff --git a/config/default/base.src.in b/config/default/base.src.in index b7270b3..bd2ec06 100644 --- a/config/default/base.src.in +++ b/config/default/base.src.in @@ -98,6 +98,7 @@ group "Elm_Config" struct { value "naviframe_prev_btn_auto_pushed" uchar: 1; value "popup_horizontal_align" double: 0.5; value "popup_vertical_align" double: 0.5; + value "popup_scrollable" uchar: 0; value "spinner_min_max_filter_enable" uchar: 0; group "color_palette" list { group "Elm_Custom_Palette" struct { diff --git a/config/mobile/base.src.in b/config/mobile/base.src.in index ace09b7..d753de5 100644 --- a/config/mobile/base.src.in +++ b/config/mobile/base.src.in @@ -102,6 +102,7 @@ group "Elm_Config" struct { value "naviframe_prev_btn_auto_pushed" uchar: 1; value "popup_horizontal_align" double: 0.5; value "popup_vertical_align" double: 0.5; + value "popup_scrollable" uchar: 0; value "spinner_min_max_filter_enable" uchar: 1; group "color_palette" list { group "Elm_Custom_Palette" struct { diff --git a/config/standard/base.src.in b/config/standard/base.src.in index 4b81b87..cf0d773 100644 --- a/config/standard/base.src.in +++ b/config/standard/base.src.in @@ -99,6 +99,7 @@ group "Elm_Config" struct { value "naviframe_prev_btn_auto_pushed" uchar: 1; value "popup_horizontal_align" double: 0.5; value "popup_vertical_align" double: 0.5; + value "popup_scrollable" uchar: 0; value "spinner_min_max_filter_enable" uchar: 0; group "color_palette" list { group "Elm_Custom_Palette" struct { diff --git a/src/bin/elementary/test_popup.c b/src/bin/elementary/test_popup.c index 3ab08e1..dc1274e 100644 --- a/src/bin/elementary/test_popup.c +++ b/src/bin/elementary/test_popup.c @@ -306,8 +306,7 @@ _popup_center_title_content_3button_cb(void *data, Evas_Object *obj EINA_UNUSED, char buf[256]; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); // popup title elm_object_part_text_set(popup, "title,text", "Title"); @@ -368,8 +367,7 @@ _popup_center_title_item_3button_cb(void *data, Evas_Object *obj EINA_UNUSED, Evas_Object *popup, *icon1, *btn1, *btn2, *btn3; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); // popup title elm_object_part_text_set(popup, "title,text", "Title"); @@ -441,8 +439,7 @@ _popup_center_title_text_2button_restack_cb(void *data, Evas_Object *obj EINA_UN Evas_Object *btn, *btn2; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); evas_object_smart_callback_add(popup,
[EGIT] [core/efl] master 01/01: popup: default scrollable option change to TRUE
jaehwan pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=2ddbc5fc9a34ee47bf7e511283ce5d602366907e commit 2ddbc5fc9a34ee47bf7e511283ce5d602366907e Author: Jinyong Park Date: Fri May 13 14:49:18 2016 +0900 popup: default scrollable option change to TRUE Summary: Usually, popup have a scroll bar when its content is too long to display in popup's size. But now, default option is unscrollable. So change default option and popup's test case. Reviewers: jaehwan, Hermet, herb Subscribers: cedric, singh.amitesh, jpeg Differential Revision: https://phab.enlightenment.org/D3941 --- src/bin/elementary/test_popup.c | 40 +--- src/lib/elementary/elc_popup.c | 2 ++ 2 files changed, 19 insertions(+), 23 deletions(-) diff --git a/src/bin/elementary/test_popup.c b/src/bin/elementary/test_popup.c index 3ab08e1..2d85632 100644 --- a/src/bin/elementary/test_popup.c +++ b/src/bin/elementary/test_popup.c @@ -306,8 +306,7 @@ _popup_center_title_content_3button_cb(void *data, Evas_Object *obj EINA_UNUSED, char buf[256]; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); // popup title elm_object_part_text_set(popup, "title,text", "Title"); @@ -368,8 +367,7 @@ _popup_center_title_item_3button_cb(void *data, Evas_Object *obj EINA_UNUSED, Evas_Object *popup, *icon1, *btn1, *btn2, *btn3; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); // popup title elm_object_part_text_set(popup, "title,text", "Title"); @@ -441,8 +439,7 @@ _popup_center_title_text_2button_restack_cb(void *data, Evas_Object *obj EINA_UN Evas_Object *btn, *btn2; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); evas_object_smart_callback_add(popup, "block,clicked", _restack_block_clicked_cb, NULL); @@ -486,8 +483,7 @@ _popup_center_text_1button_hide_show_cb(void *data, Evas_Object *obj EINA_UNUSED } g_popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(g_popup, is_popup_scroll); + elm_popup_scrollable_set(g_popup, is_popup_scroll); elm_object_text_set(g_popup, "Hide this popup by using the button." "When you click list item again, you can see this popup."); @@ -535,8 +531,7 @@ _popup_center_text_3button_add_remove_button_cb(void *data, int i; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); // popup title elm_object_part_text_set(popup, "title,text", @@ -571,8 +566,7 @@ _popup_transparent_cb(void *data, Evas_Object *obj EINA_UNUSED, Evas_Object *btn; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); elm_object_style_set(popup, "transparent"); elm_object_text_set(popup, "This Popup has transparent background"); @@ -595,8 +589,7 @@ _popup_transparent_align_cb(void *data, Evas_Object *obj EINA_UNUSED, Evas_Object *btn, *btn1; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); elm_object_style_set(popup, "transparent"); elm_object_text_set(popup, "This Popup has transparent background"); @@ -638,8 +631,7 @@ _popup_center_title_list_content_1button_cb(void *data, Evas_Object *obj EINA_UN Evas_Object *btn; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); elm_object_part_text_set(popup, "title,text", "Title"); // list as a popup content @@ -670,8 +662,7 @@ _popup_center_title_genlist_content_1button_cb(void *data, Evas_Object *obj EINA int i; popup = elm_popup_add(data); - if (is_popup_scroll) - elm_popup_scrollable_set(popup, is_popup_scroll); + elm_popup_scrollable_set(popup, is_popup_scroll); elm_object_part_text_set(popup, "title,text", "Title"); Elm_Genlist_Item_Class *itc1 = elm_genlist_item_class_new(); @@ -683,7 +674,9 @@ _popup_center_title_genlist_content_1button_cb(void *data, Evas_Object *obj EINA // genlist as a popup content genlist = elm_genlist_add(popup); - elm_genlist_m