[EGIT] [admin/devs] master 01/01: Update keys
jackdanielz pushed a commit to branch master. http://git.enlightenment.org/admin/devs.git/commit/?id=4a7979a82cc8a6c1bd895b141857edb1bc6e9431 commit 4a7979a82cc8a6c1bd895b141857edb1bc6e9431 Author: Daniel Zaoui Date: Wed Jan 29 21:10:03 2020 +0200 Update keys --- developers/jackdanielz/id_ed25519_z2.pub | 1 + developers/jackdanielz/id_ed25519_zen.pub | 1 + developers/jackdanielz/id_rsa_old.pub | 1 - developers/jackdanielz/id_rsa_zen.pub | 1 - 4 files changed, 2 insertions(+), 2 deletions(-) diff --git a/developers/jackdanielz/id_ed25519_z2.pub b/developers/jackdanielz/id_ed25519_z2.pub new file mode 100644 index 000..4ce8722 --- /dev/null +++ b/developers/jackdanielz/id_ed25519_z2.pub @@ -0,0 +1 @@ +ssh-ed25519 C3NzaC1lZDI1NTE5IKRCFcAsLS/SvHAgA9Gjt/2qxXz7VgGomrChjoJCsHWN daniel@Z2 diff --git a/developers/jackdanielz/id_ed25519_zen.pub b/developers/jackdanielz/id_ed25519_zen.pub new file mode 100644 index 000..09118f0 --- /dev/null +++ b/developers/jackdanielz/id_ed25519_zen.pub @@ -0,0 +1 @@ +ssh-ed25519 C3NzaC1lZDI1NTE5ICuutMFpXE9b7bUEZiBB3vjgGptOykQOedLMZtPg9BmM daniel@zen diff --git a/developers/jackdanielz/id_rsa_old.pub b/developers/jackdanielz/id_rsa_old.pub deleted file mode 100644 index ead8b4e..000 --- a/developers/jackdanielz/id_rsa_old.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa B3NzaC1yc2EDAQABAAABAQDMF9Y8waRa9O9ZiNiEpz2pBRbkQJ2gGmcw3ut5EyUzIC3J8wsQLdjgJv/uMqhWIUQIYl8wk3C5rpoffQDACzd6IwcUj3PL1e5C9d8r8OOQVMst5/6Rscm8N6RopNgQPlhI6K4q5u7+UsYimLzPMYFUZ5SWuRY6a8lPNmcpmXDyCowBrhAYsg5rvOPsYXGUhNSTWgTGhBqUZr+wr1/Ls5y+qZD2kBNrOAoMh7jZBqWXxbQlVBRXy26t43EFGvljBEeZl2QRMDtVbyBUpspbUfdOoofTNAfPHRtLHP25COevLhxaLK4BrRVVHB6RlN4tCKmUwZvGtcQIBCzPXoNOfanf daniel@daniel-laptop diff --git a/developers/jackdanielz/id_rsa_zen.pub b/developers/jackdanielz/id_rsa_zen.pub deleted file mode 100644 index 317d4db..000 --- a/developers/jackdanielz/id_rsa_zen.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa B3NzaC1yc2EDAQABAAABAQC40a5CcO6NBFcNjLx7UG92hMt88wFf66igZIyizgBLyLfSUqZ8Jy9frljNupY1lxM78wFoKE8kVZhV3v859NWxBRUennDoWsGcmdX2EdPPEv5pNKUvJN2l4HKuhKRywFzMrZUGJQZo3arCQiZGkzjNG3kKqptSOb0KVa/mtP7zfsxFAuf1xrE6/pgvCG1rTLaLWa5FpdMWsWt1I5fZp7EcIkD+QSLkF/YEZQPaaFDzpOK+rp2x0JsciPwmPLDG6VW2+0ilUpG3sLhrPoRZ45ToJh4JHpvaE2ExHeE41OEfmfwVWV4v3LcnOZQSTxjEcoiqZv/fAkqgDQFh3TCPdpS7 daniel@archlinux --
[EGIT] [core/efl] master 01/01: efll.ui.internal_text_interactive: remove useless condition
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=fc0c60ca8ca588624060d3298be53fa5bdf917b7 commit fc0c60ca8ca588624060d3298be53fa5bdf917b7 Author: Ali Alzyod Date: Wed Jan 29 19:30:39 2020 +0100 efll.ui.internal_text_interactive: remove useless condition Summary: Remove useless condition and unreachable return value Reviewers: woohyun, segfaultxavi, bu5hm4n Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11231 --- .../elementary/efl_ui_internal_text_interactive.c | 22 +- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/src/lib/elementary/efl_ui_internal_text_interactive.c b/src/lib/elementary/efl_ui_internal_text_interactive.c index 146deb7de5..fc43e6fbe9 100644 --- a/src/lib/elementary/efl_ui_internal_text_interactive.c +++ b/src/lib/elementary/efl_ui_internal_text_interactive.c @@ -349,6 +349,9 @@ _text_filter_text_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Intera const char *fmtpre, const char *fmtpost, Eina_Bool clearsel, Eina_Bool changeinfo) { + char *markup_text; + Efl_Text_Change_Info *info = NULL; + EINA_SAFETY_ON_NULL_RETURN_VAL(text, NULL); if ((clearsel) && (en->have_selection)) @@ -356,19 +359,12 @@ _text_filter_text_prepend(Efl_Canvas_Textblock *obj, Efl_Ui_Internal_Text_Intera _sel_range_del_emit(obj, en); } - if (text) - { -char *markup_text; -Efl_Text_Change_Info *info = NULL; - -markup_text = evas_textblock_text_utf8_to_markup(NULL, text); -if (markup_text) - info = _text_filter_markup_prepend_internal(obj, en, c, markup_text, - fmtpre, fmtpost, - clearsel, changeinfo); -return info; - } - return NULL; + markup_text = evas_textblock_text_utf8_to_markup(NULL, text); + if (markup_text) + info = _text_filter_markup_prepend_internal(obj, en, c, markup_text, + fmtpre, fmtpost, + clearsel, changeinfo); + return info; } static void --
[EGIT] [core/efl] master 01/01: config: replace evil tabs with spaces
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=fab12448a40da71dc9fe01f5c32a472da45b9632 commit fab12448a40da71dc9fe01f5c32a472da45b9632 Author: Ali Alzyod Date: Wed Jan 29 16:34:27 2020 +0100 config: replace evil tabs with spaces Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11232 --- data/elementary/config/default/base.src.in | 4 ++-- data/elementary/config/mobile/base.src.in | 4 ++-- data/elementary/config/standard/base.src.in | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/data/elementary/config/default/base.src.in b/data/elementary/config/default/base.src.in index c39aeeed70..2b8828967b 100644 --- a/data/elementary/config/default/base.src.in +++ b/data/elementary/config/default/base.src.in @@ -3275,7 +3275,7 @@ group "Elm_Config" struct { value "action" string: "move"; value "params" string: "next"; } - } -} + } +} } } diff --git a/data/elementary/config/mobile/base.src.in b/data/elementary/config/mobile/base.src.in index 520ba90d73..9077d3bf8d 100644 --- a/data/elementary/config/mobile/base.src.in +++ b/data/elementary/config/mobile/base.src.in @@ -3261,7 +3261,7 @@ group "Elm_Config" struct { value "action" string: "move"; value "params" string: "next"; } - } -} + } +} } } diff --git a/data/elementary/config/standard/base.src.in b/data/elementary/config/standard/base.src.in index 0aa4e8f017..a64711b376 100644 --- a/data/elementary/config/standard/base.src.in +++ b/data/elementary/config/standard/base.src.in @@ -3258,7 +3258,7 @@ group "Elm_Config" struct { value "action" string: "move"; value "params" string: "next"; } - } -} + } +} } } --
[EGIT] [core/efl] master 01/01: eolian: enforce that list<> can only be used with @beta API.
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5e93a878b701f95e43f4b2c4945e782eb4a1d9a6 commit 5e93a878b701f95e43f4b2c4945e782eb4a1d9a6 Author: Cedric BAIL Date: Thu Jan 2 15:41:36 2020 -0800 eolian: enforce that list<> can only be used with @beta API. Reviewed-by: Daniel Kolesa Differential Revision: https://phab.enlightenment.org/D11050 --- src/lib/eolian/Eolian.h| 5 + src/lib/eolian/database_validate.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h index db0421634a..7f19ff93e7 100644 --- a/src/lib/eolian/Eolian.h +++ b/src/lib/eolian/Eolian.h @@ -336,7 +336,12 @@ typedef enum EOLIAN_TYPE_BUILTIN_ARRAY, EOLIAN_TYPE_BUILTIN_FUTURE, EOLIAN_TYPE_BUILTIN_ITERATOR, +#ifdef EFL_BETA_API_SUPPORT EOLIAN_TYPE_BUILTIN_LIST, +#else + // Placeholder when using release API only. Done to prevent offseting the value below. + EOLIAN_TYPE_BUILTIN_BETA_PLACEHOLDER1, +#endif EOLIAN_TYPE_BUILTIN_ANY_VALUE, EOLIAN_TYPE_BUILTIN_ANY_VALUE_REF, diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index b1af2185ef..1e7b072c9d 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -400,9 +400,9 @@ _validate_type(Validate_State *vals, Eolian_Type *tp, Eina_Bool by_ref, int kwid = eo_lexer_keyword_str_to_id(tp->base.name); if (kwid > KW_void) tp->ownable = EINA_TRUE; -if (kwid == KW_hash && vals->stable) +if ((kwid == KW_hash || kwid == KW_list) && vals->stable) { - _eo_parser_log(>base, "hashes not allowed in stable context"); + _eo_parser_log(>base, "hashes and lists not allowed in stable context"); return EINA_FALSE; } Eolian_Type *itp = tp->base_type; --
[EGIT] [core/efl] master 01/01: C#: Fix using beta for lists and hashes in tests
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=fdcc0053c609a021171db76a92a7ae36625154f6 commit fdcc0053c609a021171db76a92a7ae36625154f6 Author: Felipe Magno de Almeida Date: Wed Jan 29 16:22:15 2020 +0100 C#: Fix using beta for lists and hashes in tests Reviewers: segfaultxavi, bu5hm4n Reviewed By: segfaultxavi Subscribers: segfaultxavi, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11235 --- src/tests/efl_mono/Eina.cs | 3 +- src/tests/efl_mono/dummy_test_object.eo | 50 - 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/src/tests/efl_mono/Eina.cs b/src/tests/efl_mono/Eina.cs index 461dee6759..162eac63ba 100644 --- a/src/tests/efl_mono/Eina.cs +++ b/src/tests/efl_mono/Eina.cs @@ -2050,7 +2050,7 @@ class TestEinaList // // Integer // - +#if EFL_BETA public static void test_eina_list_int_in() { var t = new Dummy.TestObject(); @@ -2330,6 +2330,7 @@ class TestEinaList a.Dispose(); t.Dispose(); } +#endif } class TestEinaInlist diff --git a/src/tests/efl_mono/dummy_test_object.eo b/src/tests/efl_mono/dummy_test_object.eo index ee24e5ef9b..41c947ee07 100644 --- a/src/tests/efl_mono/dummy_test_object.eo +++ b/src/tests/efl_mono/dummy_test_object.eo @@ -574,14 +574,14 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { /* Eina List */ /* Integer */ - eina_list_int_in { + eina_list_int_in @beta { params { @in lst: list; } return: bool; } - eina_list_int_in_own { + eina_list_int_in_own @beta { params { @in lst: list @move; // } @@ -591,7 +591,7 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { return: bool; } - eina_list_int_out { + eina_list_int_out @beta { params { @out lst: list; } @@ -601,33 +601,33 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { return: bool; } - eina_list_int_out_own { + eina_list_int_out_own @beta { params { @out lst: list @move; // } return: bool; } - eina_list_int_return { + eina_list_int_return @beta { return: list; } check_eina_list_int_return { return: bool; } - eina_list_int_return_own { + eina_list_int_return_own @beta { return: list @move; // } /* String */ - eina_list_str_in { + eina_list_str_in @beta { params { @in lst: list; } return: bool; } - eina_list_str_in_own { + eina_list_str_in_own @beta { params { @in lst: list @move; } @@ -637,7 +637,7 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { return: bool; } - eina_list_str_out { + eina_list_str_out @beta { params { @out lst: list; } @@ -647,33 +647,33 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { return: bool; } - eina_list_str_out_own { + eina_list_str_out_own @beta { params { @out lst: list @move; } return: bool; } - eina_list_str_return { + eina_list_str_return @beta { return: list; } check_eina_list_str_return { return: bool; } - eina_list_str_return_own { + eina_list_str_return_own @beta { return: list @move; } /* Eina_Stringshare */ - eina_list_strshare_in { + eina_list_strshare_in @beta { params { @in lst: list; } return: bool; } - eina_list_strshare_in_own { + eina_list_strshare_in_own @beta { params { @in lst: list @move; } @@ -683,7 +683,7 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { return: bool; } - eina_list_strshare_out { + eina_list_strshare_out @beta { params { @out lst: list; } @@ -693,33 +693,33 @@ class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { return: bool; } - eina_list_strshare_out_own { + eina_list_strshare_out_own @beta { params { @out lst: list @move; } return: bool; } - eina_list_strshare_return { + eina_list_strshare_return @beta { return: list; } check_eina_list_strshare_return { return: bool; } - eina_list_strshare_return_own { +
[EGIT] [core/efl] master 03/03: ecore_wl2: Fix doc(delete tags).
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ec4ea2d06d6454ad2bc291e413d52ecc1504e3bc commit ec4ea2d06d6454ad2bc291e413d52ecc1504e3bc Author: Woochanlee Date: Wed Jan 29 09:01:51 2020 -0500 ecore_wl2: Fix doc(delete tags). Reviewers: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11226 --- src/lib/ecore_wl2/Ecore_Wl2.h | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/lib/ecore_wl2/Ecore_Wl2.h b/src/lib/ecore_wl2/Ecore_Wl2.h index da664939b7..c68890cd74 100644 --- a/src/lib/ecore_wl2/Ecore_Wl2.h +++ b/src/lib/ecore_wl2/Ecore_Wl2.h @@ -714,15 +714,15 @@ EAPI Ecore_Wl2_Window *ecore_wl2_display_window_find_by_surface(Ecore_Wl2_Displa * Gets the connected display object * * @brief This function is typically used by clients to get an - * existing Wayland display. + *existing Wayland display. * - * @param name The display target name. If @c NULL, the default - * display is assumed. + * @param name The display target name. If @c NULL, the default + *display is assumed. * - * @return The Ecore_Wl2_Display which was connected to + * @return The Ecore_Wl2_Display which was connected to * - * @ingroup Ecore_Wl2_Display_Group - * @since 1.24 + * @ingroup Ecore_Wl2_Display_Group + * @since 1.24 */ EAPI Ecore_Wl2_Display *ecore_wl2_connected_display_get(const char *name); --
[EGIT] [core/efl] master 02/03: tests/ecore_wl2: Fix check for Enlightenment compositor
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ba3fbb566760be36ecaed502fc2168ae45a13da1 commit ba3fbb566760be36ecaed502fc2168ae45a13da1 Author: Christopher Michael Date: Wed Jan 29 09:01:06 2020 -0500 tests/ecore_wl2: Fix check for Enlightenment compositor ref T8016 --- src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c b/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c index 662093c347..ce452abd89 100644 --- a/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c +++ b/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c @@ -16,7 +16,7 @@ void ecore_wl2_test_init(TCase *tc) { tcase_add_test(tc, ecore_wl2_simple); - if (getenv("E_START")) + if (getenv("WAYLAND_DISPLAY") && (getenv("E_START"))) { tcase_add_test(tc, wl2_session_recovery_disable); } --
[EGIT] [core/efl] master 01/03: tests/ecore_wl2: Add dummy tests for ecore_wl2_* functions.
devilhorns pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0bf3fd3866139d4f5bd28ce3dab64032439d194b commit 0bf3fd3866139d4f5bd28ce3dab64032439d194b Author: Woochanlee Date: Wed Jan 29 09:00:08 2020 -0500 tests/ecore_wl2: Add dummy tests for ecore_wl2_* functions. Summary: Add dummy tests for below functions. Updates will be... when there is a better verification method. ref T8016 Reviewers: devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8016 Differential Revision: https://phab.enlightenment.org/D11214 --- src/tests/ecore_wl2/ecore_wl2_suite.c | 1 + src/tests/ecore_wl2/ecore_wl2_suite.h | 1 + src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c | 11 + src/tests/ecore_wl2/ecore_wl2_test_input.c | 56 ++ src/tests/ecore_wl2/ecore_wl2_test_output.c| 33 +++ src/tests/ecore_wl2/ecore_wl2_test_window.c| 20 + src/tests/ecore_wl2/meson.build| 3 +- 7 files changed, 124 insertions(+), 1 deletion(-) diff --git a/src/tests/ecore_wl2/ecore_wl2_suite.c b/src/tests/ecore_wl2/ecore_wl2_suite.c index 90d16bea60..9418de14c4 100644 --- a/src/tests/ecore_wl2/ecore_wl2_suite.c +++ b/src/tests/ecore_wl2/ecore_wl2_suite.c @@ -7,6 +7,7 @@ static const Efl_Test_Case etc[] = { "Display", ecore_wl2_test_display }, { "Window", ecore_wl2_test_window }, { "Input", ecore_wl2_test_input }, + { "Output", ecore_wl2_test_output }, #endif { NULL, NULL } }; diff --git a/src/tests/ecore_wl2/ecore_wl2_suite.h b/src/tests/ecore_wl2/ecore_wl2_suite.h index b429bdbdbf..111b388f28 100644 --- a/src/tests/ecore_wl2/ecore_wl2_suite.h +++ b/src/tests/ecore_wl2/ecore_wl2_suite.h @@ -16,5 +16,6 @@ void ecore_wl2_test_init(TCase *tc); void ecore_wl2_test_display(TCase *tc); void ecore_wl2_test_window(TCase *tc); void ecore_wl2_test_input(TCase *tc); +void ecore_wl2_test_output(TCase *tc); #endif diff --git a/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c b/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c index d8049cd352..662093c347 100644 --- a/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c +++ b/src/tests/ecore_wl2/ecore_wl2_test_ecore_wl2.c @@ -5,8 +5,19 @@ EFL_START_TEST(ecore_wl2_simple) } EFL_END_TEST +EFL_START_TEST(wl2_session_recovery_disable) +{ + //FIXME: Need some discussion about how to validate this API in TC. + ecore_wl2_session_recovery_disable(); +} +EFL_END_TEST + void ecore_wl2_test_init(TCase *tc) { tcase_add_test(tc, ecore_wl2_simple); + if (getenv("E_START")) + { +tcase_add_test(tc, wl2_session_recovery_disable); + } } diff --git a/src/tests/ecore_wl2/ecore_wl2_test_input.c b/src/tests/ecore_wl2/ecore_wl2_test_input.c index 2eb3aa6b38..12b1e45338 100644 --- a/src/tests/ecore_wl2/ecore_wl2_test_input.c +++ b/src/tests/ecore_wl2/ecore_wl2_test_input.c @@ -227,6 +227,60 @@ EFL_START_TEST(wl2_input_keyboard_repeat) } EFL_END_TEST +EFL_START_TEST(wl2_input_cursor_from_name_set) +{ + Ecore_Wl2_Display *disp; + Ecore_Wl2_Input *input; + Eina_Iterator *itr; + + disp = _display_connect(); + ck_assert(disp != NULL); + + itr = ecore_wl2_display_inputs_get(disp); + ck_assert(itr != NULL); + + EINA_ITERATOR_FOREACH(itr, input) + { +if (ecore_wl2_input_seat_capabilities_get(input) == +ECORE_WL2_SEAT_CAPABILITIES_POINTER) + { + //FIXME: Need some discussion about how to validate this API in TC. + ecore_wl2_input_cursor_from_name_set(input, NULL); + ecore_wl2_input_cursor_from_name_set(NULL, NULL); + } + } + + eina_iterator_free(itr); +} +EFL_END_TEST + +EFL_START_TEST(wl2_input_pointer_set) +{ + Ecore_Wl2_Display *disp; + Ecore_Wl2_Input *input; + Eina_Iterator *itr; + + disp = _display_connect(); + ck_assert(disp != NULL); + + itr = ecore_wl2_display_inputs_get(disp); + ck_assert(itr != NULL); + + EINA_ITERATOR_FOREACH(itr, input) + { +if (ecore_wl2_input_seat_capabilities_get(input) == +ECORE_WL2_SEAT_CAPABILITIES_POINTER) + { + //FIXME: Need some discussion about how to validate this API in TC. + ecore_wl2_input_pointer_set(input, NULL, 0, 0); + ecore_wl2_input_pointer_set(NULL, NULL, 0, 0); + } + } + + eina_iterator_free(itr); +} +EFL_END_TEST + void ecore_wl2_test_input(TCase *tc) { @@ -240,5 +294,7 @@ ecore_wl2_test_input(TCase *tc) tcase_add_test(tc, wl2_input_seat_capabilities); tcase_add_test(tc, wl2_input_pointer_xy); tcase_add_test(tc, wl2_input_keyboard_repeat); +tcase_add_test(tc, wl2_input_cursor_from_name_set); +tcase_add_test(tc, wl2_input_pointer_set); } } diff --git a/src/tests/ecore_wl2/ecore_wl2_test_output.c b/src/tests/ecore_wl2/ecore_wl2_test_output.c
[EGIT] [core/efl] master 01/01: vg_common_json: Supports transform properties
jsuya pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=9cb73aea1bc46da65579482d4550a7e2e3ad3f13 commit 9cb73aea1bc46da65579482d4550a7e2e3ad3f13 Author: JunsuChoi Date: Wed Jan 29 21:40:28 2020 +0900 vg_common_json: Supports transform properties Summary: Supports scale, position, and rotation properties related to transform among properties supported by value provider. Test Plan: Remove 'json' in evas-loaders-disabler build elementary_test -to "value provider" (path : layer.box1) Depends on D11213 Reviewers: Hermet, smohanty, kimcinoo Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11129 --- .../elementary/test_efl_gfx_vg_value_provider.c| 80 +- src/lib/evas/canvas/efl_gfx_vg_value_provider.h| 2 +- src/static_libs/vg_common/vg_common_json.c | 40 ++- 3 files changed, 116 insertions(+), 6 deletions(-) diff --git a/src/bin/elementary/test_efl_gfx_vg_value_provider.c b/src/bin/elementary/test_efl_gfx_vg_value_provider.c index c6f3189908..d7c3af8a4a 100644 --- a/src/bin/elementary/test_efl_gfx_vg_value_provider.c +++ b/src/bin/elementary/test_efl_gfx_vg_value_provider.c @@ -55,8 +55,6 @@ add_value_provider(char* new_path, char* new_type, char* new_values) efl_gfx_vg_value_provider_stroke_color_set(vp, color[0], color[1], color[2], color[3]); sprintf(new_type, "StrokeColor"); } - - efl_ui_vg_animation_value_provider_override(anim_view, vp); } if (!strcmp(type, "StrokeWidth")) @@ -68,11 +66,53 @@ add_value_provider(char* new_path, char* new_type, char* new_values) if (v) width = strtod(v, NULL); efl_gfx_vg_value_provider_stroke_width_set(vp, width); efl_ui_vg_animation_value_provider_override(anim_view, vp); -evas_object_show(anim_view); sprintf(new_path, "%s", path); sprintf(new_type, "StrokeWidth"); sprintf(new_values, "%f", width); } + if (strstr(type, "Tr")) + { +double value[2], value_cnt; +Eina_Matrix4 m; +Eo *vp = efl_add(EFL_GFX_VG_VALUE_PROVIDER_CLASS, anim_view); + +efl_gfx_vg_value_provider_keypath_set(vp, (char*)path); + +value_cnt = strstr(type, "Rotation") ? 1 : 2; +for( int i = 0; i < value_cnt; i++) + { + char* v = (char*)efl_text_get(values[i]); + if (v) value[i] = atof(v); + } + +eina_matrix4_identity(); +if (!strcmp(type, "TrPosition")) + { + // Z projection + eina_matrix4_translate(, value[0], value[1], 0); + sprintf(new_type, "TrPosition"); + sprintf(new_values, "%f %f",value[0], value[1]); + + } +else if (!strcmp(type, "TrScale")) + { + // Z projection + eina_matrix4_scale(, value[0], value[1], 1); + sprintf(new_type, "TrScale"); + sprintf(new_values, "%f %f",value[0], value[1]); + } +else if (!strcmp(type, "TrRotation")) + { + // Z projection + eina_matrix4_rotate(, value[0] * (M_PI / 180), EINA_MATRIX_AXIS_Z); //degree to radian + sprintf(new_values, "%f",value[0]); + sprintf(new_type, "TrRotation"); + } + +sprintf(new_path, "%s", path); +efl_gfx_vg_value_provider_transform_set(vp, ); +efl_ui_vg_animation_value_provider_override(anim_view, vp); + } return EINA_TRUE; } @@ -235,6 +275,37 @@ void values_input(Eo* box, const char* type) efl_gfx_hint_size_min_set(values[0], EINA_SIZE2D(50, 10)); efl_text_set(efl_part(values[0], "efl.text_guide"), "Width(double type)"); } + else if (strstr(type, "Tr")) + { +char text[2][2]; +if (!strcmp(type, "TrPosition")) + { + sprintf(text[0], "X"); + sprintf(text[1], "Y"); + } +else if (!strcmp(type, "TrScale")) + { + sprintf(text[0], "W"); + sprintf(text[1], "H"); + } +else if (!strcmp(type, "TrRotation")) + { + sprintf(text[0], "R"); + } + +int value_cnt = strstr(type, "Rotation") ? 1 : 2; +for( int i = 0; i < value_cnt; i++) + { + values[i] = efl_add(EFL_UI_TEXTBOX_CLASS, box, + efl_gfx_hint_weight_set(efl_added, EFL_GFX_HINT_EXPAND, 0), + efl_gfx_hint_fill_set(efl_added, EINA_FALSE, EINA_FALSE), + efl_gfx_hint_align_set(efl_added, EVAS_HINT_FILL, EVAS_HINT_FILL), + efl_text_interactive_editable_set(efl_added, EINA_TRUE), +
[EGIT] [core/efl] master 01/01: Efl.Gfx.Vg.Value_Provider: Change transform value type to Matrix4
jsuya pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5a3f3d0ab6890de7261dada7d151a9a71a885aa6 commit 5a3f3d0ab6890de7261dada7d151a9a71a885aa6 Author: JunsuChoi Date: Wed Jan 29 21:39:53 2020 +0900 Efl.Gfx.Vg.Value_Provider: Change transform value type to Matrix4 Summary: Change type to matrix4 for 3-axis use when using value provider. Depends on D11159 Test Plan: N/A Reviewers: Hermet, kimcinoo, smohanty Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11213 --- src/lib/evas/canvas/efl_gfx_vg_value_provider.c | 8 src/lib/evas/canvas/efl_gfx_vg_value_provider.eo | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib/evas/canvas/efl_gfx_vg_value_provider.c b/src/lib/evas/canvas/efl_gfx_vg_value_provider.c index ccf334924f..3f49a8ddc0 100644 --- a/src/lib/evas/canvas/efl_gfx_vg_value_provider.c +++ b/src/lib/evas/canvas/efl_gfx_vg_value_provider.c @@ -35,17 +35,17 @@ _efl_gfx_vg_value_provider_keypath_get(const Eo *obj EINA_UNUSED, Efl_Gfx_Vg_Val } EOLIAN void -_efl_gfx_vg_value_provider_transform_set(Eo *obj EINA_UNUSED, Efl_Gfx_Vg_Value_Provider_Data *pd, Eina_Matrix3 *m) +_efl_gfx_vg_value_provider_transform_set(Eo *obj EINA_UNUSED, Efl_Gfx_Vg_Value_Provider_Data *pd, Eina_Matrix4 *m) { if (m) { if (!pd->m) { - pd->m = malloc(sizeof (Eina_Matrix3)); + pd->m = malloc(sizeof (Eina_Matrix4)); if (!pd->m) return; } pd->flag = pd->flag | EFL_GFX_VG_VALUE_PROVIDER_CHANGE_FLAG_TRANSFORM_MATRIX; -memcpy(pd->m, m, sizeof (Eina_Matrix3)); +memcpy(pd->m, m, sizeof (Eina_Matrix4)); } else { @@ -54,7 +54,7 @@ _efl_gfx_vg_value_provider_transform_set(Eo *obj EINA_UNUSED, Efl_Gfx_Vg_Value_P } } -EOLIAN Eina_Matrix3* +EOLIAN Eina_Matrix4* _efl_gfx_vg_value_provider_transform_get(const Eo *obj EINA_UNUSED, Efl_Gfx_Vg_Value_Provider_Data *pd) { return pd->m; diff --git a/src/lib/evas/canvas/efl_gfx_vg_value_provider.eo b/src/lib/evas/canvas/efl_gfx_vg_value_provider.eo index 2e21774a2f..43eb555a45 100644 --- a/src/lib/evas/canvas/efl_gfx_vg_value_provider.eo +++ b/src/lib/evas/canvas/efl_gfx_vg_value_provider.eo @@ -25,7 +25,7 @@ class @beta Efl.Gfx.Vg.Value_Provider extends Efl.Object get { } values { -m: ptr(Eina.Matrix3); [[ Matrix Value. ]] +m: ptr(Eina.Matrix4); [[ Matrix Value. ]] } } @property fill_color { --
[EGIT] [core/efl] master 01/01: edje_legacy: avoid calling any functions if part is NULL
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0c3903001127c90b79c342711867448a48d40e1b commit 0c3903001127c90b79c342711867448a48d40e1b Author: Proht Date: Sat Jan 25 19:06:33 2020 + edje_legacy: avoid calling any functions if part is NULL This avoids calling any functions like _edje_fetch if part is NULL, because it's unnecessary. This does not fix any null pointers, the EINA_SAFE* macros are just used for convenience. Differential Revision: https://phab.enlightenment.org/D11189 --- src/lib/edje/edje_legacy.c | 47 ++ 1 file changed, 31 insertions(+), 16 deletions(-) diff --git a/src/lib/edje/edje_legacy.c b/src/lib/edje/edje_legacy.c index f3a692b5a0..0c01114132 100644 --- a/src/lib/edje/edje_legacy.c +++ b/src/lib/edje/edje_legacy.c @@ -5,8 +5,9 @@ #define GET_REAL_PART_ON_FAIL_RETURN(x) Edje_Real_Part *rp;\ Edje *ed;\ +if (!part) return x;\ ed = _edje_fetch(obj);\ -if ((!ed) || (!part)) return x;\ +if (!ed) return x;\ rp = _edje_real_part_recursive_get(, part);\ if (!rp) return x;\ @@ -25,12 +26,13 @@ edje_object_part_geometry_get(const Edje_Object *obj, const char *part, int *x, { Edje_Real_Part *rp; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN_VAL(part, EINA_FALSE); // Similar to geometry_get(efl_part(obj, part), x, y, w, h) but the bool // return value matters here. ed = _edje_fetch(obj); - if ((!ed) || (!part)) + if (!ed) { if (x) *x = 0; if (y) *y = 0; @@ -486,10 +488,11 @@ edje_object_part_text_style_user_peek(const Eo *obj EINA_UNUSED, const char *par Edje_Real_Part *rp; const Evas_Textblock_Style *ts; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return NULL; + if (!ed) return NULL; rp = _edje_real_part_recursive_get(, part); if (!rp) return NULL; if (rp->part->type != EDJE_PART_TYPE_TEXTBLOCK) return NULL; @@ -528,10 +531,11 @@ edje_object_text_insert_filter_callback_add(Eo *obj EINA_UNUSED, const char *par { Edje_Text_Insert_Filter_Callback *cb; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN(part); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return; + if (!ed) return; cb = calloc(1, sizeof(Edje_Text_Insert_Filter_Callback)); cb->part = eina_stringshare_add(part); cb->func = func; @@ -546,10 +550,11 @@ edje_object_text_insert_filter_callback_del(Eo *obj EINA_UNUSED, const char *par Edje_Text_Insert_Filter_Callback *cb; Eina_List *l; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return NULL; + if (!ed) return NULL; EINA_LIST_FOREACH(ed->text_insert_filter_callbacks, l, cb) { if ((!strcmp(cb->part, part)) && (cb->func == func)) @@ -572,10 +577,11 @@ edje_object_text_insert_filter_callback_del_full(Eo *obj EINA_UNUSED, const char Edje_Text_Insert_Filter_Callback *cb; Eina_List *l; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return NULL; + if (!ed) return NULL; EINA_LIST_FOREACH(ed->text_insert_filter_callbacks, l, cb) { if ((!strcmp(cb->part, part)) && (cb->func == func) && @@ -598,10 +604,11 @@ edje_object_text_markup_filter_callback_add(Eo *obj EINA_UNUSED, const char *par { Edje_Markup_Filter_Callback *cb; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN(part); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return; + if (!ed) return; cb = calloc(1, sizeof(Edje_Markup_Filter_Callback)); cb->part = eina_stringshare_add(part); cb->func = func; @@ -616,10 +623,11 @@ edje_object_text_markup_filter_callback_del(Eo *obj EINA_UNUSED, const char *par Edje_Markup_Filter_Callback *cb; Eina_List *l; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return NULL; + if (!ed) return NULL; EINA_LIST_FOREACH(ed->markup_filter_callbacks, l, cb) { if ((!strcmp(cb->part, part)) && (cb->func == func)) @@ -642,10 +650,11 @@ edje_object_text_markup_filter_callback_del_full(Eo *obj EINA_UNUSED, const char Edje_Markup_Filter_Callback *cb; Eina_List *l; Edje *ed; + EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); ed = _edje_fetch(obj); - if ((!ed) || (!part)) return NULL; + if (!ed) return NULL; EINA_LIST_FOREACH(ed->markup_filter_callbacks, l, cb) { if ((!strcmp(cb->part, part)) && (cb->func == func) && @@ -668,10 +677,11 @@ edje_object_part_text_user_insert(const Eo
[EGIT] [core/efl] master 01/03: efl.ui.textbox: clean up all evas_object related functions from stable methods/interfaces
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d53f83571a6f817343140b6e6fc6c18e1e111aaa commit d53f83571a6f817343140b6e6fc6c18e1e111aaa Author: Ali Alzyod Date: Tue Jan 28 16:54:32 2020 + efl.ui.textbox: clean up all evas_object related functions from stable methods/interfaces This patch will: - Replace all Evas callbacks with unified ones. - Replace evas_object* methods with unified ones (For **stabilized** methods and interfaces) Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D11217 --- src/lib/elementary/efl_ui_textbox.c | 304 1 file changed, 135 insertions(+), 169 deletions(-) diff --git a/src/lib/elementary/efl_ui_textbox.c b/src/lib/elementary/efl_ui_textbox.c index 0976e81616..aa39ff5b16 100644 --- a/src/lib/elementary/efl_ui_textbox.c +++ b/src/lib/elementary/efl_ui_textbox.c @@ -125,7 +125,7 @@ struct _Anchor if (EINA_UNLIKELY(!ptr)) \ {\ ERR("No widget data for object %p (%s)", \ - o, evas_object_type_get(o)); \ + o, efl_class_name_get(o)); \ return; \ } @@ -134,7 +134,7 @@ struct _Anchor if (EINA_UNLIKELY(!ptr))\ { \ ERR("No widget data for object %p (%s)", \ - o, evas_object_type_get(o)); \ + o, efl_class_name_get(o)); \ return val;\ } @@ -197,7 +197,7 @@ static void _efl_ui_textbox_cursor_changed_cb(void *data, const Efl_Event *event static void _text_size_changed_cb(void *data, const Efl_Event *event EINA_UNUSED); static void _scroller_size_changed_cb(void *data, const Efl_Event *event EINA_UNUSED); static void _text_position_changed_cb(void *data, const Efl_Event *event EINA_UNUSED); -static void _efl_ui_textbox_move_cb(void *data, Evas *e, Evas_Object *obj, void *event_info); +static void _efl_ui_textbox_move_cb(void *data, const Efl_Event *event EINA_UNUSED); static const char* _efl_ui_textbox_selection_get(const Eo *obj, Efl_Ui_Textbox_Data *sd); static void _edje_signal_emit(Efl_Ui_Textbox_Data *obj, const char *sig, const char *src); static void _decoration_defer_all(Eo *obj); @@ -276,10 +276,8 @@ _viewport_region_get(Evas_Object *obj) { if (efl_isa(parent, EFL_UI_SCROLLABLE_INTERFACE)) { - Eina_Rectangle r; - EINA_RECTANGLE_SET(, 0, 0, 0, 0); - evas_object_geometry_get(parent, , , , ); - if (!eina_rectangle_intersection(, )) + Eina_Rect r = efl_gfx_entity_geometry_get(parent); + if (!eina_rectangle_intersection(, )) { rect = EINA_RECT_EMPTY(); break; @@ -329,7 +327,7 @@ _update_selection_handler(Eo *obj) off = _decoration_calc_offset(sd); hx = off.x + sx; hy = off.y + sy + sh; -evas_object_move(sd->start_handler, hx, hy); +efl_gfx_entity_position_set(sd->start_handler, EINA_POSITION2D(hx, hy)); rect = _viewport_region_get(obj); @@ -359,7 +357,7 @@ _update_selection_handler(Eo *obj) hx = off.x + ex; hy = off.y + ey + eh; -evas_object_move(sd->end_handler, hx, hy); +efl_gfx_entity_position_set(sd->end_handler, EINA_POSITION2D(hx, hy)); if (!eina_rectangle_xcoord_inside(, hx) || !eina_rectangle_ycoord_inside(, hy)) @@ -450,14 +448,14 @@ _dnd_pos_cb(void *data EINA_UNUSED, Elm_Xdnd_Action action EINA_UNUSED) { int pos; - Evas_Coord ox, oy, ex, ey; + Eina_Rect o, e; EFL_UI_TEXT_DATA_GET(obj, sd); - evas_object_geometry_get(obj, , , NULL, NULL); - evas_object_geometry_get(sd->entry_edje, , , NULL, NULL); - x = x + ox - ex; - y = y + oy - ey; + o = efl_gfx_entity_geometry_get(obj); + e = efl_gfx_entity_geometry_get(sd->entry_edje); + x = x + o.x - e.x; + y = y + o.y - e.y; edje_object_part_text_cursor_coord_set (sd->entry_edje, "efl.text", EDJE_CURSOR_USER, x, y); @@ -570,7 +568,7 @@ _efl_ui_textbox_efl_ui_widget_theme_apply(Eo *obj, Efl_Ui_Textbox_Data *sd) efl_layout_signal_process(sd->entry_edje, EINA_FALSE); - Evas_Object* clip = evas_object_clip_get(sd->entry_edje); + Evas_Object* clip = efl_canvas_object_clipper_get(sd->entry_edje); efl_canvas_object_clipper_set(sd->hit_rect, clip); if (sd->start_handler) @@ -604,16 +602,12 @@ _cursor_geometry_recalc(Evas_Object *obj) { EFL_UI_TEXT_DATA_GET(obj, sd); - Evas_Coord x, y, w, h; - Evas_Coord x2, y2, w2, h2; Evas_Coord cx, cy, cw, ch; Eina_Rect rc; if (!efl_text_interactive_editable_get(obj)) return;
[EGIT] [core/efl] master 03/03: efl.ui.textbox: replace strncmp with strcmp for Part
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d6094b799584aa0d321c28f9115eddc3515c329a commit d6094b799584aa0d321c28f9115eddc3515c329a Author: Ali Alzyod Date: Tue Jan 28 17:04:51 2020 + efl.ui.textbox: replace strncmp with strcmp for Part Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D11218 --- src/lib/elementary/efl_ui_textbox.c | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/lib/elementary/efl_ui_textbox.c b/src/lib/elementary/efl_ui_textbox.c index 420056d990..705ac1bef4 100644 --- a/src/lib/elementary/efl_ui_textbox.c +++ b/src/lib/elementary/efl_ui_textbox.c @@ -3283,18 +3283,18 @@ _efl_ui_textbox_item_factory_get(const Eo *obj EINA_UNUSED, Efl_Ui_Textbox_Data /* Efl.Part begin */ -#define STRCMP(X, Y) strncmp((X), (Y), strlen(X)) - static Eina_Bool _efl_ui_textbox_text_set(Eo *obj EINA_UNUSED, Efl_Ui_Textbox_Data *pd, const char *part, const char *text) { - if (!STRCMP("efl.text_guide", part)) + if (!part) return EINA_FALSE; + + if (!strcmp("efl.text_guide", part)) { efl_text_set(pd->text_guide_obj, text); return EINA_TRUE; } - else if (!STRCMP("efl.text", part)) + else if (!strcmp("efl.text", part)) { efl_text_set(pd->text_obj, text); return EINA_TRUE; @@ -3307,11 +3307,13 @@ static const char * _efl_ui_textbox_text_get(Eo *obj EINA_UNUSED, Efl_Ui_Textbox_Data *pd, const char *part) { - if (!STRCMP("efl.text_guide", part)) + if (!part) return EINA_FALSE; + + if (!strcmp("efl.text_guide", part)) { return efl_text_get(pd->text_guide_obj); } - else if (!STRCMP("efl.text", part)) + else if (!strcmp("efl.text", part)) { return efl_text_get(pd->text_obj); } @@ -3319,8 +3321,6 @@ _efl_ui_textbox_text_get(Eo *obj EINA_UNUSED, Efl_Ui_Textbox_Data *pd, return NULL; } -#undef STRCMP - static Eina_Bool _part_is_efl_ui_textbox_part(const Eo *obj EINA_UNUSED, const char *part) { --
[EGIT] [core/efl] master 02/03: efl.ui.textbox: replace ecore_job with Efl_Future
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=64232138ef9eb928e1c9c1285c1bcf591ad536af commit 64232138ef9eb928e1c9c1285c1bcf591ad536af Author: Ali Alzyod Date: Tue Jan 28 16:36:52 2020 + efl.ui.textbox: replace ecore_job with Efl_Future This patch will replace the use of ecore_job with Efl_Future Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D11216 --- src/lib/elementary/efl_ui_textbox.c | 25 +++-- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/src/lib/elementary/efl_ui_textbox.c b/src/lib/elementary/efl_ui_textbox.c index aa39ff5b16..420056d990 100644 --- a/src/lib/elementary/efl_ui_textbox.c +++ b/src/lib/elementary/efl_ui_textbox.c @@ -43,7 +43,7 @@ struct _Efl_Ui_Textbox_Data Eo *cursor_bidi; Evas_Object *start_handler; Evas_Object *end_handler; - Ecore_Job*deferred_decoration_job; + Eina_Future *deferred_decoration_job; /* for deferred appending */ int append_text_position; int append_text_len; @@ -1735,7 +1735,6 @@ _efl_ui_textbox_efl_object_destructor(Eo *obj, Efl_Ui_Textbox_Data *sd) entries = eina_list_remove(entries, obj); eina_stringshare_del(sd->text); - ecore_job_del(sd->deferred_decoration_job); eina_stringshare_del(sd->anchor_hover.hover_style); efl_event_thaw(obj); @@ -1749,9 +1748,6 @@ _efl_ui_textbox_efl_object_destructor(Eo *obj, Efl_Ui_Textbox_Data *sd) _anchors_free(sd); _clear_text_selection(sd); - ecore_job_del(sd->deferred_decoration_job); - sd->deferred_decoration_job = NULL; - if (sd->item_factory) efl_unref(sd->item_factory); efl_destructor(efl_super(obj, MY_CLASS)); @@ -3136,23 +3132,24 @@ _update_decorations(Eo *obj) efl_event_thaw(sd->text_obj); } -static void -_deferred_decoration_job(void *data) +static Eina_Value +_deferred_decoration_job(Eo *o, void *data EINA_UNUSED, const Eina_Value value EINA_UNUSED) { - EFL_UI_TEXT_DATA_GET(data, sd); - _update_decorations(data); + EFL_UI_TEXT_DATA_GET(o, sd); + _update_decorations(o); sd->deferred_decoration_job = NULL; + + return EINA_VALUE_EMPTY; } static void _decoration_defer(Eo *obj) { EFL_UI_TEXT_DATA_GET(obj, sd); - if (!sd->deferred_decoration_job) - { -sd->deferred_decoration_job = - ecore_job_add(_deferred_decoration_job, obj); - } + if (sd->deferred_decoration_job) return; + + Eina_Future *f = efl_loop_job(efl_main_loop_get()); + sd->deferred_decoration_job = efl_future_then(obj, f, _deferred_decoration_job); } static void --
[EGIT] [core/efl] master 02/02: Revert "eolian: enforce that list<> can only be used with @beta API."
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bdf696a6076973d7091ba878ea2546d899154ff1 commit bdf696a6076973d7091ba878ea2546d899154ff1 Author: Marcel Hollerbach Date: Wed Jan 29 10:45:24 2020 +0100 Revert "eolian: enforce that list<> can only be used with @beta API." This reverts commit 6b110e578d24b2a99c4c1b158433327a0a43ce1a. This breaks bindings compilation. --- src/lib/eolian/Eolian.h| 5 - src/lib/eolian/database_validate.c | 4 ++-- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h index 7f19ff93e7..db0421634a 100644 --- a/src/lib/eolian/Eolian.h +++ b/src/lib/eolian/Eolian.h @@ -336,12 +336,7 @@ typedef enum EOLIAN_TYPE_BUILTIN_ARRAY, EOLIAN_TYPE_BUILTIN_FUTURE, EOLIAN_TYPE_BUILTIN_ITERATOR, -#ifdef EFL_BETA_API_SUPPORT EOLIAN_TYPE_BUILTIN_LIST, -#else - // Placeholder when using release API only. Done to prevent offseting the value below. - EOLIAN_TYPE_BUILTIN_BETA_PLACEHOLDER1, -#endif EOLIAN_TYPE_BUILTIN_ANY_VALUE, EOLIAN_TYPE_BUILTIN_ANY_VALUE_REF, diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index 1e7b072c9d..b1af2185ef 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -400,9 +400,9 @@ _validate_type(Validate_State *vals, Eolian_Type *tp, Eina_Bool by_ref, int kwid = eo_lexer_keyword_str_to_id(tp->base.name); if (kwid > KW_void) tp->ownable = EINA_TRUE; -if ((kwid == KW_hash || kwid == KW_list) && vals->stable) +if (kwid == KW_hash && vals->stable) { - _eo_parser_log(>base, "hashes and lists not allowed in stable context"); + _eo_parser_log(>base, "hashes not allowed in stable context"); return EINA_FALSE; } Eolian_Type *itp = tp->base_type; --
[EGIT] [core/efl] master 01/02: Revert "mono-test: Fix build break"
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8f7b965f91a1e2905b9d87d1ea38260782f820b4 commit 8f7b965f91a1e2905b9d87d1ea38260782f820b4 Author: Marcel Hollerbach Date: Wed Jan 29 10:45:06 2020 +0100 Revert "mono-test: Fix build break" This reverts commit 594f00c815d8ee15878071b23f041e5092abe7c2. This breaks tests --- src/tests/efl_mono/dummy_child.eo | 2 +- src/tests/efl_mono/dummy_inherit_helper.eo | 2 +- src/tests/efl_mono/dummy_part_holder.eo| 2 +- src/tests/efl_mono/dummy_test_object.eo| 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/tests/efl_mono/dummy_child.eo b/src/tests/efl_mono/dummy_child.eo index e2218f1926..f6de361c45 100644 --- a/src/tests/efl_mono/dummy_child.eo +++ b/src/tests/efl_mono/dummy_child.eo @@ -1,6 +1,6 @@ import eina_types; -class @beta Dummy.Child extends Dummy.Test_Object { +class Dummy.Child extends Dummy.Test_Object { methods { double_params { diff --git a/src/tests/efl_mono/dummy_inherit_helper.eo b/src/tests/efl_mono/dummy_inherit_helper.eo index e28cdb7812..f0f9183ebb 100644 --- a/src/tests/efl_mono/dummy_inherit_helper.eo +++ b/src/tests/efl_mono/dummy_inherit_helper.eo @@ -1,4 +1,4 @@ -class @beta Dummy.Inherit_Helper extends Efl.Object +class Dummy.Inherit_Helper extends Efl.Object { methods { receive_dummy_and_call_int_out @static { diff --git a/src/tests/efl_mono/dummy_part_holder.eo b/src/tests/efl_mono/dummy_part_holder.eo index b95f1a5cdc..1ac88007fc 100644 --- a/src/tests/efl_mono/dummy_part_holder.eo +++ b/src/tests/efl_mono/dummy_part_holder.eo @@ -1,6 +1,6 @@ import eina_types; -class @beta Dummy.Part_Holder extends Dummy.Test_Object implements Efl.Part { +class Dummy.Part_Holder extends Dummy.Test_Object implements Efl.Part { parts { one: Dummy.Test_Object; [[ Part number one. ]] diff --git a/src/tests/efl_mono/dummy_test_object.eo b/src/tests/efl_mono/dummy_test_object.eo index 146438dd12..ee24e5ef9b 100644 --- a/src/tests/efl_mono/dummy_test_object.eo +++ b/src/tests/efl_mono/dummy_test_object.eo @@ -100,7 +100,7 @@ function Dummy.FormatCb { } }; -class @beta Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { +class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { [[ Simple test class @since 1.23 ]] --
[EGIT] [core/efl] master 01/01: mono-test: Fix build break
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=594f00c815d8ee15878071b23f041e5092abe7c2 commit 594f00c815d8ee15878071b23f041e5092abe7c2 Author: Xavi Artigas Date: Wed Jan 29 10:23:08 2020 +0100 mono-test: Fix build break Recent 6b110e578d24b2a99c4c1b158433327a0a43ce1a forbids list<> in stable contexts. --- src/tests/efl_mono/dummy_child.eo | 2 +- src/tests/efl_mono/dummy_inherit_helper.eo | 2 +- src/tests/efl_mono/dummy_part_holder.eo| 2 +- src/tests/efl_mono/dummy_test_object.eo| 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/tests/efl_mono/dummy_child.eo b/src/tests/efl_mono/dummy_child.eo index f6de361c45..e2218f1926 100644 --- a/src/tests/efl_mono/dummy_child.eo +++ b/src/tests/efl_mono/dummy_child.eo @@ -1,6 +1,6 @@ import eina_types; -class Dummy.Child extends Dummy.Test_Object { +class @beta Dummy.Child extends Dummy.Test_Object { methods { double_params { diff --git a/src/tests/efl_mono/dummy_inherit_helper.eo b/src/tests/efl_mono/dummy_inherit_helper.eo index f0f9183ebb..e28cdb7812 100644 --- a/src/tests/efl_mono/dummy_inherit_helper.eo +++ b/src/tests/efl_mono/dummy_inherit_helper.eo @@ -1,4 +1,4 @@ -class Dummy.Inherit_Helper extends Efl.Object +class @beta Dummy.Inherit_Helper extends Efl.Object { methods { receive_dummy_and_call_int_out @static { diff --git a/src/tests/efl_mono/dummy_part_holder.eo b/src/tests/efl_mono/dummy_part_holder.eo index 1ac88007fc..b95f1a5cdc 100644 --- a/src/tests/efl_mono/dummy_part_holder.eo +++ b/src/tests/efl_mono/dummy_part_holder.eo @@ -1,6 +1,6 @@ import eina_types; -class Dummy.Part_Holder extends Dummy.Test_Object implements Efl.Part { +class @beta Dummy.Part_Holder extends Dummy.Test_Object implements Efl.Part { parts { one: Dummy.Test_Object; [[ Part number one. ]] diff --git a/src/tests/efl_mono/dummy_test_object.eo b/src/tests/efl_mono/dummy_test_object.eo index ee24e5ef9b..146438dd12 100644 --- a/src/tests/efl_mono/dummy_test_object.eo +++ b/src/tests/efl_mono/dummy_test_object.eo @@ -100,7 +100,7 @@ function Dummy.FormatCb { } }; -class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { +class @beta Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface { [[ Simple test class @since 1.23 ]] --
[EGIT] [core/efl] master 04/05: elementary: do not use list<> in Efl.Ui.Focus_Manager.
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ae8b9123286a3d33cb5f217de7f5fa8fa532549c commit ae8b9123286a3d33cb5f217de7f5fa8fa532549c Author: Cedric BAIL Date: Fri Jan 3 11:22:12 2020 -0800 elementary: do not use list<> in Efl.Ui.Focus_Manager. Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D11051 --- src/lib/elementary/efl_ui_focus_manager.c | 8 +-- src/lib/elementary/efl_ui_focus_manager.eo | 8 +-- src/lib/elementary/efl_ui_focus_manager_calc.c | 83 -- src/lib/elementary/efl_ui_widget.c | 2 +- src/tests/elementary/efl_ui_test_focus.c | 18 -- 5 files changed, 87 insertions(+), 32 deletions(-) diff --git a/src/lib/elementary/efl_ui_focus_manager.c b/src/lib/elementary/efl_ui_focus_manager.c index 31afb9dc98..8f63f8e25c 100644 --- a/src/lib/elementary/efl_ui_focus_manager.c +++ b/src/lib/elementary/efl_ui_focus_manager.c @@ -8,10 +8,10 @@ EAPI void efl_ui_focus_relation_free(Efl_Ui_Focus_Relations *rel) { - eina_list_free(rel->right); - eina_list_free(rel->left); - eina_list_free(rel->top); - eina_list_free(rel->down); + eina_iterator_free(rel->right); + eina_iterator_free(rel->left); + eina_iterator_free(rel->top); + eina_iterator_free(rel->down); free(rel); } diff --git a/src/lib/elementary/efl_ui_focus_manager.eo b/src/lib/elementary/efl_ui_focus_manager.eo index 5bb11e7036..dd95256b6d 100644 --- a/src/lib/elementary/efl_ui_focus_manager.eo +++ b/src/lib/elementary/efl_ui_focus_manager.eo @@ -4,10 +4,10 @@ import eina_types; struct @beta @free(efl_ui_focus_relation_free) Efl.Ui.Focus.Relations { [[Structure holding the graph of relations between focusable objects. ]] -right : list @move; [[List of objects to the right.]] -left : list @move; [[List of objects to the left.]] -top : list @move; [[List of objects above.]] -down : list @move; [[List of objects below.]] +right : iterator @move; [[List of objects to the right.]] +left : iterator @move; [[List of objects to the left.]] +top : iterator @move; [[List of objects above.]] +down : iterator @move; [[List of objects below.]] next : Efl.Ui.Focus.Object; [[Next object.]] prev : Efl.Ui.Focus.Object; [[Previous object.]] parent : Efl.Ui.Focus.Object; [[Parent object.]] diff --git a/src/lib/elementary/efl_ui_focus_manager_calc.c b/src/lib/elementary/efl_ui_focus_manager_calc.c index efb67fcabf..7be3913474 100644 --- a/src/lib/elementary/efl_ui_focus_manager_calc.c +++ b/src/lib/elementary/efl_ui_focus_manager_calc.c @@ -1789,18 +1789,6 @@ _efl_ui_focus_manager_calc_efl_object_finalize(Eo *obj, Efl_Ui_Focus_Manager_Cal return result; } -static Eina_List* -_convert(Border b) -{ - Eina_List *n, *par = NULL; - Node *node; - - EINA_LIST_FOREACH(b.one_direction, n, node) - par = eina_list_append(par, node->focusable); - - return par; -} - EOLIAN static Efl_Ui_Focus_Object* _efl_ui_focus_manager_calc_efl_ui_focus_manager_manager_focus_get(const Eo *obj EINA_UNUSED, Efl_Ui_Focus_Manager_Calc_Data *pd) { @@ -1815,6 +1803,63 @@ _efl_ui_focus_manager_calc_efl_ui_focus_manager_manager_focus_get(const Eo *obj return upper->focusable; } +typedef struct _Eina_Iterator_Focusable Eina_Iterator_Focusable; +struct _Eina_Iterator_Focusable +{ + Eina_Iterator iterator; + + Eina_Iterator *redirect; +}; + +static Eina_Bool +_node_focusable_iterator_next(Eina_Iterator_Focusable *it, void **data) +{ + Node *node = NULL; + Eina_Bool r; + + if (!it->redirect) return EINA_FALSE; + + r = eina_iterator_next(it->redirect, (void **) ); + if (r && data) *data = node->focusable; + + return r; +} + +static Eina_List * +_node_focusable_iterator_get_container(Eina_Iterator_Focusable *it) +{ + if (!it->redirect) return NULL; + + return eina_iterator_container_get(it->redirect); +} + +static void +_node_focusable_iterator_free(Eina_Iterator_Focusable *it) +{ + eina_iterator_free(it->redirect); + EINA_MAGIC_SET(>iterator, 0); + free(it); +} + +static Eina_Iterator * +_node_focusable_iterator_new(Eina_List *nodes) +{ + Eina_Iterator_Focusable *it; + + it = calloc(1, sizeof (Eina_Iterator_Focusable)); + if (!it) return NULL; + + EINA_MAGIC_SET(>iterator, EINA_MAGIC_ITERATOR); + it->redirect = eina_list_iterator_new(nodes); + + it->iterator.version = EINA_ITERATOR_VERSION; + it->iterator.next = FUNC_ITERATOR_NEXT(_node_focusable_iterator_next); + it->iterator.get_container = FUNC_ITERATOR_GET_CONTAINER(_node_focusable_iterator_get_container); + it->iterator.free = FUNC_ITERATOR_FREE(_node_focusable_iterator_free); + + return >iterator; +} + EOLIAN static Efl_Ui_Focus_Relations* _efl_ui_focus_manager_calc_efl_ui_focus_manager_fetch(Eo *obj, Efl_Ui_Focus_Manager_Calc_Data *pd, Efl_Ui_Focus_Object *child) { @@ -1834,12 +1879,14 @@
[EGIT] [core/efl] master 02/05: efl: mark @beta Efl.Gfx.Event.Render_Post.
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=4d65c84329d5bc81143554b25d4b003d69f4e863 commit 4d65c84329d5bc81143554b25d4b003d69f4e863 Author: Cedric BAIL Date: Thu Jan 2 15:27:56 2020 -0800 efl: mark @beta Efl.Gfx.Event.Render_Post. This is an oversight during last release. It should not affect anyone as all the user of this type are marked @beta themself. Reviewed-by: Mike Blumenkrantz Reviewed-by: Daniel Kolesa Differential Revision: https://phab.enlightenment.org/D11049 --- src/lib/efl/interfaces/efl_gfx_types.eot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/efl/interfaces/efl_gfx_types.eot b/src/lib/efl/interfaces/efl_gfx_types.eot index 75d70e6e90..e9189aad31 100644 --- a/src/lib/efl/interfaces/efl_gfx_types.eot +++ b/src/lib/efl/interfaces/efl_gfx_types.eot @@ -184,7 +184,7 @@ enum Efl.Gfx.Change_Flag all = 0x [[All properties got changed.]] } -struct Efl.Gfx.Event.Render_Post +struct @beta Efl.Gfx.Event.Render_Post { [[Data sent along a "render,post" event, after a frame has been rendered. @since 1.23]] updated_area: list; [[A list of rectangles that were --
[EGIT] [core/efl] master 05/05: edje_entry: Add matching tag.
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5eb7ae8b586af4dccfc267a9b773ecf1d0ee75bd commit 5eb7ae8b586af4dccfc267a9b773ecf1d0ee75bd Author: Subodh Kumar Date: Fri Jan 24 14:49:03 2020 + edje_entry: Add matching tag. When textblock has several other tags which are closing as , textblock is not able to find the matching one. @fix Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D11172 --- src/lib/edje/edje_entry.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/edje/edje_entry.c b/src/lib/edje/edje_entry.c index eb63c4f61f..6afd99472a 100644 --- a/src/lib/edje/edje_entry.c +++ b/src/lib/edje/edje_entry.c @@ -853,7 +853,7 @@ _edje_anchor_mouse_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EIN { an->en->have_link_pressed = EINA_TRUE; evas_textblock_cursor_format_append(an->start, ""); - evas_textblock_cursor_format_prepend(an->end, ""); + evas_textblock_cursor_format_prepend(an->end, ""); } } ev->event_flags |= rp->mask_flags; --
[EGIT] [core/efl] master 03/05: eolian: enforce that list<> can only be used with @beta API.
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=6b110e578d24b2a99c4c1b158433327a0a43ce1a commit 6b110e578d24b2a99c4c1b158433327a0a43ce1a Author: Cedric BAIL Date: Thu Jan 2 15:41:36 2020 -0800 eolian: enforce that list<> can only be used with @beta API. Reviewed-by: Daniel Kolesa Differential Revision: https://phab.enlightenment.org/D11050 --- src/lib/eolian/Eolian.h| 5 + src/lib/eolian/database_validate.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h index db0421634a..7f19ff93e7 100644 --- a/src/lib/eolian/Eolian.h +++ b/src/lib/eolian/Eolian.h @@ -336,7 +336,12 @@ typedef enum EOLIAN_TYPE_BUILTIN_ARRAY, EOLIAN_TYPE_BUILTIN_FUTURE, EOLIAN_TYPE_BUILTIN_ITERATOR, +#ifdef EFL_BETA_API_SUPPORT EOLIAN_TYPE_BUILTIN_LIST, +#else + // Placeholder when using release API only. Done to prevent offseting the value below. + EOLIAN_TYPE_BUILTIN_BETA_PLACEHOLDER1, +#endif EOLIAN_TYPE_BUILTIN_ANY_VALUE, EOLIAN_TYPE_BUILTIN_ANY_VALUE_REF, diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index b1af2185ef..1e7b072c9d 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -400,9 +400,9 @@ _validate_type(Validate_State *vals, Eolian_Type *tp, Eina_Bool by_ref, int kwid = eo_lexer_keyword_str_to_id(tp->base.name); if (kwid > KW_void) tp->ownable = EINA_TRUE; -if (kwid == KW_hash && vals->stable) +if ((kwid == KW_hash || kwid == KW_list) && vals->stable) { - _eo_parser_log(>base, "hashes not allowed in stable context"); + _eo_parser_log(>base, "hashes and lists not allowed in stable context"); return EINA_FALSE; } Eolian_Type *itp = tp->base_type; --
[EGIT] [core/efl] master 01/05: evas: prepare separation of POST_RENDER event from being an unified and legacy event at the same time.
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=948da9ace617af088c1e2dd0d215010f31c00081 commit 948da9ace617af088c1e2dd0d215010f31c00081 Author: Cedric BAIL Date: Thu Jan 2 15:26:44 2020 -0800 evas: prepare separation of POST_RENDER event from being an unified and legacy event at the same time. Reviewed-by: Mike Blumenkrantz Reviewed-by: Daniel Kolesa Differential Revision: https://phab.enlightenment.org/D11048 --- src/lib/evas/Evas_Common.h | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/lib/evas/Evas_Common.h b/src/lib/evas/Evas_Common.h index b1cecf11ba..7122e0b194 100644 --- a/src/lib/evas/Evas_Common.h +++ b/src/lib/evas/Evas_Common.h @@ -302,7 +302,12 @@ typedef enum _Evas_Engine_Render_Mode EVAS_RENDER_MODE_NONBLOCKING = 1, /**< The rendering is non blocking mode*/ } Evas_Engine_Render_Mode; /**< behaviour of the renderer*/ -typedef Efl_Gfx_Event_Render_Post Evas_Event_Render_Post; /**< Event info sent after a frame was rendered. @since 1.18 */ +typedef struct _Evas_Event_Render_Post Evas_Event_Render_Post; /**< Event info sent after a frame was rendered. @since 1.18 */ +struct _Evas_Event_Render_Post +{ + Eina_List *updated_area; /**< A list of rectangles that were updated in the + * canvas. */ +}; typedef enum _Evas_Device_Class { --