[EGIT] [core/efl] master 01/01: evas wbmp: fix wrong calc order.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=808df5ecc229455580685fbe2dac7ab100a092d1 commit 808df5ecc229455580685fbe2dac7ab100a092d1 Author: Hermet Park Date: Wed Apr 24 14:01:06 2019 +0900 evas wbmp: fix wrong calc order. Double check patch again, since my wrong logical thinking, Every width must be considered to rounding up fiting 8 bits. this new compuation must be correct. --- src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c index 181b14fa90..4a3ae77a32 100644 --- a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c +++ b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c @@ -76,7 +76,7 @@ evas_image_load_file_head_wbmp(void *loader_data, /* Wbmp header identifier is too weak Here checks size validation whether it's acutal wbmp or not. */ - if w * h) + 7) >> 3) + position != length) + if w + 7) >> 3) * h) + position != length) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; @@ -138,7 +138,7 @@ evas_image_load_file_data_wbmp(void *loader_data, /* Wbmp header identifier is too weak Here checks size validation whether it's acutal wbmp or not. */ - if w * h) + 7) >> 3) + position != length) + if w + 7) >> 3) * h) + position != length) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; --
[EGIT] [core/efl] master 01/01: eolian: remove unreachable code.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=79183150c7182af5b06cb2363f822cab433b4990 commit 79183150c7182af5b06cb2363f822cab433b4990 Author: Hermet Park Date: Wed Apr 24 13:19:12 2019 +0900 eolian: remove unreachable code. --- src/lib/eolian/database_validate.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index d9ca18a755..285d19a692 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -198,8 +198,9 @@ _validate_typedecl(Validate_State *vals, Eolian_Typedecl *tp) default: return _reset_stable(vals, was_stable, EINA_FALSE); } - _reset_stable(vals, was_stable, EINA_TRUE); - return _validate(>base); + + //Unexpected case? + return EINA_FALSE; } static const char * const eo_complex_frees[] = --
[EGIT] [core/efl] master 01/02: Revert "evas-wbmp: revert previous two patches"
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=54754ab8781f78cc2e768c6f067b1418f4066b8e commit 54754ab8781f78cc2e768c6f067b1418f4066b8e Author: Hermet Park Date: Wed Apr 24 10:10:36 2019 +0900 Revert "evas-wbmp: revert previous two patches" This reverts commit 0ebf41c003ea89f10c45ae7a2e53c68302c05103. --- .../evas/image_loaders/wbmp/evas_image_load_wbmp.c | 21 +++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c index 633afe9567..7f56da6d02 100644 --- a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c +++ b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c @@ -73,6 +73,15 @@ evas_image_load_file_head_wbmp(void *loader_data, position++; /* skipping one byte */ if (read_mb(, map, length, ) < 0) goto bail; if (read_mb(, map, length, ) < 0) goto bail; + + /* Wbmp header identifier is too weak + Here checks size validation whether it's acutal wbmp or not. */ + if (((w * h) >> 3) + position != length) + { +*error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; +goto bail; + } + if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || IMG_TOO_BIG(w, h)) { @@ -116,11 +125,20 @@ evas_image_load_file_data_wbmp(void *loader_data, if (!map) goto bail; if (read_mb(, map, length, ) < 0) goto bail; + + if (type != 0) + { +*error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; +goto bail; + } + position++; /* skipping one byte */ if (read_mb(, map, length, ) < 0) goto bail; if (read_mb(, map, length, ) < 0) goto bail; - if (type != 0) + /* Wbmp header identifier is too weak + Here checks size validation whether it's acutal wbmp or not. */ + if (((w * h) >> 3) + position != length) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; @@ -145,7 +163,6 @@ evas_image_load_file_data_wbmp(void *loader_data, for (y = 0; y < (int)prop->h; y++) { -if (position + line_length > length) goto bail; line = ((unsigned char*) map) + position; position += line_length; for (x = 0; x < (int)prop->w; x++) --
[EGIT] [core/efl] master 02/02: evas wbmp loader: coming previous patch with fixing wrong calc.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bffce65f9c719e7c82724ffb5c7557b6ee5e4966 commit bffce65f9c719e7c82724ffb5c7557b6ee5e4966 Author: Hermet Park Date: Wed Apr 24 10:18:57 2019 +0900 evas wbmp loader: coming previous patch with fixing wrong calc. Those bits must be rounded if they are not fit to 8 bits. see: 68fe9ec6bf60b4730ad7fdbf2698dc7aa130b94d --- src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c index 7f56da6d02..181b14fa90 100644 --- a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c +++ b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c @@ -76,7 +76,7 @@ evas_image_load_file_head_wbmp(void *loader_data, /* Wbmp header identifier is too weak Here checks size validation whether it's acutal wbmp or not. */ - if (((w * h) >> 3) + position != length) + if w * h) + 7) >> 3) + position != length) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; @@ -138,7 +138,7 @@ evas_image_load_file_data_wbmp(void *loader_data, /* Wbmp header identifier is too weak Here checks size validation whether it's acutal wbmp or not. */ - if (((w * h) >> 3) + position != length) + if w * h) + 7) >> 3) + position != length) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; --
[EGIT] [core/efl] master 04/05: ecore: rely on event instead of creating one Eo object per future that need resolving.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=1ec4ad155688df9b1cec8e608481d64e776feae8 commit 1ec4ad155688df9b1cec8e608481d64e776feae8 Author: Cedric BAIL Date: Thu Mar 28 17:18:08 2019 -0700 ecore: rely on event instead of creating one Eo object per future that need resolving. This was a terrible oversight, but the point of having a small native type for future was for making them efficient. Still we were using one Eo object for dispatching per future to dispatch new value. I could have gathered all the dispatch with just one object, but at the end we do have one object that notify us of the loop iteration... the loop object! And we have event on that object that we can rely to trigger the dispatching of future without requiring any additional object. So let's do that instead. Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D8567 --- src/lib/ecore/ecore_events.c | 105 ++ src/lib/ecore/ecore_private.h | 2 + 2 files changed, 48 insertions(+), 59 deletions(-) diff --git a/src/lib/ecore/ecore_events.c b/src/lib/ecore/ecore_events.c index 15667e9bd9..01a4c3d019 100644 --- a/src/lib/ecore/ecore_events.c +++ b/src/lib/ecore/ecore_events.c @@ -12,16 +12,13 @@ typedef struct _Ecore_Future_Schedule_Entry Eina_Future_Schedule_Entry base; Eina_Future_Scheduler_Cb cb; Eina_Future *future; - Eo *event; Eina_Value value; } Ecore_Future_Schedule_Entry; // // XXX: still using legacy ecore events -//static Ecore_Event_Handler *future_handler = NULL; static Eina_Boolshutting_down = EINA_FALSE; static Eina_Mempool*mp_future_schedule_entry = NULL; -//static int ECORE_EV_FUTURE_ID = -1; // // @@ -129,52 +126,47 @@ ecore_event_current_event_get(void) return ecore_event_message_handler_current_event_get(_event_msg_handler); } -/* XXX: -static Eina_Bool -ecore_future_dispatched(void *data EINA_UNUSED, -int type EINA_UNUSED, -void *event) -{ - Ecore_Future_Schedule_Entry *entry = event; - EINA_SAFETY_ON_NULL_RETURN_VAL(entry, EINA_FALSE); +static void _future_dispatch_cb(void *data, const Efl_Event *ev EINA_UNUSED); +static void _event_del_cb(void *data, const Efl_Event *ev); - entry->event = NULL; - entry->cb(entry->future, entry->value); - return EINA_FALSE; -} +EFL_CALLBACKS_ARRAY_DEFINE(ecore_future_callbacks, + { EFL_LOOP_EVENT_IDLE_ENTER, _future_dispatch_cb }, + { EFL_LOOP_EVENT_IDLE, _future_dispatch_cb }, + { EFL_EVENT_DEL, _event_del_cb }); static void -ecore_future_free(void *user_data, - void *func_data EINA_UNUSED) +_future_dispatch_cb(void *data, const Efl_Event *ev EINA_UNUSED) { - Ecore_Future_Schedule_Entry *entry = user_data; - if (entry->event) + Efl_Loop_Future_Scheduler *loopsched = data; + Eina_List *entries = loopsched->future_entries; + Ecore_Future_Schedule_Entry *entry; + + loopsched->future_entries = NULL; + efl_event_callback_array_del((Eo *) loopsched->loop, ecore_future_callbacks(), loopsched); + + EINA_LIST_FREE(entries, entry) { -eina_future_cancel(entry->future); -eina_value_flush(>value); +entry->cb(entry->future, entry->value); +eina_mempool_free(mp_future_schedule_entry, entry); } - eina_mempool_free(mp_future_schedule_entry, entry); } -*/ static void -_future_dispatch_cb(void *data, const Efl_Event *ev EINA_UNUSED) +_event_del_cb(void *data, const Efl_Event *ev EINA_UNUSED) { - Ecore_Future_Schedule_Entry *entry = data; - entry->event = NULL; - entry->cb(entry->future, entry->value); -} + Efl_Loop_Future_Scheduler *loopsched = data; + Eina_List *entries = loopsched->future_entries; + Ecore_Future_Schedule_Entry *entry; -static void -_event_del_cb(void *data, const Efl_Event *ev) -{ - Ecore_Future_Schedule_Entry *entry = data; - if ((ev->object == (Eo *) entry->event) && entry->future) + loopsched->future_entries = NULL; + efl_event_callback_array_del((Eo *) loopsched->loop, ecore_future_callbacks(), loopsched); + + EINA_LIST_FREE(entries, entry) { eina_future_cancel(entry->future); eina_value_flush(>value); +eina_mempool_free(mp_future_schedule_entry, entry); } - eina_mempool_free(mp_future_schedule_entry, entry); } static Eina_Future_Schedule_Entry * @@ -192,40 +184,35 @@ ecore_future_schedule(Eina_Future_Scheduler *sched, entry->cb = cb; entry->future = future; entry->value = value; - entry->event = efl_loop_message_future_handler_message_type_add - (loopsched->loop_data->future_message_handler); - EINA_SAFETY_ON_NULL_GOTO(entry->event, err); -
[EGIT] [core/efl] master 01/05: efl_ui_popup: fix widget_parent inheritance
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f9143ec63457bedf08c2bbd237066374341e165b commit f9143ec63457bedf08c2bbd237066374341e165b Author: Marcel Hollerbach Date: Mon Apr 22 21:30:05 2019 +0200 efl_ui_popup: fix widget_parent inheritance when you inherit from widget_parent, you MUST call the super function. Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D8680 --- src/lib/elementary/efl_ui_popup.c | 2 ++ src/tests/elementary/spec/generator.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/efl_ui_popup.c b/src/lib/elementary/efl_ui_popup.c index 47ef65b4a9..341de7e750 100644 --- a/src/lib/elementary/efl_ui_popup.c +++ b/src/lib/elementary/efl_ui_popup.c @@ -112,6 +112,8 @@ _efl_ui_popup_efl_ui_widget_widget_parent_set(Eo *obj, Efl_Ui_Popup_Data *pd EIN efl_event_callback_add(pd->win_parent, EFL_GFX_ENTITY_EVENT_SIZE_CHANGED, _parent_geom_cb, obj); efl_event_callback_add(pd->win_parent, EFL_GFX_ENTITY_EVENT_POSITION_CHANGED, _parent_geom_cb, obj); + + efl_ui_widget_parent_set(efl_super(obj, MY_CLASS), parent); } EOLIAN static void diff --git a/src/tests/elementary/spec/generator.py b/src/tests/elementary/spec/generator.py index 1c61efac6a..72af7017fa 100755 --- a/src/tests/elementary/spec/generator.py +++ b/src/tests/elementary/spec/generator.py @@ -6,7 +6,7 @@ tests = [ ["Efl.Content" , "Efl.Ui.Button", "Efl.Ui.Frame", "Efl.Ui.Grid_Default_Item", "Efl.Ui.List_Default_Item", "Efl.Ui.List_Empty_Item", "Efl.Ui.Navigation_Layout", "Efl.Ui.Panel", "Efl.Ui.Progressbar", - "Efl.Ui.Radio"] + "Efl.Ui.Radio", "Efl.Ui.Popup"] ] fixture_gen_template = """ --
[EGIT] [core/efl] master 05/05: examples : update list_view examples to use item_class_set not layout_theme_config.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=caa1542610a7073706f5e5200d58075ea83b04b1 commit caa1542610a7073706f5e5200d58075ea83b04b1 Author: SangHyeon Jade Lee Date: Tue Apr 23 07:34:32 2019 + examples : update list_view examples to use item_class_set not layout_theme_config. widget_factory support item_class_set for factory created child. Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D8684 --- src/examples/elementary/efl_ui_list_view_example_1.c | 2 +- src/examples/elementary/efl_ui_list_view_example_2.c | 2 +- src/examples/elementary/efl_ui_list_view_example_3.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/examples/elementary/efl_ui_list_view_example_1.c b/src/examples/elementary/efl_ui_list_view_example_1.c index 04ae147f2a..78489017ca 100644 --- a/src/examples/elementary/efl_ui_list_view_example_1.c +++ b/src/examples/elementary/efl_ui_list_view_example_1.c @@ -87,10 +87,10 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) ); factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win); + efl_ui_widget_factory_item_class_set(factory, EFL_UI_LIST_DEFAULT_ITEM_CLASS); efl_ui_property_bind(factory, "signal/efl,state,%v", "odd_style"); efl_ui_property_bind(factory, "signal/efl,state,%{selected;unselected}", "selected"); efl_ui_property_bind(factory, "efl.text", "name"); - efl_ui_layout_factory_theme_config(factory, "list_item", NULL, "default"); li = efl_add(EFL_UI_LIST_VIEW_CLASS, win , efl_ui_list_view_layout_factory_set(efl_added, factory) diff --git a/src/examples/elementary/efl_ui_list_view_example_2.c b/src/examples/elementary/efl_ui_list_view_example_2.c index a843f6ed9c..5a4d680614 100644 --- a/src/examples/elementary/efl_ui_list_view_example_2.c +++ b/src/examples/elementary/efl_ui_list_view_example_2.c @@ -33,8 +33,8 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) model = efl_add(EFL_IO_MODEL_CLASS, win, efl_io_model_path_set(efl_added, dirname)); factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win); + efl_ui_widget_factory_item_class_set(factory, EFL_UI_LIST_DEFAULT_ITEM_CLASS); efl_ui_property_bind(factory, "efl.text", "filename"); - efl_ui_layout_factory_theme_config(factory, "list_item", NULL, "default"); li = efl_add(EFL_UI_LIST_VIEW_CLASS, win); efl_ui_list_view_layout_factory_set(li, factory); diff --git a/src/examples/elementary/efl_ui_list_view_example_3.c b/src/examples/elementary/efl_ui_list_view_example_3.c index c027856df7..5a233b3430 100644 --- a/src/examples/elementary/efl_ui_list_view_example_3.c +++ b/src/examples/elementary/efl_ui_list_view_example_3.c @@ -223,7 +223,7 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) priv->model = _make_model(); factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win); efl_ui_property_bind(factory, "efl.text", "filename"); - efl_ui_layout_factory_theme_config(factory, "list_item", NULL, "default"); + efl_ui_widget_factory_item_class_set(factory, EFL_UI_LIST_DEFAULT_ITEM_CLASS); priv->list1 = efl_add(EFL_UI_LIST_VIEW_CLASS, win, efl_ui_view_model_set(efl_added, priv->model)); efl_event_callback_add(priv->list1, EFL_UI_LIST_VIEW_EVENT_ITEM_REALIZED, _realized_1_cb, priv); @@ -235,7 +235,7 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win); efl_ui_property_bind(factory, "efl.text", "filename"); efl_ui_property_bind(factory, "signal/efl,state,%v", "selected"); - efl_ui_layout_factory_theme_config(factory, "list_item", NULL, "default"); + efl_ui_widget_factory_item_class_set(factory, EFL_UI_LIST_DEFAULT_ITEM_CLASS); priv->list2 = efl_add(EFL_UI_LIST_VIEW_CLASS, win, efl_ui_view_model_set(efl_added, priv->model)); efl_event_callback_add(priv->list2, EFL_UI_LIST_VIEW_EVENT_ITEM_REALIZED, _realized_2_cb, priv->list2); evas_object_size_hint_weight_set(priv->list2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); --
[EGIT] [core/efl] master 02/05: efl_ui_tab_page: implement content_set / unset correctly
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=7ee0a3e05546489ea2444aaddef414bb8ee137d0 commit 7ee0a3e05546489ea2444aaddef414bb8ee137d0 Author: Marcel Hollerbach Date: Mon Apr 22 21:52:45 2019 +0200 efl_ui_tab_page: implement content_set / unset correctly This patchset ensures that the following features are supported: - content-widget deletion on set content - content-widget validation on set calls - invalid cases return false - event emission Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D8681 --- src/lib/elementary/efl_ui_tab_page.c | 22 +- src/tests/elementary/spec/generator.py | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/lib/elementary/efl_ui_tab_page.c b/src/lib/elementary/efl_ui_tab_page.c index a0bd26ef70..cb17b98bcf 100644 --- a/src/lib/elementary/efl_ui_tab_page.c +++ b/src/lib/elementary/efl_ui_tab_page.c @@ -11,24 +11,44 @@ #define MY_CLASS EFL_UI_TAB_PAGE_CLASS +static void +_invalidate_cb(void *data, const Efl_Event *ev EINA_UNUSED) +{ + efl_content_unset(data); +} + EOLIAN static Eina_Bool _efl_ui_tab_page_efl_content_content_set(Eo *obj, Efl_Ui_Tab_Page_Data *sd, Eo *content) { if (sd->content) { efl_content_unset(efl_part(obj, "efl.content")); +efl_event_callback_del(sd->content, EFL_EVENT_INVALIDATE, _invalidate_cb, obj); efl_del(sd->content); +sd->content = NULL; + } + + if (content && !efl_ui_widget_sub_object_add(obj, content)) + { +efl_event_callback_call(obj, EFL_CONTENT_EVENT_CONTENT_CHANGED, NULL); +return EINA_FALSE; } sd->content = content; + efl_event_callback_add(sd->content, EFL_EVENT_INVALIDATE, _invalidate_cb, obj); + efl_event_callback_call(obj, EFL_CONTENT_EVENT_CONTENT_CHANGED, content); + efl_content_set(efl_part(obj, "efl.content"), sd->content); return EINA_TRUE; } EOLIAN static Efl_Gfx_Entity* -_efl_ui_tab_page_efl_content_content_unset(Eo *obj, Efl_Ui_Tab_Page_Data *pd EINA_UNUSED) +_efl_ui_tab_page_efl_content_content_unset(Eo *obj, Efl_Ui_Tab_Page_Data *pd) { + efl_event_callback_del(pd->content, EFL_EVENT_INVALIDATE, _invalidate_cb, obj); + pd->content = NULL; + efl_event_callback_call(obj, EFL_CONTENT_EVENT_CONTENT_CHANGED, NULL); return efl_content_unset(efl_part(obj, "efl.content")); } diff --git a/src/tests/elementary/spec/generator.py b/src/tests/elementary/spec/generator.py index 72af7017fa..79652a32a5 100755 --- a/src/tests/elementary/spec/generator.py +++ b/src/tests/elementary/spec/generator.py @@ -6,7 +6,7 @@ tests = [ ["Efl.Content" , "Efl.Ui.Button", "Efl.Ui.Frame", "Efl.Ui.Grid_Default_Item", "Efl.Ui.List_Default_Item", "Efl.Ui.List_Empty_Item", "Efl.Ui.Navigation_Layout", "Efl.Ui.Panel", "Efl.Ui.Progressbar", - "Efl.Ui.Radio", "Efl.Ui.Popup"] + "Efl.Ui.Radio", "Efl.Ui.Popup", "Efl.Ui.Tab_Page"] ] fixture_gen_template = """ --
[EGIT] [core/efl] master 03/05: efl_ui_scroller: fix Efl.Content implementation
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=afd4e6bd5bf4e06358fe7147b21fc638897c8931 commit afd4e6bd5bf4e06358fe7147b21fc638897c8931 Author: Marcel Hollerbach Date: Mon Apr 22 22:10:19 2019 +0200 efl_ui_scroller: fix Efl.Content implementation this commit ensures the following: - Delete content when new content is set - Content set input validation - Correct parent setting Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D8682 --- src/lib/elementary/efl_ui_scroller.c | 21 ++--- src/tests/elementary/spec/generator.py | 2 +- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/lib/elementary/efl_ui_scroller.c b/src/lib/elementary/efl_ui_scroller.c index 0fef382346..50113c12b1 100644 --- a/src/lib/elementary/efl_ui_scroller.c +++ b/src/lib/elementary/efl_ui_scroller.c @@ -152,11 +152,7 @@ static void _efl_ui_scroller_content_del_cb(void *data, const Efl_Event *event EINA_UNUSED) { - EFL_UI_SCROLLER_DATA_GET_OR_RETURN(data, sd); - - sd->content = NULL; - if (!sd->smanager) return; - efl_ui_scrollbar_bar_visibility_update(sd->smanager); + efl_content_unset(data); } EOLIAN static Eina_Bool @@ -167,14 +163,23 @@ _efl_ui_scroller_efl_content_content_set(Eo *obj, if (sd->content) { efl_content_set(sd->pan_obj, NULL); -efl_event_callback_del(sd->content, EFL_EVENT_DEL, +efl_event_callback_del(sd->content, EFL_EVENT_INVALIDATE, _efl_ui_scroller_content_del_cb, obj); +efl_del(sd->content); +sd->content = NULL; + } + + if (content && !efl_ui_widget_sub_object_add(obj, content)) + { +efl_event_callback_call(obj, EFL_CONTENT_EVENT_CONTENT_CHANGED, NULL); +return EINA_FALSE; } sd->content = content; + efl_event_callback_call(obj, EFL_CONTENT_EVENT_CONTENT_CHANGED, sd->content); if (!content) return EINA_TRUE; - efl_event_callback_add(sd->content, EFL_EVENT_DEL, + efl_event_callback_add(sd->content, EFL_EVENT_INVALIDATE, _efl_ui_scroller_content_del_cb, obj); efl_content_set(sd->pan_obj, content); @@ -195,7 +200,9 @@ _efl_ui_scroller_efl_content_content_unset(Eo *obj EINA_UNUSED, Efl_Ui_Scroller_ { Efl_Gfx_Entity *old_content = pd->content; + efl_event_callback_del(pd->content, EFL_EVENT_INVALIDATE, _efl_ui_scroller_content_del_cb, obj); pd->content = NULL; + efl_event_callback_call(obj, EFL_CONTENT_EVENT_CONTENT_CHANGED, NULL); if (pd->smanager) { efl_ui_scrollbar_bar_visibility_update(pd->smanager); diff --git a/src/tests/elementary/spec/generator.py b/src/tests/elementary/spec/generator.py index 79652a32a5..3a84b01862 100755 --- a/src/tests/elementary/spec/generator.py +++ b/src/tests/elementary/spec/generator.py @@ -6,7 +6,7 @@ tests = [ ["Efl.Content" , "Efl.Ui.Button", "Efl.Ui.Frame", "Efl.Ui.Grid_Default_Item", "Efl.Ui.List_Default_Item", "Efl.Ui.List_Empty_Item", "Efl.Ui.Navigation_Layout", "Efl.Ui.Panel", "Efl.Ui.Progressbar", - "Efl.Ui.Radio", "Efl.Ui.Popup", "Efl.Ui.Tab_Page"] + "Efl.Ui.Radio", "Efl.Ui.Popup", "Efl.Ui.Tab_Page", "Efl.Ui.Scroller"] ] fixture_gen_template = """ --
[EGIT] [core/efl] master 01/01: efl_core_command_line: Fix resource leak
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=22edf6f4b7fbea85cd0c7549338ec17d67326307 commit 22edf6f4b7fbea85cd0c7549338ec17d67326307 Author: Christopher Michael Date: Tue Apr 23 09:26:13 2019 -0400 efl_core_command_line: Fix resource leak Coverity reports that we leak the return from _escape(command) here, so since we have to free the return from _escape, place it in it's own variable that we can call free() on after we are done with it. Fixes CID1399105 @fix Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D8688 --- src/lib/ecore/efl_core_command_line.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/ecore/efl_core_command_line.c b/src/lib/ecore/efl_core_command_line.c index 1c084030f1..64de7a9766 100644 --- a/src/lib/ecore/efl_core_command_line.c +++ b/src/lib/ecore/efl_core_command_line.c @@ -215,6 +215,7 @@ _efl_core_command_line_command_array_set(Eo *obj EINA_UNUSED, Efl_Core_Command_L { char *content = eina_array_data_get(array, i); char *param = calloc(1, strlen(content) + 1); +char *esc; if (!param) { @@ -236,7 +237,9 @@ _efl_core_command_line_command_array_set(Eo *obj EINA_UNUSED, Efl_Core_Command_L //build the command if (i != 0) eina_strbuf_append(command, " "); -eina_strbuf_append(command, _escape(content)); +esc = _escape(content); +eina_strbuf_append(command, esc); +free(esc); //convert string to stringshare strcpy(param, content); _remove_invalid_chars(param); --
[EGIT] [core/efl] master 01/01: csharp: Fix test code memory handling
vitorsousa pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=e23914fce785730ac3b0a736c6555fe6cadaddf0 commit e23914fce785730ac3b0a736c6555fe6cadaddf0 Author: Lauro Moura Date: Tue Apr 23 12:12:31 2019 -0300 csharp: Fix test code memory handling Summary: It was causing the test to crash when running in debug build. Also some minor fixes cleaning up stuff when exiting. Fixes T7792. Reviewers: segfaultxavi, vitor.sousa Reviewed By: segfaultxavi, vitor.sousa Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7792 Differential Revision: https://phab.enlightenment.org/D8679 --- src/tests/efl_mono/dummy_test_object.eo | 1 + src/tests/efl_mono/libefl_mono_native_test.c | 37 ++-- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/tests/efl_mono/dummy_test_object.eo b/src/tests/efl_mono/dummy_test_object.eo index a50c70e2e6..b5436a636e 100644 --- a/src/tests/efl_mono/dummy_test_object.eo +++ b/src/tests/efl_mono/dummy_test_object.eo @@ -1412,6 +1412,7 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { } implements { Efl.Object.constructor; + Efl.Object.destructor; Efl.Object.provider_find; Dummy.Test_Iface.emit_nonconflicted; Dummy.Test_Iface.iface_prop { get; set; } diff --git a/src/tests/efl_mono/libefl_mono_native_test.c b/src/tests/efl_mono/libefl_mono_native_test.c index 17ef5065b2..52d9190994 100644 --- a/src/tests/efl_mono/libefl_mono_native_test.c +++ b/src/tests/efl_mono/libefl_mono_native_test.c @@ -162,6 +162,30 @@ _dummy_test_object_efl_object_constructor(Eo *obj, Dummy_Test_Object_Data *pd) return obj; } +static void +_dummy_test_object_efl_object_destructor(Eo *obj, Dummy_Test_Object_Data *pd) +{ + if (pd->stored_value) + { +eina_value_free(pd->stored_value); +pd->stored_value = NULL; + } + + if (pd->promise) + { +eina_promise_reject(pd->promise, ECANCELED); +pd->promise = NULL; + } + + if (pd->list_for_accessor) + { +eina_list_free(pd->list_for_accessor); +pd->list_for_accessor = NULL; + } + + efl_destructor(efl_super(obj, DUMMY_TEST_OBJECT_CLASS)); +} + Efl_Object *_dummy_test_object_return_object(Eo *obj, EINA_UNUSED Dummy_Test_Object_Data *pd) { return obj; @@ -3700,11 +3724,11 @@ void _dummy_test_object_set_value_ptr_own(EINA_UNUSED Eo *obj, Dummy_Test_Object void _dummy_test_object_set_value(EINA_UNUSED Eo *obj, Dummy_Test_Object_Data *pd, Eina_Value value) { -if (pd->stored_value) { -eina_value_free(pd->stored_value); -} else { -pd->stored_value = eina_value_new(EINA_VALUE_TYPE_INT); -} +if (pd->stored_value) + eina_value_free(pd->stored_value); + +pd->stored_value = eina_value_new(EINA_VALUE_TYPE_INT); + eina_value_copy(, pd->stored_value); } @@ -3922,7 +3946,6 @@ int _dummy_test_object_dummy_test_iface_iface_prop_get(EINA_UNUSED const Eo *obj Eo * _dummy_test_object_efl_object_provider_find(EINA_UNUSED const Eo *obj, Dummy_Test_Object_Data *pd, const Efl_Class *klass) { -EINA_LOG_ERR("klass: %p, NUMBERWRAPPER: %p", klass, DUMMY_NUMBERWRAPPER_CLASS); if (klass == DUMMY_NUMBERWRAPPER_CLASS) return pd->provider; else if (klass == DUMMY_TEST_IFACE_INTERFACE) @@ -3932,13 +3955,11 @@ Eo * _dummy_test_object_efl_object_provider_find(EINA_UNUSED const Eo *obj, Dumm Efl_Object *_dummy_test_object_call_find_provider(Eo *obj, EINA_UNUSED Dummy_Test_Object_Data *pd, const Efl_Class *type) { -printf("CALLING FIND PROVIDER FROM C"); return efl_provider_find(obj, type); } Efl_Object *_dummy_test_object_call_find_provider_for_iface(Eo *obj, EINA_UNUSED Dummy_Test_Object_Data *pd) { -printf("CALLING FIND PROVIDER FROM C"); return efl_provider_find(obj, DUMMY_TEST_IFACE_INTERFACE); } --
[EGIT] [core/efl] master 01/01: evas-wbmp: revert previous two patches
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0ebf41c003ea89f10c45ae7a2e53c68302c05103 commit 0ebf41c003ea89f10c45ae7a2e53c68302c05103 Author: Mike Blumenkrantz Date: Tue Apr 23 09:38:12 2019 -0400 evas-wbmp: revert previous two patches Revert "evas wbmp: remove unnecessary size overflow." This reverts commit 1061d0a75164111ef5dc8df21f446023438f39bc. Revert "evas image: check format more strong way for wbmp." This reverts commit 68fe9ec6bf60b4730ad7fdbf2698dc7aa130b94d. this caused wbmp files to no longer be loadable ref T7824 Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D8689 --- .../evas/image_loaders/wbmp/evas_image_load_wbmp.c | 21 ++--- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c index 7f56da6d02..633afe9567 100644 --- a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c +++ b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c @@ -73,15 +73,6 @@ evas_image_load_file_head_wbmp(void *loader_data, position++; /* skipping one byte */ if (read_mb(, map, length, ) < 0) goto bail; if (read_mb(, map, length, ) < 0) goto bail; - - /* Wbmp header identifier is too weak - Here checks size validation whether it's acutal wbmp or not. */ - if (((w * h) >> 3) + position != length) - { -*error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; -goto bail; - } - if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || IMG_TOO_BIG(w, h)) { @@ -125,20 +116,11 @@ evas_image_load_file_data_wbmp(void *loader_data, if (!map) goto bail; if (read_mb(, map, length, ) < 0) goto bail; - - if (type != 0) - { -*error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; -goto bail; - } - position++; /* skipping one byte */ if (read_mb(, map, length, ) < 0) goto bail; if (read_mb(, map, length, ) < 0) goto bail; - /* Wbmp header identifier is too weak - Here checks size validation whether it's acutal wbmp or not. */ - if (((w * h) >> 3) + position != length) + if (type != 0) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; @@ -163,6 +145,7 @@ evas_image_load_file_data_wbmp(void *loader_data, for (y = 0; y < (int)prop->h; y++) { +if (position + line_length > length) goto bail; line = ((unsigned char*) map) + position; position += line_length; for (x = 0; x < (int)prop->w; x++) --
[EGIT] [core/efl] master 01/01: mono-docs: Honor DESTDIR when installing XML docs
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f215108bea699ff1b63afe4350fde626b8e4f661 commit f215108bea699ff1b63afe4350fde626b8e4f661 Author: Xavi Artigas Date: Tue Apr 23 11:53:26 2019 + mono-docs: Honor DESTDIR when installing XML docs The DESTDIR envvar was not being taken into account and the XML doc file ended up in a different place than the DLL. Fix T7802 Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D8687 --- meson/meson_csharp_docs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson/meson_csharp_docs.sh b/meson/meson_csharp_docs.sh index 4e6577a173..ea0a000328 100755 --- a/meson/meson_csharp_docs.sh +++ b/meson/meson_csharp_docs.sh @@ -4,4 +4,4 @@ # as meson's library() call can't track files other than the generated # efl_mono.dll -cp $1 $2 +cp "$1" "$DESTDIR$2" --
[EGIT] [core/efl] master 01/01: fix compilation on alpine
zmike pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=a09920c96e0beb33b407399eb052230234856da7 commit a09920c96e0beb33b407399eb052230234856da7 Author: Boris Faure Date: Tue Apr 23 09:40:53 2019 -0400 fix compilation on alpine Reviewers: zmike Reviewed By: zmike Subscribers: zmike, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8642 --- src/Makefile_Evas.am | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Makefile_Evas.am b/src/Makefile_Evas.am index 8e419e87f3..95ec86e756 100644 --- a/src/Makefile_Evas.am +++ b/src/Makefile_Evas.am @@ -2208,6 +2208,7 @@ modules_evas_image_loaders_tgv_module_la_CPPFLAGS = \ -I$(top_builddir)/src/lib/efl \ -I$(top_srcdir)/src/static_libs/rg_etc \ -I$(top_srcdir)/src/lib/evas/ \ +-I$(top_srcdir)/src/lib/evas/include \ -DEFL_BUILD \ @EVAS_CFLAGS@ \ @NEON_CFLAGS@ @@ -2245,6 +2246,7 @@ modules_evas_image_savers_tgv_module_la_CPPFLAGS = \ -I$(top_builddir)/src/lib/efl \ -I$(top_srcdir)/src/static_libs/rg_etc \ -I$(top_srcdir)/src/lib/evas/ \ +-I$(top_srcdir)/src/lib/evas/include \ -DEFL_BUILD \ @EVAS_CFLAGS@ --
[EGIT] [core/efl] master 01/01: elput: Remove useless call to eldbus_message_unref
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=6e48257b790b29ccf488927ca41ade6887e9ff1e commit 6e48257b790b29ccf488927ca41ade6887e9ff1e Author: Christopher Michael Date: Tue Apr 23 09:14:52 2019 -0400 elput: Remove useless call to eldbus_message_unref If we are returning here due to a failure to create the eldbus message, then there is no point in trying to free it as it is already null. @fix --- src/lib/elput/elput_logind.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/lib/elput/elput_logind.c b/src/lib/elput/elput_logind.c index 40e483ebe5..cca5ea7eb7 100644 --- a/src/lib/elput/elput_logind.c +++ b/src/lib/elput/elput_logind.c @@ -41,7 +41,6 @@ _logind_device_pause_complete(Elput_Manager *em, uint32_t major, uint32_t minor) if (!msg) { ERR("Could not create method call for proxy"); -eldbus_message_unref(msg); return; } --
[EGIT] [core/efl] master 01/01: elm_atspi_bridget: Fix resource leak
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=281e90cda5748eed38bd7629ba80bbd1f89ffc28 commit 281e90cda5748eed38bd7629ba80bbd1f89ffc28 Author: Christopher Michael Date: Tue Apr 23 09:13:19 2019 -0400 elm_atspi_bridget: Fix resource leak Coverity reports and 'req' leaks here so we need to unref the eldbus message object if we are exiting this function. Fixes CID1399424 @fix --- src/lib/elementary/elm_atspi_bridge.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/elm_atspi_bridge.c b/src/lib/elementary/elm_atspi_bridge.c index c689557d6c..9341b64981 100644 --- a/src/lib/elementary/elm_atspi_bridge.c +++ b/src/lib/elementary/elm_atspi_bridge.c @@ -4688,7 +4688,11 @@ _elm_atspi_bridge_key_filter(void *data, void *loop EINA_UNUSED, int type, void } ke = _key_event_info_new(type, key_event, bridge); - if (!ke) return EINA_TRUE; + if (!ke) + { +eldbus_message_unref(req); +return EINA_TRUE; + } iter = eldbus_message_iter_get(req); _iter_marshall_key_event(iter, ke); --
[EGIT] [core/efl] master 01/01: meson: enable strict linking
zmike pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d40b18540e16df508ad2cf07d7bdc83f7f6669fa commit d40b18540e16df508ad2cf07d7bdc83f7f6669fa Author: Marcel Hollerbach Date: Tue Apr 23 09:06:52 2019 -0400 meson: enable strict linking Summary: with this commit you can compile efl with -Wl,-z,defs. Reviewers: zmike Reviewed By: zmike Subscribers: simotek, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D8677 --- src/modules/ecore_evas/engines/extn/meson.build | 2 +- src/modules/ecore_imf/ibus/meson.build | 2 +- src/modules/ecore_imf/scim/meson.build | 2 +- src/modules/ecore_imf/xim/meson.build | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/modules/ecore_evas/engines/extn/meson.build b/src/modules/ecore_evas/engines/extn/meson.build index 1afabb3916..901a126f52 100644 --- a/src/modules/ecore_evas/engines/extn/meson.build +++ b/src/modules/ecore_evas/engines/extn/meson.build @@ -3,7 +3,7 @@ engine_deps = [ecore_input, ecore_ipc] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, ecore_evas, ecore_input_evas] + engine_deps, + dependencies : [eina, ecore_evas, ecore_input_evas, rt] + engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/ecore_imf/ibus/meson.build b/src/modules/ecore_imf/ibus/meson.build index dc37b3865e..f81543974b 100644 --- a/src/modules/ecore_imf/ibus/meson.build +++ b/src/modules/ecore_imf/ibus/meson.build @@ -4,7 +4,7 @@ mod_src = files([ 'ibus_imcontext.h' ]) -mod_deps = [ecore, ecore_imf, ecore_x, dependency('ibus-1.0'), dependency('glib-2.0'), ecore_evas] +mod_deps = [ecore, ecore_imf, ecore_x, ecore_x_deps, dependency('ibus-1.0'), dependency('glib-2.0'), ecore_evas] shared_module(mod_name, mod_src, diff --git a/src/modules/ecore_imf/scim/meson.build b/src/modules/ecore_imf/scim/meson.build index 102c631281..9356a00526 100644 --- a/src/modules/ecore_imf/scim/meson.build +++ b/src/modules/ecore_imf/scim/meson.build @@ -9,7 +9,7 @@ if not scim_dep.found() scim_dep = dependency('scim-1.0') endif -mod_deps = [ecore, ecore_imf, ecore_x, ecore_evas, scim_dep, dependency('glib-2.0')] +mod_deps = [ecore, ecore_imf, ecore_x, ecore_x_deps, ecore_evas, scim_dep, dependency('glib-2.0')] shared_module(mod_name, mod_src, diff --git a/src/modules/ecore_imf/xim/meson.build b/src/modules/ecore_imf/xim/meson.build index 5db9e187c5..4ffa1f177c 100644 --- a/src/modules/ecore_imf/xim/meson.build +++ b/src/modules/ecore_imf/xim/meson.build @@ -2,7 +2,7 @@ mod_src = files([ 'ecore_imf_xim.c', ]) -mod_deps = [ecore, ecore_imf, ecore_input, ecore_x, ecore_evas] +mod_deps = [ecore, ecore_imf, ecore_input, ecore_x, ecore_x_deps, ecore_evas] shared_module(mod_name, mod_src, --
[EGIT] [core/efl] master 01/01: evas wbmp: remove unnecessary size overflow.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=1061d0a75164111ef5dc8df21f446023438f39bc commit 1061d0a75164111ef5dc8df21f446023438f39bc Author: Hermet Park Date: Tue Apr 23 21:31:06 2019 +0900 evas wbmp: remove unnecessary size overflow. since this patch 68fe9ec6bf60b4730ad7fdbf2698dc7aa130b94d it checks size validation earlier, this varification doesn't need anymore... --- src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c index 00e67f3713..7f56da6d02 100644 --- a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c +++ b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c @@ -163,7 +163,6 @@ evas_image_load_file_data_wbmp(void *loader_data, for (y = 0; y < (int)prop->h; y++) { -if (position + line_length > length) goto bail; line = ((unsigned char*) map) + position; position += line_length; for (x = 0; x < (int)prop->w; x++) --
[EGIT] [apps/terminology] master 01/01: dbl chars - another range with only some emoji to be doubled
raster pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=208e877e8f9bd45fd86944b35f87d48d26a6f814 commit 208e877e8f9bd45fd86944b35f87d48d26a6f814 Author: Carsten Haitzler (Rasterman) Date: Tue Apr 23 12:12:02 2019 +0100 dbl chars - another range with only some emoji to be doubled --- src/bin/termptydbl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/termptydbl.c b/src/bin/termptydbl.c index daf0ef6..0988593 100644 --- a/src/bin/termptydbl.c +++ b/src/bin/termptydbl.c @@ -26,7 +26,7 @@ _termpty_is_dblwidth_slow_get(const Termpty *ty, int g) // [ 0x2460 -> 0x24FF] // [ 0x2600 -> 0x27EF] // [ 0x2900 -> 0x29FF] - // [ 0x2B00 -> 0x2BFF] + // [ 0x2B00 -> 0x2BFF] !!! unicode only 2B55 2B50 // [ 0x2C60 -> 0x2C7F] // [ 0x2E00 -> 0x2E7F] // [ 0x3000 -> 0x303F] @@ -97,7 +97,8 @@ _termpty_is_dblwidth_slow_get(const Termpty *ty, int g) ((g >= 0x2460) && (g <= 0x24FF)) || ((g >= 0x2600) && (g <= 0x27EF)) || ((g >= 0x2900) && (g <= 0x29FF)) || -((g >= 0x2B00) && (g <= 0x2BFF)) || +((g >= 0x2B50)) || +((g >= 0x2B55)) || ((g >= 0x2C60) && (g <= 0x2C7F)) || ((g >= 0x2E00) && (g <= 0x2E7F)) || ((g >= 0x3000) && (g <= 0x303F)) || --
[EGIT] [tools/examples] master 01/01: csharp: Update examples after repeated method name
xartigas pushed a commit to branch master. http://git.enlightenment.org/tools/examples.git/commit/?id=595be4aa12fe5a6ab5fa177fb308a2b880acaf65 commit 595be4aa12fe5a6ab5fa177fb308a2b880acaf65 Author: Lauro Moura Date: Tue Apr 23 12:32:06 2019 +0200 csharp: Update examples after repeated method name Summary: In essence, IPack.DoPack became IPack.Pack Depends on D8650 Reviewers: felipealmeida, vitor.sousa, segfaultxavi Reviewed By: segfaultxavi Differential Revision: https://phab.enlightenment.org/D8651 --- apps/csharp/texteditor/src/texteditor_main.cs | 8 reference/csharp/ui/src/focus_main.cs | 8 reference/csharp/ui/src/ui_container.cs | 4 ++-- reference/csharp/ui/src/ui_sizing.cs | 6 +++--- tutorial/csharp/hello-gui/src/gui_main.cs | 4 ++-- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/apps/csharp/texteditor/src/texteditor_main.cs b/apps/csharp/texteditor/src/texteditor_main.cs index e65ec3a8..c77fa3cf 100644 --- a/apps/csharp/texteditor/src/texteditor_main.cs +++ b/apps/csharp/texteditor/src/texteditor_main.cs @@ -84,7 +84,7 @@ public class TextEditor : Efl.Csharp.Application image.SetIcon(iconName); button.SetContent(image); -toolbar.DoPack(button); +toolbar.Pack(button); return button; } @@ -98,7 +98,7 @@ public class TextEditor : Efl.Csharp.Application // space will be given to the other object in the parent container. bar.SetHintWeight(1, 0); bar.SetDirection(Efl.Ui.Dir.Horizontal); -parent.DoPack(bar); +parent.Pack(bar); // "New" button toolbarButtonNew = GUIToolbarButtonAdd(bar, "New", "document-new", @@ -144,7 +144,7 @@ public class TextEditor : Efl.Csharp.Application // As a result, it pushes the "Quit" button to the right margin and // the rest to the left. Efl.Ui.Box box = new Efl.Ui.Box(parent); -bar.DoPack(box); +bar.Pack(box); // "Quit" button GUIToolbarButtonAdd(bar, "Quit", "application-exit", (object sender, EventArgs e) => { Efl.Ui.Config.Exit(); } ); @@ -175,7 +175,7 @@ public class TextEditor : Efl.Csharp.Application editorTextBox.SetHintSizeMin(new Eina.Size2D(360, 240)); editorTextBox.ChangedEvt += EditorChangedCb; editorTextBox.ChangedUserEvt += EditorChangedCb; -box.DoPack(editorTextBox); +box.Pack(editorTextBox); // Initial refresh of the toolbar buttons GUIToolbarRefresh(); diff --git a/reference/csharp/ui/src/focus_main.cs b/reference/csharp/ui/src/focus_main.cs index 494c86a3..cc806f74 100644 --- a/reference/csharp/ui/src/focus_main.cs +++ b/reference/csharp/ui/src/focus_main.cs @@ -32,14 +32,14 @@ public class Example : Efl.Csharp.Application checkbox.SetText("Check " + i); checkbox.SetHintAlign(0.5, 0.5); checkbox.FocusChangedEvt += FocusChangedCb; - vbox.DoPack(checkbox); + vbox.Pack(checkbox); if (i == 0) first_checkbox = checkbox; }; // Create an horizontal box to contain the two buttons var hbox = new Efl.Ui.Box(vbox); hbox.SetDirection(Efl.Ui.Dir.Horizontal); -vbox.DoPack(hbox); +vbox.Pack(hbox); // Create a "Focus Mover" button var button = new Efl.Ui.Button(hbox); @@ -50,7 +50,7 @@ public class Example : Efl.Csharp.Application // Manually transfer focus to the first check box Efl.Ui.Focus.Util.Focus(first_checkbox); }; -hbox.DoPack(button); +hbox.Pack(button); // Create a Quit button button = new Efl.Ui.Button(hbox); @@ -60,7 +60,7 @@ public class Example : Efl.Csharp.Application Console.WriteLine("Clicked Quit"); Efl.Ui.Config.Exit(); }; -hbox.DoPack(button); +hbox.Pack(button); // Show the focus highlight win.SetFocusHighlightEnabled(true); diff --git a/reference/csharp/ui/src/ui_container.cs b/reference/csharp/ui/src/ui_container.cs index 0cb9c230..3d3c7e12 100644 --- a/reference/csharp/ui/src/ui_container.cs +++ b/reference/csharp/ui/src/ui_container.cs @@ -26,7 +26,7 @@ public class Example : Efl.Csharp.Application // Button 2 has its maximum size limited, so it will be smaller button.SetHintSizeMax(new Eina.Size2D(100,50)); } -box.DoPack(button); +box.Pack(button); } return box; @@ -46,7 +46,7 @@ public class Example : Efl.Csharp.Application // Add 4 buttons, following the defined table flow button = new Efl.Ui.Button(win); button.SetText($"Table {i}"); -table.DoPack(button); +table.Pack(button); } // Last button spans two table cells diff --git
[EGIT] [core/efl] master 01/01: csharp: Fixes repeated method names.
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=cb0c20eaf3ba89ab850af5b813e6ddfb6cc4a15a commit cb0c20eaf3ba89ab850af5b813e6ddfb6cc4a15a Author: Lauro Moura Date: Tue Apr 23 12:19:09 2019 +0200 csharp: Fixes repeated method names. Summary: After D8397, interfaces have the I prefix again, so the "Do" prefix on methods with repeated names may not be needed for them in most cases. This commit also consolidates the method_managed_name calls with the overload receiving attributes::function_def instead of plain name. Fixes T7791 Depends on D8645 Reviewers: vitor.sousa, felipealmeida, segfaultxavi Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7791 Differential Revision: https://phab.enlightenment.org/D8650 --- src/bin/eolian_mono/eolian/mono/documentation.hh | 9 - src/bin/eolian_mono/eolian/mono/name_helpers.hh | 13 - 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/src/bin/eolian_mono/eolian/mono/documentation.hh b/src/bin/eolian_mono/eolian/mono/documentation.hh index 2cad038e25..ac072a4220 100644 --- a/src/bin/eolian_mono/eolian/mono/documentation.hh +++ b/src/bin/eolian_mono/eolian/mono/documentation.hh @@ -74,8 +74,7 @@ struct documentation_generator if (blacklist::is_function_blacklisted( ::eolian_function_full_c_name_get(function, ftype))) return ""; name += "."; - name += name_helpers::managed_method_name( - ::eolian_object_short_name_get(klass), eo_name); + name += name_helpers::managed_method_name({function, ftype, NULL, eolian_object_unit_get(EOLIAN_OBJECT(function))}); break; case ::EOLIAN_PROP_SET: name += ".Set"; @@ -118,7 +117,7 @@ struct documentation_generator case attributes::function_type::prop_get: if (blacklist::is_function_blacklisted(func.c_name))return ""; if (!name.empty()) name += "."; -name += name_helpers::managed_method_name(func.klass.eolian_name, func.name); +name += name_helpers::managed_method_name(func); break; default: // No need to deal with property as function_defs are converted to get/set when building a given klass_def. @@ -432,7 +431,7 @@ struct documentation_generator return generate_all_tag_examples(sink, name_helpers::klass_full_concrete_or_interface_name(func.klass), - name_helpers::managed_method_name(func.klass.eolian_name, func.name), + name_helpers::managed_method_name(func), context); } @@ -451,7 +450,7 @@ struct documentation_generator return generate_all_tag_examples(sink, name_helpers::klass_full_concrete_or_interface_name(func.klass), - name_helpers::managed_method_name(func.klass.eolian_name, func.name), + name_helpers::managed_method_name(func), context); } diff --git a/src/bin/eolian_mono/eolian/mono/name_helpers.hh b/src/bin/eolian_mono/eolian/mono/name_helpers.hh index 4d9fff92de..1ae35cab6d 100644 --- a/src/bin/eolian_mono/eolian/mono/name_helpers.hh +++ b/src/bin/eolian_mono/eolian/mono/name_helpers.hh @@ -176,22 +176,22 @@ inline std::string managed_namespace(std::string const& ns) return escape_keyword(utils::remove_all(ns, '_')); } -inline std::string managed_method_name(std::string const& klass, std::string const& name) +inline std::string managed_method_name(attributes::function_def const& f) { - std::vector names = utils::split(name, '_'); + std::vector names = utils::split(f.name, '_'); name_helpers::reorder_verb(names); std::string candidate = escape_keyword(utils::to_pascal_case(names)); // Some eolian methods have the same name as their parent class - if (candidate == klass) + if (candidate == klass_concrete_or_interface_name(f.klass)) candidate = "Do" + candidate; // Avoid clashing with System.Object.GetType if (candidate == "GetType" || candidate == "SetType") { - candidate.insert(3, klass); + candidate.insert(3, f.klass.eolian_name); } return candidate; @@ -203,11 +203,6 @@ inline std::string managed_name(std::string const& name, char separator='_') return utils::to_pascal_case(tokens); } -inline std::string managed_method_name(attributes::function_def const& f) -{ - return managed_method_name(f.klass.eolian_name, f.name); -} - inline std::string alias_full_eolian_name(attributes::alias_def const& alias) { --
[EGIT] [apps/terminology] master 01/01: dbl char - add final unicode full emoji list link
raster pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=ce61d0c64898a8d2f977bbc9405d761f9dbd97ae commit ce61d0c64898a8d2f977bbc9405d761f9dbd97ae Author: Carsten Haitzler (Rasterman) Date: Tue Apr 23 11:21:08 2019 +0100 dbl char - add final unicode full emoji list link --- src/bin/termptydbl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bin/termptydbl.c b/src/bin/termptydbl.c index e0ed7e4..daf0ef6 100644 --- a/src/bin/termptydbl.c +++ b/src/bin/termptydbl.c @@ -12,7 +12,8 @@ _termpty_is_dblwidth_slow_get(const Termpty *ty, int g) // ftp://ftp.unicode.org/Public/UNIDATA/EastAsianWidth.txt // emoji should be double: - // https://apps.timwhitlock.info/emoji/tables/unicode + // http://www.unicode.org/emoji/charts/full-emoji-list.html + // // [ 0x0080 -> 0x02AF] !!! handle carefully ** // [ 0x0300 -> 0x03FF] // [ 0x0600 -> 0x06FF] --
[EGIT] [core/efl] master 01/01: evas image: check format more strong way for wbmp.
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=68fe9ec6bf60b4730ad7fdbf2698dc7aa130b94d commit 68fe9ec6bf60b4730ad7fdbf2698dc7aa130b94d Author: Hermet Park Date: Tue Apr 23 19:04:21 2019 +0900 evas image: check format more strong way for wbmp. wbmp format doesn't have any tags for verifying file header, It's easy to pass other format headers if they have the first 1 byte 0x0, This ocassionally brings wrong result (= succeeed loading image), if unknown file format is tried. So, to make it sure, here verify the size of image additionally. if the image size is not expected, It returns fail as the result. This problem is actually happened in this scenario. open any mpeg file with elm_image. elm_image_file_set() will return true though it fails to read data. since wbmp make it pass to succeed. @fix --- .../evas/image_loaders/wbmp/evas_image_load_wbmp.c | 20 +++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c index 633afe9567..00e67f3713 100644 --- a/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c +++ b/src/modules/evas/image_loaders/wbmp/evas_image_load_wbmp.c @@ -73,6 +73,15 @@ evas_image_load_file_head_wbmp(void *loader_data, position++; /* skipping one byte */ if (read_mb(, map, length, ) < 0) goto bail; if (read_mb(, map, length, ) < 0) goto bail; + + /* Wbmp header identifier is too weak + Here checks size validation whether it's acutal wbmp or not. */ + if (((w * h) >> 3) + position != length) + { +*error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; +goto bail; + } + if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || IMG_TOO_BIG(w, h)) { @@ -116,11 +125,20 @@ evas_image_load_file_data_wbmp(void *loader_data, if (!map) goto bail; if (read_mb(, map, length, ) < 0) goto bail; + + if (type != 0) + { +*error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; +goto bail; + } + position++; /* skipping one byte */ if (read_mb(, map, length, ) < 0) goto bail; if (read_mb(, map, length, ) < 0) goto bail; - if (type != 0) + /* Wbmp header identifier is too weak + Here checks size validation whether it's acutal wbmp or not. */ + if (((w * h) >> 3) + position != length) { *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; goto bail; --
[EGIT] [core/efl] master 01/01: mono-docs: Update DocFX blacklist
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=7f0e9f9df7474465aed654d3de3c7bf3701a92ee commit 7f0e9f9df7474465aed654d3de3c7bf3701a92ee Author: Xavi Artigas Date: Tue Apr 23 12:17:11 2019 +0200 mono-docs: Update DocFX blacklist NativeInherit sibling classes have been replaced by NativeMethods internal classes. --- doc/docfx/filterConfig.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/docfx/filterConfig.yml b/doc/docfx/filterConfig.yml index d6ddf9d5b4..87d52fac80 100644 --- a/doc/docfx/filterConfig.yml +++ b/doc/docfx/filterConfig.yml @@ -1,6 +1,6 @@ apiRules: - exclude: -uidRegex: ^.*NativeInherit$ +uidRegex: ^.*NativeMethods$ - exclude: uidRegex: ^.*NativeStruct$ - include: --
[EGIT] [core/efl] master 01/01: csharp: refactor native_inherit into a nested class.
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=766e837a861e401d574d225ac8473367218788b3 commit 766e837a861e401d574d225ac8473367218788b3 Author: Lauro Moura Date: Tue Apr 23 11:48:03 2019 +0200 csharp: refactor native_inherit into a nested class. Summary: Efl.Ui.Button_NativeInherit -> Efl.Ui.Button.NativeMethods Will help using EFL# with completion tools. * Added pragmas around the native function definitions to avoid warnings related to the name of native functions * Updated some style fixes for native function wrappers. Their preamble and epilogue styling will be dealt with in future diffs. As a side effect, concrete classes had to be made public again as they hold the function pointers to the native methods of their interfaces. Thus a third party library class that implements IFoo should be able to access these methods. Fixes T7743 Depends on D8622 Reviewers: vitor.sousa, felipealmeida, segfaultxavi Reviewed By: vitor.sousa, segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T7743 Differential Revision: https://phab.enlightenment.org/D8645 --- .../eolian_mono/eolian/mono/function_definition.hh | 77 +--- .../eolian/mono/function_registration.hh | 27 +++--- src/bin/eolian_mono/eolian/mono/klass.hh | 102 + src/bin/eolian_mono/eolian/mono/name_helpers.hh| 20 +--- 4 files changed, 124 insertions(+), 102 deletions(-) diff --git a/src/bin/eolian_mono/eolian/mono/function_definition.hh b/src/bin/eolian_mono/eolian/mono/function_definition.hh index 23025480c0..0dbd097f1d 100644 --- a/src/bin/eolian_mono/eolian/mono/function_definition.hh +++ b/src/bin/eolian_mono/eolian/mono/function_definition.hh @@ -34,12 +34,14 @@ struct native_function_definition_generator EINA_CXX_DOM_LOG_DBG(eolian_mono::domain) << "native_function_definition_generator: " << f.c_name << std::endl; if(blacklist::is_function_blacklisted(f, context)) return true; -else - { + +auto const& indent = current_indentation(context); + +// Delegate for the C# method we will export to EO as a method implementation. if(!as_generator - ("\n\n" << scope_tab -<< eolian_mono::marshall_annotation(true) -<< " private delegate " + ( +indent << eolian_mono::marshall_annotation(true) << "\n" +<< indent << "private delegate " << eolian_mono::marshall_type(true) << " " << string @@ -49,14 +51,15 @@ struct native_function_definition_generator ( (marshall_annotation << " " << marshall_parameter) ) % ", ") -<< ");\n") +<< ");\n\n") .generate(sink, std::make_tuple(f.return_type, f.return_type, f.c_name, f.parameters), context)) return false; +// API delegate is the wrapper for the Eo methods exported from C that we will use from C#. if(!as_generator - ("\n\n" << scope_tab -<< eolian_mono::marshall_annotation(true) -<< " public delegate " + ( +indent << eolian_mono::marshall_annotation(true) << "\n" +<< indent << "public delegate " << eolian_mono::marshall_type(true) << " " << string << "_api_delegate(" << (f.is_static ? "" : "System.IntPtr obj") @@ -65,17 +68,18 @@ struct native_function_definition_generator ( (marshall_annotation << " " << marshall_parameter) ) % ", ") -<< ");\n") +<< ");\n\n") .generate(sink, std::make_tuple(f.return_type, f.return_type, f.c_name, f.parameters), context)) return false; +// Delegate holder (so it can't be collected). if(!as_generator - (scope_tab -<< " public static Efl.Eo.FunctionWrapper<" << string << "_api_delegate> " << string << "_ptr = new Efl.Eo.FunctionWrapper<" -<< string << "_api_delegate>(_Module, \"" << string << "\");\n") + (indent << "public static Efl.Eo.FunctionWrapper<" << string << "_api_delegate> " << string << "_ptr = new Efl.Eo.FunctionWrapper<" + << string << "_api_delegate>(Module, \"" << string << "\");\n\n") .generate(sink, std::make_tuple(f.c_name, f.c_name, f.c_name, f.c_name), context)) return false; +// Actual method implementation to be called from C. std::string return_type; if(!as_generator(eolian_mono::type(true)).generate(std::back_inserter(return_type), f.return_type, context)) return false; @@ -92,34 +96,37 @@ struct native_function_definition_generator self = ""; if(!as_generator - (scope_tab -<< " private static " + (indent << "private static " << eolian_mono::marshall_type(true) << " " << string << "(System.IntPtr obj, System.IntPtr pd"
[EGIT] [core/efl] master 01/01: mono-docs: Use full name in page title
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=6547d45b817fbb20333878d189c4def26cdfa819 commit 6547d45b817fbb20333878d189c4def26cdfa819 Author: Xavi Artigas Date: Tue Apr 23 11:07:29 2019 +0200 mono-docs: Use full name in page title Reference page titles are now "Class Efl.Ui.Win" instead of "Class Win". And also remove Namespace and Assembly sections. Namespace is redundant since we use fully-qualified names everywhere. Assembly is useless since we build the docs from the source so this entry is always "temp.dll". --- .../default_efl/partials/class.header.tmpl.partial | 2 - doc/docfx/default_efl/partials/title.tmpl.partial | 43 ++ 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/doc/docfx/default_efl/partials/class.header.tmpl.partial b/doc/docfx/default_efl/partials/class.header.tmpl.partial index 3bdf956fc1..561d929da1 100644 --- a/doc/docfx/default_efl/partials/class.header.tmpl.partial +++ b/doc/docfx/default_efl/partials/class.header.tmpl.partial @@ -19,8 +19,6 @@ {{/inClass}} {{#inheritedMembers.0}} -{{__global.namespace}}: {{{namespace.specName.0.value}}} -{{__global.assembly}}: {{assemblies.0}}.dll {{__global.syntax}} {{syntax.content.0.value}} diff --git a/doc/docfx/default_efl/partials/title.tmpl.partial b/doc/docfx/default_efl/partials/title.tmpl.partial new file mode 100644 index 00..186d9171d3 --- /dev/null +++ b/doc/docfx/default_efl/partials/title.tmpl.partial @@ -0,0 +1,43 @@ +{{!Copyright (c) Microsoft. All rights reserved. Licensed under the MIT license. See LICENSE file in the project root for full license information.}} +{{#isNamespace}} +Namespace {{fullName.0.value}} +{{/isNamespace}} +{{#inClass}} +Class {{fullName.0.value}} +{{/inClass}} +{{#inStruct}} +Struct {{fullName.0.value}} +{{/inStruct}} +{{#inInterface}} +Interface {{fullName.0.value}} +{{/inInterface}} +{{#inEnum}} +Enum {{fullName.0.value}} +{{/inEnum}} +{{#inDelegate}} +Delegate {{fullName.0.value}} +{{/inDelegate}} +{{#inConstructor}} +Constructor {{fullName.0.value}} +{{/inConstructor}} +{{#inField}} +Field {{fullName.0.value}} +{{/inField}} +{{#inProperty}} +Property {{fullName.0.value}} +{{/inProperty}} +{{#inMethod}} +Method {{fullName.0.value}} +{{/inMethod}} +{{#inEvent}} +Event {{fullName.0.value}} +{{/inEvent}} +{{#inOperator}} +Operator {{fullName.0.value}} +{{/inOperator}} +{{#inEii}} +Explict Interface Implementation {{fullName.0.value}} +{{/inEii}} +{{#inPackage}} +Package {{fullName.0.value}} +{{/inPackage}} --
[EGIT] [core/efl] master 01/01: mono-docs: Use full name in list of derived classes
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8e3fa3a97f827118ce051b3899e2091164b89bef commit 8e3fa3a97f827118ce051b3899e2091164b89bef Author: Xavi Artigas Date: Tue Apr 23 10:51:56 2019 +0200 mono-docs: Use full name in list of derived classes In the EFL API we have several objects with the same name in different namespaces. Thus it is important to use fully-qualified names throughout the docs, to avoid confusion. However, the default DocFX templates prefer using only simple class names. The default templates have already been modified to use full names everywhere except in the list of derived classes in the hierarchy section, where a DocFX bug was hit. This commit is a workaround to that bug (see https://github.com/dotnet/docfx/issues/3769#issuecomment-485616064 ) so full names (with links) are used in the whole hierarchy. --- doc/docfx/default_efl/partials/class.header.tmpl.partial | 2 +- doc/docfx/gendoc.sh | 14 ++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/doc/docfx/default_efl/partials/class.header.tmpl.partial b/doc/docfx/default_efl/partials/class.header.tmpl.partial index 1a445ab3ca..3bdf956fc1 100644 --- a/doc/docfx/default_efl/partials/class.header.tmpl.partial +++ b/doc/docfx/default_efl/partials/class.header.tmpl.partial @@ -12,7 +12,7 @@ {{/inheritance}} {{fullName.0.value}} {{#derivedClasses}} -{{{specName.0.value}}} + {{/derivedClasses}} diff --git a/doc/docfx/gendoc.sh b/doc/docfx/gendoc.sh index 99da2d9f18..48d781cd81 100755 --- a/doc/docfx/gendoc.sh +++ b/doc/docfx/gendoc.sh @@ -22,5 +22,19 @@ for f in `ls api/*.yml`; do sed -e 's/\(https://github.com/dotnet/docfx/issues/3769#issuecomment-485616064 +for f in `grep -l derivedClasses api/*.yml`; do + sed "1,/^ derivedClasses:$/d" $f > /tmp/efl_docfx_gendoc + sed -i "/^ [^-]/,$ d" /tmp/efl_docfx_gendoc + sed -i "/^[^ ]/,$ d" /tmp/efl_docfx_gendoc + while read dash class + do +sed -i "s/^references:$/references:\n- uid: $class\n fullName: $class/g" $f + done <<< "$(cat /tmp/efl_docfx_gendoc)" +done; +rm -rf /tmp/efl_docfx_gendoc + # DocFX Step 2: Generate HTML files mono bin/docfx.exe build docfx.json && echo "Docs ready in the _site folder!" --
[EGIT] [bindings/python/python-efl] master 01/01: Prepare 1.22 release
davemds pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=8ff30f9eddd4bd5b89fae96ad090f964480e4179 commit 8ff30f9eddd4bd5b89fae96ad090f964480e4179 Author: Dave Andreoli Date: Tue Apr 23 09:18:32 2019 +0200 Prepare 1.22 release --- ChangeLog | 8 efl/__init__.py | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index f6a0892..caae1a2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,12 @@ +=== +2019-04-23 v1.22.0 +=== + +Changes: + * Switched to Cython 0.29.7 for the tarball generation + + === 2018-08-24 v1.21.0 === diff --git a/efl/__init__.py b/efl/__init__.py index 6d93b1d..834da92 100644 --- a/efl/__init__.py +++ b/efl/__init__.py @@ -20,5 +20,5 @@ # pre-release: "1.13.0-beta1" ( 1, 13, 0 ) # release: "1.13.0" ( 1, 13, 0 ) -__version__ = "1.21.99" -__version_info__ = ( 1, 21, 99 ) +__version__ = "1.22.0" +__version_info__ = ( 1, 22, 0 ) --
[EGIT] [bindings/python/python-efl] master 01/01: Follow Eo class name changes
davemds pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=d544412cd1f3f8c6ab0f8e35df0ae379778a15b7 commit d544412cd1f3f8c6ab0f8e35df0ae379778a15b7 Author: Dave Andreoli Date: Tue Apr 23 09:13:45 2019 +0200 Follow Eo class name changes --- efl/elementary/background.pxi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/efl/elementary/background.pxi b/efl/elementary/background.pxi index 389ee5d..a3b6184 100644 --- a/efl/elementary/background.pxi +++ b/efl/elementary/background.pxi @@ -184,4 +184,4 @@ cdef class Background(LayoutClass): def load_size_set(self, w, h): elm_bg_load_size_set(self.obj, w, h) -_object_mapping_register("Efl.Ui.Bg_Widget_Legacy", Background) +_object_mapping_register("Efl.Ui.Bg_Legacy", Background) --
[EGIT] [core/efl] master 01/01: elc_hoversel: fix selected event compatibility issue
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f8377ed549f758436289de2ea212572e94ca251e commit f8377ed549f758436289de2ea212572e94ca251e Author: Taehyub Kim Date: Tue Apr 23 06:48:58 2019 + elc_hoversel: fix selected event compatibility issue Fix selected event compatibility issue. When item of hoversel is selected, item selected callback does not call in hoversel sample of elementary_test. Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D8683 --- src/lib/elementary/elc_hoversel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/elementary/elc_hoversel.c b/src/lib/elementary/elc_hoversel.c index a7b5685f21..56b7113b62 100644 --- a/src/lib/elementary/elc_hoversel.c +++ b/src/lib/elementary/elc_hoversel.c @@ -176,7 +176,7 @@ _on_item_clicked(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) ELM_HOVERSEL_DATA_GET(obj2, sd); if (item->func) item->func((void *)WIDGET_ITEM_DATA_GET(eo_it), obj2, eo_it); - efl_event_callback_legacy_call(obj2, EFL_UI_EVENT_ITEM_SELECTED, eo_it); + evas_object_smart_callback_call(obj2, "selected", eo_it); evas_object_event_callback_add(sd->hover, EVAS_CALLBACK_DEL, _auto_update, item); --
[EGIT] [bindings/python/python-efl] master 01/02: Fix for 1.22 Eo api changes
davemds pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=4fa39916814ebe1ea7aee844d3cbd9f00f60 commit 4fa39916814ebe1ea7aee844d3cbd9f00f60 Author: Dave Andreoli Date: Tue Apr 23 08:54:13 2019 +0200 Fix for 1.22 Eo api changes --- efl/eo/efl.eo.pyx| 6 +++--- include/efl.c_eo.pxd | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/efl/eo/efl.eo.pyx b/efl/eo/efl.eo.pyx index 6985308..4875b8b 100644 --- a/efl/eo/efl.eo.pyx +++ b/efl/eo/efl.eo.pyx @@ -71,13 +71,13 @@ init() atexit.register(shutdown) def event_global_freeze_count_get(): -return efl_event_global_freeze_count_get(efl_object_class_get()) +return efl_event_global_freeze_count_get() def event_global_freeze(): -efl_event_global_freeze(efl_object_class_get()) +efl_event_global_freeze() def event_global_thaw(): -efl_event_global_thaw(efl_object_class_get()) +efl_event_global_thaw() ## diff --git a/include/efl.c_eo.pxd b/include/efl.c_eo.pxd index 37e536a..d8dd6e1 100644 --- a/include/efl.c_eo.pxd +++ b/include/efl.c_eo.pxd @@ -124,9 +124,9 @@ cdef extern from "Eo.h": void efl_event_thaw(Eo *obj) int efl_event_freeze_count_get(const Eo *obj) -void efl_event_global_freeze(Eo *obj) -void efl_event_global_thaw(Eo *obj) -int efl_event_global_freeze_count_get(const Eo *obj) +void efl_event_global_freeze() +void efl_event_global_thaw() +int efl_event_global_freeze_count_get() Eina_Bool efl_event_callback_add(Eo *obj, const Efl_Event_Description *desc, Efl_Event_Cb cb, const void *data) Eina_Bool efl_event_callback_del(Eo *obj, const Efl_Event_Description *desc, Efl_Event_Cb cb, const void *data) --
[EGIT] [bindings/python/python-efl] master 02/02: Silence Cython warnings
davemds pushed a commit to branch master. http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=3b0552259dff8355a92fcb57f7ac3b56bc741dd7 commit 3b0552259dff8355a92fcb57f7ac3b56bc741dd7 Author: Dave Andreoli Date: Tue Apr 23 08:55:29 2019 +0200 Silence Cython warnings I'm keeping python 2 style for compatibility reasons --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index 82dfe26..3ed0028 100755 --- a/setup.py +++ b/setup.py @@ -462,6 +462,7 @@ if set(("build", "build_ext", "install", "bdist", "sdist")) & set(sys.argv): #"c_string_encoding": "utf-8", "embedsignature": True, "binding": True, +"language_level": 2, }) --