From 8987ce816e97cdb48663ff448591ebdd98bf1121 Mon Sep 17 00:00:00 2001 From: Jihoon Kim Date: Sat, 10 Oct 2020 17:57:26 +0900 Subject: [PATCH] Apply rounded corner UI in IME selector popup Change-Id: I2cfc0d399a06e16448328df62ca73653d2326ea0 Signed-off-by: Jihoon Kim --- .../input_method_setting_list_popup_view.cpp | 25 ++++++++++++++++++++++ im_setting_list/input_method_setting_list_ui.cpp | 8 ++++++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/im_setting_list/input_method_setting_list_popup_view.cpp b/im_setting_list/input_method_setting_list_popup_view.cpp index c191605..5fd9922 100644 --- a/im_setting_list/input_method_setting_list_popup_view.cpp +++ b/im_setting_list/input_method_setting_list_popup_view.cpp @@ -195,6 +195,28 @@ static void gl_lang_changed(void *data, Evas_Object *obj, void *event_info) elm_genlist_realized_items_update(obj); } +#if !(defined(_WEARABLE) || defined(_MOBILE)) +static void gl_realized_cb(void *data, Evas_Object *obj, void *event_info) +{ + Elm_Object_Item *it = (Elm_Object_Item *)event_info; + Elm_Object_Item *first_item = elm_genlist_first_item_get(obj); + Elm_Object_Item *last_item = elm_genlist_last_item_get(obj); + + if (it == first_item && it == last_item) { + elm_object_item_signal_emit(it, "elm,state,group,single", "elm"); + } + else if (it == first_item) { + elm_object_item_signal_emit(it, "elm,state,group,top", "elm"); + } + else if (it == last_item) { + elm_object_item_signal_emit(it, "elm,state,group,bottom", "elm"); + } + else { + elm_object_item_signal_emit(it, "elm,state,group,middle", "elm"); + } +} +#endif + static Evas_Object *im_setting_list_genlist_create(appdata *ad, Evas_Object* parent, Evas_Object* conform) { if (!parent) @@ -212,6 +234,9 @@ static Evas_Object *im_setting_list_genlist_create(appdata *ad, Evas_Object* par evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_scroller_content_min_limit(genlist, EINA_FALSE, EINA_TRUE); evas_object_smart_callback_add(genlist, "language,changed", gl_lang_changed, NULL); +#if !(defined(_WEARABLE) || defined(_MOBILE)) + evas_object_smart_callback_add(genlist, "realized", gl_realized_cb, NULL); +#endif evas_object_show(genlist); return genlist; } diff --git a/im_setting_list/input_method_setting_list_ui.cpp b/im_setting_list/input_method_setting_list_ui.cpp index 86bea57..9fba5cc 100644 --- a/im_setting_list/input_method_setting_list_ui.cpp +++ b/im_setting_list/input_method_setting_list_ui.cpp @@ -522,19 +522,23 @@ static void gl_lang_changed(void *data, Evas_Object *obj, void *event_info) elm_genlist_realized_items_update(obj); } +#if !(defined(_WEARABLE) || defined(_MOBILE)) static void gl_realized_cb(void *data, Evas_Object *obj, void *event_info) { Elm_Object_Item *it = (Elm_Object_Item *)event_info; Elm_Object_Item *first_item = elm_genlist_first_item_get(obj); Elm_Object_Item *last_item = elm_genlist_last_item_get(obj); - if (it == first_item) + if (it == first_item && it == last_item) + elm_object_item_signal_emit(it, "elm,state,group,single", "elm"); + else if (it == first_item) elm_object_item_signal_emit(it, "elm,state,group,top", "elm"); else if (it == last_item) elm_object_item_signal_emit(it, "elm,state,group,bottom", "elm"); else elm_object_item_signal_emit(it, "elm,state,group,middle", "elm"); } +#endif static Evas_Object *im_setting_list_genlist_create(appdata *ad) { @@ -548,7 +552,9 @@ static Evas_Object *im_setting_list_genlist_create(appdata *ad) eext_rotary_object_event_activated_set(ad->main_circle_genlist, EINA_TRUE); #endif evas_object_smart_callback_add(genlist, "language,changed", gl_lang_changed, NULL); +#if !(defined(_WEARABLE) || defined(_MOBILE)) evas_object_smart_callback_add(genlist, "realized", gl_realized_cb, NULL); +#endif evas_object_show(genlist); return genlist; } -- 2.7.4