[EGIT] [apps/evisum] master 01/01: Changes: Restructure folder.
netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=75e1daf45e483020923d95e3bb7d0b190bf397b1 commit 75e1daf45e483020923d95e3bb7d0b190bf397b1 Author: Alastair Poole Date: Wed Dec 4 22:55:01 2019 + Changes: Restructure folder. --- NEWS | 7 +++ README.md | 3 --- src/{ => bin}/disks.c | 0 src/{ => bin}/disks.h | 0 src/{ => bin}/main.c | 0 src/{ => bin}/meson.build | 2 +- src/{ => bin}/process.c | 0 src/{ => bin}/process.h | 0 src/{ => bin}/system.c| 0 src/{ => bin}/system.h| 0 src/{ => bin}/ui.c| 1 + src/{ => bin}/ui.h| 0 src/meson.build | 10 +- 13 files changed, 10 insertions(+), 13 deletions(-) diff --git a/NEWS b/NEWS index 35aee65..7b04c1b 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,10 @@ + +Evisum 0.3.0 + + + * Move to Meson build system. + ... + Evisum 0.2.6 diff --git a/README.md b/README.md index 0662b97..845aba3 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,3 @@ NOTES You can press 'k', 'm', 'g' to display results in KB, MB of GB respectively. -The plan is to rewrite the whole program to log system information -over time to disk so we can do nice things with E and displaying -system information (not duplicating loads of code). diff --git a/src/disks.c b/src/bin/disks.c similarity index 100% rename from src/disks.c rename to src/bin/disks.c diff --git a/src/disks.h b/src/bin/disks.h similarity index 100% rename from src/disks.h rename to src/bin/disks.h diff --git a/src/main.c b/src/bin/main.c similarity index 100% rename from src/main.c rename to src/bin/main.c diff --git a/src/meson.build b/src/bin/meson.build similarity index 89% copy from src/meson.build copy to src/bin/meson.build index e793f52..17df2af 100644 --- a/src/meson.build +++ b/src/bin/meson.build @@ -6,4 +6,4 @@ executable('evisum', [ 'main.c'], dependencies : deps, gui_app : true, - install : true) + install : true) diff --git a/src/process.c b/src/bin/process.c similarity index 100% rename from src/process.c rename to src/bin/process.c diff --git a/src/process.h b/src/bin/process.h similarity index 100% rename from src/process.h rename to src/bin/process.h diff --git a/src/system.c b/src/bin/system.c similarity index 100% rename from src/system.c rename to src/bin/system.c diff --git a/src/system.h b/src/bin/system.h similarity index 100% rename from src/system.h rename to src/bin/system.h diff --git a/src/ui.c b/src/bin/ui.c similarity index 99% rename from src/ui.c rename to src/bin/ui.c index ef545e5..3688da8 100644 --- a/src/ui.c +++ b/src/bin/ui.c @@ -386,6 +386,7 @@ _tab_cpu_update(Ui *ui, results_t *results) frame = elm_frame_add(box); evas_object_size_hint_align_set(frame, EVAS_HINT_FILL, 0); evas_object_size_hint_weight_set(frame, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + if (i == 0 && results->temperature != INVALID_TEMP) elm_object_text_set(frame, eina_slstr_printf("CPU %d (%d °C)", i, results->temperature)); else diff --git a/src/ui.h b/src/bin/ui.h similarity index 100% rename from src/ui.h rename to src/bin/ui.h diff --git a/src/meson.build b/src/meson.build index e793f52..2ca5545 100644 --- a/src/meson.build +++ b/src/meson.build @@ -1,9 +1 @@ -executable('evisum', [ - 'disks.c', 'disks.h', - 'process.c', 'process.h', - 'system.c', 'system.h', - 'ui.c', 'ui.h', - 'main.c'], - dependencies : deps, - gui_app : true, - install : true) +subdir('bin') --
[EGIT] [apps/terminology] master 01/01: Merge branch 'terminology-1.6'
billiob pushed a commit to branch master. http://git.enlightenment.org/apps/terminology.git/commit/?id=20b656d1f43130ad49af0abd52f2fc8f222f8a03 commit 20b656d1f43130ad49af0abd52f2fc8f222f8a03 Merge: 0ca3ba3 b76bbbe Author: Boris Faure Date: Wed Dec 4 23:16:30 2019 +0100 Merge branch 'terminology-1.6' src/bin/sb.c | 13 +- src/bin/termpty.c | 137 -- src/bin/termpty.h | 5 -- src/bin/tyfuzz.c | 17 --- 4 files changed, 103 insertions(+), 69 deletions(-) --
[EGIT] [apps/terminology] terminology-1.6 02/03: sb: when skipping buffer on the left and the buffer is empty, remove gap
billiob pushed a commit to branch terminology-1.6. http://git.enlightenment.org/apps/terminology.git/commit/?id=e1f3a4d486f66eb85ef915809aa8a0a8878491f6 commit e1f3a4d486f66eb85ef915809aa8a0a8878491f6 Author: Boris Faure Date: Wed Dec 4 23:09:19 2019 +0100 sb: when skipping buffer on the left and the buffer is empty, remove gap --- src/bin/sb.c | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/bin/sb.c b/src/bin/sb.c index a0dd9e8..f52f9d4 100644 --- a/src/bin/sb.c +++ b/src/bin/sb.c @@ -108,8 +108,17 @@ void ty_sb_lskip(struct ty_sb *sb, int len) { sb->len -= len; - sb->gap += len; - sb->buf += len; + if (sb->len) + { +sb->gap += len; +sb->buf += len; + } + else + { +/* buffer is empty, get rid of gap */ +sb->buf -= sb->gap; +sb->gap = 0; + } } void --
[EGIT] [apps/terminology] terminology-1.6 01/03: tyfuzz: instead of writing to /dev/null, just do not write
billiob pushed a commit to branch terminology-1.6. http://git.enlightenment.org/apps/terminology.git/commit/?id=6bfd508a5887273b5b68a4d1bb973ed1bf4201e2 commit 6bfd508a5887273b5b68a4d1bb973ed1bf4201e2 Author: Boris Faure Date: Wed Dec 4 21:44:37 2019 +0100 tyfuzz: instead of writing to /dev/null, just do not write --- src/bin/termpty.c | 2 +- src/bin/termpty.h | 3 --- src/bin/tyfuzz.c | 7 --- 3 files changed, 1 insertion(+), 11 deletions(-) diff --git a/src/bin/termpty.c b/src/bin/termpty.c index 61f78cb..ccc05c5 100644 --- a/src/bin/termpty.c +++ b/src/bin/termpty.c @@ -1256,7 +1256,7 @@ termpty_write(Termpty *ty, const char *input, int len) #else int fd = ty->fd; #if defined(ENABLE_FUZZING) - fd = ty->fd_dev_null; + return; #endif if (fd < 0) return; if (write(fd, input, len) < 0) diff --git a/src/bin/termpty.h b/src/bin/termpty.h index ca1605c..b892051 100644 --- a/src/bin/termpty.h +++ b/src/bin/termpty.h @@ -170,9 +170,6 @@ struct _Termpty int fd, slavefd; #if defined(ENABLE_TESTS) struct ty_sb write_buffer; -#endif -#if defined(ENABLE_FUZZING) - int fd_dev_null; #endif struct { int curid; diff --git a/src/bin/tyfuzz.c b/src/bin/tyfuzz.c index 0b4f00b..8272b4a 100644 --- a/src/bin/tyfuzz.c +++ b/src/bin/tyfuzz.c @@ -263,10 +263,6 @@ _termpty_init(Termpty *ty, Config *config) assert(ty->screen2); ty->circular_offset = 0; ty->fd = STDIN_FILENO; -#if defined(ENABLE_FUZZING) - ty->fd_dev_null = open("/dev/null", O_WRONLY|O_APPEND); - assert(ty->fd_dev_null >= 0); -#endif ty->hl.bitmap = calloc(1, HL_LINKS_MAX / 8); /* bit map for 1 << 16 elements */ assert(ty->hl.bitmap); /* Mark id 0 as set */ @@ -281,9 +277,6 @@ _termpty_shutdown(Termpty *ty) #if defined(ENABLE_TESTS) ty_sb_free(>write_buffer); #endif -#if defined(ENABLE_FUZZING) - close(ty->fd_dev_null); -#endif } int --
[EGIT] [apps/evisum] master 01/01: FIX: Fix crash when clicking on "empty" PID
netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=920b61ee821806a379abba845fb4c10581c45cd0 commit 920b61ee821806a379abba845fb4c10581c45cd0 Author: Alastair Poole Date: Wed Dec 4 20:36:38 2019 + FIX: Fix crash when clicking on "empty" PID This CAN happen. Avoid a crash here. --- .gitignore | 2 ++ VERSION| 2 +- src/ui.c | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore new file mode 100644 index 000..1181d07 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +build/* +build diff --git a/VERSION b/VERSION index 53a75d6..f2b3082 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.2.6 +0.3.0-beta diff --git a/src/ui.c b/src/ui.c index 5fdac0b..ef545e5 100644 --- a/src/ui.c +++ b/src/ui.c @@ -1181,7 +1181,7 @@ _entry_pid_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info return; text = evas_textblock_cursor_paragraph_text_get(pos); - if (!text) + if (!text || !text[0]) return; pid_text = strdup(text); --
[EGIT] [core/efl] master 05/06: exotic: remove left-overs from Exotic support
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d0f69cf2e2771c2a7895de0a2a437110783cc8dc commit d0f69cf2e2771c2a7895de0a2a437110783cc8dc Author: Stefan Schmidt Date: Thu Nov 28 09:59:41 2019 +0100 exotic: remove left-overs from Exotic support This seems to have been gone a long time ago and only references left that have not been disturbing the build. Time to clean up! Signed-off-by: Stefan Schmidt Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D10793 --- header_checks/meson.build| 1 - src/bin/ecore_evas/ecore_evas_convert.c | 2 +- src/lib/ecore/Ecore.h| 4 +--- src/lib/ecore/Ecore_Common.h | 12 ++-- src/lib/ecore/Efl_Core.h | 4 +--- src/lib/ecore/ecore.c| 4 src/lib/ecore/ecore_getopt.c | 4 src/lib/ecore/ecore_pipe.c | 4 src/lib/ecore/ecore_private.h| 2 +- src/lib/ecore/ecore_time.c | 6 +++--- src/lib/ecore_con/efl_net_ssl_conn-openssl.c | 4 src/lib/eina/eina_evlog.c| 6 +++--- src/lib/eina/eina_module.c | 4 src/lib/elementary/Efl_Ui.h | 4 +--- src/lib/embryo/embryo_amx.c | 4 src/lib/embryo/embryo_str.c | 4 src/lib/embryo/embryo_time.c | 4 src/lib/eo/eo.c | 2 +- src/lib/evas/include/evas_common_private.h | 4 19 files changed, 18 insertions(+), 61 deletions(-) diff --git a/header_checks/meson.build b/header_checks/meson.build index c83f48b897..3aaf3776c6 100644 --- a/header_checks/meson.build +++ b/header_checks/meson.build @@ -48,7 +48,6 @@ header_checks = [ 'sys/resource.h', 'sys/times.h', 'longinfo.h', - 'exotic.h', 'ieeefp.h', 'node/uv.h', 'sys/timerfd.h', diff --git a/src/bin/ecore_evas/ecore_evas_convert.c b/src/bin/ecore_evas/ecore_evas_convert.c index 4ec1cabbf1..8b4f19ab2f 100644 --- a/src/bin/ecore_evas/ecore_evas_convert.c +++ b/src/bin/ecore_evas/ecore_evas_convert.c @@ -8,7 +8,7 @@ #include #include -#if defined(_WIN32) || defined(EXOTIC_NO_SIGNAL) +#if defined(_WIN32) # define NO_SIGNAL #else # include diff --git a/src/lib/ecore/Ecore.h b/src/lib/ecore/Ecore.h index cfc6dd7660..7818faf907 100644 --- a/src/lib/ecore/Ecore.h +++ b/src/lib/ecore/Ecore.h @@ -315,9 +315,7 @@ # include #else # include -# if !defined (EXOTIC_NO_SIGNAL) -# include -# endif +# include #endif #include diff --git a/src/lib/ecore/Ecore_Common.h b/src/lib/ecore/Ecore_Common.h index 8f1a99bc04..443a05880c 100644 --- a/src/lib/ecore/Ecore_Common.h +++ b/src/lib/ecore/Ecore_Common.h @@ -611,7 +611,7 @@ struct _Ecore_Event_Signal_User int number; /**< The signal number. Either 1 or 2 */ void *ext_data; /**< Extension data - not used */ -#if !defined (_WIN32) && !defined (__lv2ppu__) && !defined (EXOTIC_NO_SIGNAL) +#if !defined (_WIN32) && !defined (__lv2ppu__) siginfo_t data; /**< Signal info */ #endif }; @@ -624,7 +624,7 @@ struct _Ecore_Event_Signal_Hup { void *ext_data; /**< Extension data - not used */ -#if !defined (_WIN32) && !defined (__lv2ppu__) && !defined (EXOTIC_NO_SIGNAL) +#if !defined (_WIN32) && !defined (__lv2ppu__) siginfo_t data; /**< Signal info */ #endif }; @@ -640,7 +640,7 @@ struct _Ecore_Event_Signal_Exit Eina_Bool terminate : 1; /**< Set if the exit request was a terminate signal */ void *ext_data; /**< Extension data - not used */ -#if !defined (_WIN32) && !defined (__lv2ppu__) && !defined (EXOTIC_NO_SIGNAL) +#if !defined (_WIN32) && !defined (__lv2ppu__) siginfo_t data; /**< Signal info */ #endif }; @@ -653,7 +653,7 @@ struct _Ecore_Event_Signal_Power { void *ext_data; /**< Extension data - not used */ -#if !defined (_WIN32) && !defined (__lv2ppu__) && !defined (EXOTIC_NO_SIGNAL) +#if !defined (_WIN32) && !defined (__lv2ppu__) siginfo_t data; /**< Signal info */ #endif }; @@ -666,7 +666,7 @@ struct _Ecore_Event_Signal_Realtime { int num; /**< The realtime signal's number */ -#if !defined (_WIN32) && !defined (__lv2ppu__) && !defined (EXOTIC_NO_SIGNAL) +#if !defined (_WIN32) && !defined (__lv2ppu__) siginfo_t data; /**< Signal info */ #endif }; @@ -1071,7 +1071,7 @@ struct _Ecore_Exe_Event_Del Eina_Bool exited: 1; /**< Set to 1 if the process exited of its own accord */ Eina_Bool signalled : 1; /**< Set to 1 if the process exited due to uncaught signal */ void *ext_data; /**< Extension data - not used */ -#if !defined (_WIN32) && !defined (__lv2ppu__) && !defined (EXOTIC_NO_SIGNAL) +#if !defined (_WIN32) && !defined (__lv2ppu__) siginfo_t data; /**< Signal info */ #endif }; diff --git a/src/lib/ecore/Efl_Core.h
[EGIT] [core/efl] master 03/06: emotion & evas: remove gstreamer 0.10 support
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=b8dc80c144fec54a521987535c57b995748ccece commit b8dc80c144fec54a521987535c57b995748ccece Author: Stefan Schmidt Date: Wed Oct 30 17:09:20 2019 +0100 emotion & evas: remove gstreamer 0.10 support We have Gstreamer 1.x support for a long time already. We used to keep this around as fallback. By now Linux distributions start to actually no longer ship the Gstreamer 0.10.x packages and upstream has not seen a release in in 5 years. Time to remove it on our side as well. Signed-off-by: Stefan Schmidt Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D10779 --- .ci/ci-configure.sh |6 +- README|2 +- meson_options.txt |4 +- src/generic/evas/gst/main_0_10.c | 281 --- src/generic/evas/gst/meson.build | 10 +- src/lib/emotion/emotion_modules.c |3 - src/modules/emotion/gstreamer/emotion_alloc.c | 90 - src/modules/emotion/gstreamer/emotion_convert.c | 251 --- src/modules/emotion/gstreamer/emotion_fakeeos.c | 70 - src/modules/emotion/gstreamer/emotion_gstreamer.c | 2018 - src/modules/emotion/gstreamer/emotion_gstreamer.h | 352 src/modules/emotion/gstreamer/emotion_sink.c | 1461 --- src/modules/emotion/gstreamer/meson.build | 18 - src/modules/emotion/meson.build |1 - 14 files changed, 7 insertions(+), 4560 deletions(-) diff --git a/.ci/ci-configure.sh b/.ci/ci-configure.sh index 88c7f414e3..06478d1960 100755 --- a/.ci/ci-configure.sh +++ b/.ci/ci-configure.sh @@ -19,7 +19,7 @@ if [ "$DISTRO" != "" ] ; then # - RPM fusion repo for xine and libvlc ENABLED_LINUX_COPTS=" -Dfb=true -Dsdl=true -Dbuffer=true -Dbuild-id=travis-build \ -Ddebug-threads=true -Dglib=true -Dg-mainloop=true -Dxpresent=true -Dxgesture=false -Dxinput22=true \ - -Devas-loaders-disabler=json -Decore-imf-loaders-disabler= -Demotion-loaders-disabler=gstreamer,libvlc,xine \ + -Devas-loaders-disabler=json -Decore-imf-loaders-disabler= -Demotion-loaders-disabler=libvlc,xine \ -Demotion-generic-loaders-disabler=vlc -Dharfbuzz=true -Dpixman=true -Dhyphen=true \ -Dvnc-server=true -Dbindings=luajit -Delogind=false -Dinstall-eo-files=true -Dphysics=true" @@ -29,7 +29,7 @@ if [ "$DISTRO" != "" ] ; then -Dcrypto=gnutls -Dglib=false -Dgstreamer=false -Dsystemd=false -Dpulseaudio=false \ -Dnetwork-backend=connman -Dxinput2=false -Dtslib=false \ -Devas-loaders-disabler=gst,pdf,ps,raw,svg,xcf,bmp,dds,eet,generic,gif,ico,jp2k,json,pmaps,psd,tga,tgv,tiff,wbmp,webp,xpm \ - -Decore-imf-loaders-disabler=xim,ibus,scim -Demotion-loaders-disabler=gstreamer,gstreamer1,libvlc,xine \ + -Decore-imf-loaders-disabler=xim,ibus,scim -Demotion-loaders-disabler=gstreamer1,libvlc,xine \ -Demotion-generic-loaders-disabler=vlc -Dfribidi=false -Dfontconfig=false \ -Dedje-sound-and-video=false -Dembedded-lz4=false -Dlibmount=false -Dv4l2=false \ -Delua=true -Dnls=false -Dbindings= -Dlua-interpreter=luajit -Dnative-arch-optimization=false" @@ -109,6 +109,6 @@ else export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig:/usr/local/Cellar/libffi/$LIBFFI_VER/lib/pkgconfig" export CC="ccache gcc" travis_fold meson meson - mkdir build && meson build -Dopengl=full -Decore-imf-loaders-disabler=scim,ibus -Dx11=false -Davahi=false -Dbindings=luajit -Deeze=false -Dsystemd=false -Dnls=false -Dcocoa=true -Demotion-loaders-disabler=gstreamer,gstreamer1,libvlc,xine + mkdir build && meson build -Dopengl=full -Decore-imf-loaders-disabler=scim,ibus -Dx11=false -Davahi=false -Dbindings=luajit -Deeze=false -Dsystemd=false -Dnls=false -Dcocoa=true -Demotion-loaders-disabler=gstreamer1,libvlc,xine travis_endfold meson fi diff --git a/README b/README index 5fd277ede7..83ef671d29 100644 --- a/README +++ b/README @@ -426,7 +426,7 @@ Required by default: * bullet * libpng * libjpeg - * gstreamer (1.x, 0.10 support optional. Ensure all codecs you want are installed.) + * gstreamer (Ensure all codecs you want are installed.) * zlib * luajit (lua 5.1 or 5.2 support optional) * libtiff diff --git a/meson_options.txt b/meson_options.txt index 784bdf9a27..be7f8addad 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -209,8 +209,8 @@ option('ecore-imf-loaders-disabler', option('emotion-loaders-disabler', type : 'array', description : 'List of video back-ends to disable in efl', - choices : ['gstreamer', 'gstreamer1', 'libvlc', 'xine'], - value : ['gstreamer', 'libvlc', 'xine'] + choices : ['gstreamer1', 'libvlc', 'xine'], + value : ['libvlc', 'xine'] ) option('emotion-generic-loaders-disabler', diff --git a/src/generic/evas/gst/main_0_10.c
[EGIT] [core/efl] master 02/06: esacpe: remove library from tree
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f3d9b8ee703621cfbb52a03d346335148318af7a commit f3d9b8ee703621cfbb52a03d346335148318af7a Author: Stefan Schmidt Date: Fri Nov 1 09:35:09 2019 +0100 esacpe: remove library from tree This has not been used for a while and is not even buildable after our switch to meson. It was a niche to start with given that it needed the PS3 OS to run on. I asked for any remaining users at EDD and on the list but heard nothing. Time to remove. Signed-off-by: Stefan Schmidt Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D10778 --- COMPLIANCE | 4 +- README | 10 -- doc/main.dox | 6 - old/README.escape| 4 - src/lib/ecore/ecore_exe_ps3.c| 20 --- src/lib/ecore/ecore_pipe.c | 4 - src/lib/ecore_con/ecore_con_url_curl.c | 4 - src/lib/ecore_con/efl_net_ssl_conn-openssl.c | 4 - src/lib/ecore_file/ecore_file_private.h | 4 - src/lib/eina/eina_counter.c | 4 - src/lib/eina/eina_file.c | 4 - src/lib/eina/eina_file_common.c | 4 - src/lib/eina/eina_module.c | 4 - src/lib/eina/eina_prefix.c | 4 - src/lib/escape/Escape.h | 83 src/lib/escape/escape_libgen.c | 90 - src/lib/escape/escape_libgen.h | 33 - src/lib/escape/escape_mman.c | 67 -- src/lib/escape/escape_unistd.c | 184 --- src/lib/escape/escape_unistd.h | 108 src/lib/escape/sys/mman.h| 180 -- src/lib/evas/include/evas_common_private.h | 4 - 22 files changed, 1 insertion(+), 828 deletions(-) diff --git a/COMPLIANCE b/COMPLIANCE index ecd0c343ec..1df68cfb01 100644 --- a/COMPLIANCE +++ b/COMPLIANCE @@ -39,9 +39,7 @@ pieces of information you will need. Q. Do I need to make the source public of libraries or applications that I build on top of EFL? -A. No, UNLESS you use the escape library. Escape is GPL. This is ONLY -needed for PS3 development, so unless you are doing this, it is not -relevant. +A. No Q. Do I need to provide the source for EFL? A. Yes. In general you do. If you are shipping any of the binaries or diff --git a/README b/README index de08b78e9a..5fd277ede7 100644 --- a/README +++ b/README @@ -365,16 +365,6 @@ their behavior as if they were real physical objects. -**Escape:** - -//GPL v2 license// - -This library is used as a compatibility library to provide missing -libc APIs for porting to the Playstation 3 (PS3) native runtime -environment. - - - **Ethumb:** //LGPL v2 license// diff --git a/doc/main.dox b/doc/main.dox index d9e50bcb79..a0e32886e4 100644 --- a/doc/main.dox +++ b/doc/main.dox @@ -209,12 +209,6 @@ * @brief Microsoft Windows portability layer. */ -/** - * @defgroup Escape Escape - * - * @brief PlayStation3 portability layer. - */ - /** * @defgroup Ecore Ecore * diff --git a/old/README.escape b/old/README.escape deleted file mode 100644 index d45099f00d..00 --- a/old/README.escape +++ /dev/null @@ -1,4 +0,0 @@ - The Escape library is a library that acts implements some of the missing - function from the PS3 GameOS system that are needed for the proper - functioning of the EFL. - diff --git a/src/lib/ecore/ecore_exe_ps3.c b/src/lib/ecore/ecore_exe_ps3.c deleted file mode 100644 index 1ef1e81fcb..00 --- a/src/lib/ecore/ecore_exe_ps3.c +++ /dev/null @@ -1,20 +0,0 @@ -#ifdef HAVE_CONFIG_H -# include -#endif - -#ifdef HAVE_ESCAPE -# include -#endif - -#include "Ecore.h" -#include "ecore_private.h" - -void -_ecore_exe_init(void) -{ -} - -void -_ecore_exe_shutdown(void) -{ -} diff --git a/src/lib/ecore/ecore_pipe.c b/src/lib/ecore/ecore_pipe.c index d352853c4b..702f19cbca 100644 --- a/src/lib/ecore/ecore_pipe.c +++ b/src/lib/ecore/ecore_pipe.c @@ -26,10 +26,6 @@ # endif #endif -#ifdef HAVE_ESCAPE -# include -#endif - #ifdef HAVE_EXOTIC # include #endif diff --git a/src/lib/ecore_con/ecore_con_url_curl.c b/src/lib/ecore_con/ecore_con_url_curl.c index 4217f914d8..f4fe730cdd 100644 --- a/src/lib/ecore_con/ecore_con_url_curl.c +++ b/src/lib/ecore_con/ecore_con_url_curl.c @@ -12,10 +12,6 @@ # include #endif -#ifdef HAVE_ESCAPE -# include -#endif - #include "Ecore.h" #include "ecore_private.h" #include "Ecore_Con.h" diff --git a/src/lib/ecore_con/efl_net_ssl_conn-openssl.c b/src/lib/ecore_con/efl_net_ssl_conn-openssl.c index 3f88c20237..451fd242ae 100644 --- a/src/lib/ecore_con/efl_net_ssl_conn-openssl.c +++ b/src/lib/ecore_con/efl_net_ssl_conn-openssl.c @@ -21,10 +21,6 @@ # include /* dlsym */ #endif
[EGIT] [core/efl] master 04/06: edje: Add text change signal
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=f86dbae7e3621ce8766a1fc782f4304fde0f45e3 commit f86dbae7e3621ce8766a1fc782f4304fde0f45e3 Author: Subodh Kumar Date: Tue Dec 3 10:56:00 2019 + edje: Add text change signal There is no way to know about text changes in edc. This signal will help developer to know about text changes and do some operation based on that. @feature Co-authored-by: Cedric BAIL Reviewed-by: Cedric BAIL Differential Revision: https://phab.enlightenment.org/D10780 --- src/lib/edje/edje_util.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c index 2acfce3282..f699f835ff 100644 --- a/src/lib/edje/edje_util.c +++ b/src/lib/edje/edje_util.c @@ -2043,6 +2043,8 @@ _edje_object_part_text_raw_generic_set(Edje *ed, Evas_Object *obj, Edje_Real_Par _edje_recalc(ed); if (ed->text_change.func) ed->text_change.func(ed->text_change.data, obj, part); + edje_object_signal_emit(ed->obj, "edje,text,changed", "edje"); + return EINA_TRUE; } --
[EGIT] [core/efl] master 06/06: elm/genlist: trigger pan recalcs in update_job and item del functions
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d8fb0b049ae6a6abbd7daef60de1a7f7c05d5691 commit d8fb0b049ae6a6abbd7daef60de1a7f7c05d5691 Author: Mike Blumenkrantz Date: Wed Nov 27 09:09:27 2019 -0500 elm/genlist: trigger pan recalcs in update_job and item del functions in cases where the pan may change as a result of item size recalcs, it's necessary to ensure that the pan object is recalculated ref D10663 Differential Revision: https://phab.enlightenment.org/D10752 --- src/lib/elementary/elm_genlist.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/lib/elementary/elm_genlist.c b/src/lib/elementary/elm_genlist.c index 65bc5182b5..b84e830545 100644 --- a/src/lib/elementary/elm_genlist.c +++ b/src/lib/elementary/elm_genlist.c @@ -3701,6 +3701,7 @@ _item_block_del(Elm_Gen_Item *it) itb->items = eina_list_remove(itb->items, it); itb->count--; itb->changed = EINA_TRUE; + efl_canvas_group_change(sd->pan_obj); efl_canvas_group_change(sd->obj); if (itb->realized) efl_ui_focus_manager_calc_unregister(itb->sd->obj, EO_OBJ(it)); if (itb->count < 1) @@ -3848,6 +3849,7 @@ _elm_genlist_item_del_serious(Elm_Gen_Item *it) sd->group_items = eina_list_remove(sd->group_items, it); ELM_SAFE_FREE(sd->state, eina_inlist_sorted_state_free); + efl_canvas_group_change(sd->pan_obj); efl_canvas_group_change(sd->obj); ELM_SAFE_FREE(it->item, free); @@ -5546,6 +5548,7 @@ _update_job(void *data) } if (position) { +efl_canvas_group_change(sd->pan_obj); efl_canvas_group_change(sd->obj); } evas_event_thaw(e); --
[EGIT] [core/efl] master 01/06: elementary: small improvement on example migrating them to newer unified API.
cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=003ce06e85ba0f1597a26405ead92f2e01607177 commit 003ce06e85ba0f1597a26405ead92f2e01607177 Author: Cedric BAIL Date: Sat Nov 23 01:09:13 2019 -0800 elementary: small improvement on example migrating them to newer unified API. --- src/examples/elementary/layout_property_bind.c | 46 +- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/src/examples/elementary/layout_property_bind.c b/src/examples/elementary/layout_property_bind.c index f9c5cf979e..8dc68a564a 100644 --- a/src/examples/elementary/layout_property_bind.c +++ b/src/examples/elementary/layout_property_bind.c @@ -27,6 +27,8 @@ struct _Layout_Model_Data }; typedef struct _Layout_Model_Data Layout_Model_Data; +static Evas_Object *win = NULL; + static Eina_Value _wait_for_image(Eo *o EINA_UNUSED, void *data, const Eina_Value v) { @@ -50,22 +52,32 @@ _cleanup_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void } static void -_list_selected_cb(void *data EINA_UNUSED, const Efl_Event *event) +_list_pressed_item_cb(void *data EINA_UNUSED, const Efl_Event *event) { Layout_Model_Data *priv = data; - Eo *child = event->info; - - printf("LIST selected model\n"); - efl_ui_view_model_set(priv->provider, child); + Efl_Ui_Item_Clickable_Pressed *pressed = event->info; + Efl_Ui_Item *item = pressed->item; + Efl_Model *model = efl_ui_view_model_get(item); + + printf("LIST pressed model `%s` from item `%s`.\n", + efl_debug_name_get(model), + efl_debug_name_get(item)); + efl_ui_view_model_set(priv->provider, model); } static void _update_cb(void *data, Evas_Object *obj EINA_UNUSED, void *ev EINA_UNUSED) { Layout_Model_Data *priv = data; + Efl_Model *newone; const char *text = elm_object_text_get(priv->entry); - elm_layout_text_set(priv->label, "default", text); + newone = efl_add(EFL_IO_MODEL_CLASS, win, +efl_io_model_path_set(efl_added, text)); + efl_ui_view_model_set(priv->fileview, newone); + efl_del(priv->model); + priv->model = newone; + } static void @@ -103,7 +115,8 @@ EAPI_MAIN int elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) { Layout_Model_Data *priv; - Evas_Object *win, *panes, *bxr, *genlist; + Evas_Object *panes, *bxr; + Efl_Ui_Factory *factory; Eo *img_factory; char *dirname; @@ -122,16 +135,19 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) if (argv[1] != NULL) dirname = argv[1]; else dirname = EFL_MODEL_TEST_FILENAME_PATH; - priv->model = efl_add_ref(EFL_IO_MODEL_CLASS, win, efl_io_model_path_set(efl_added, dirname)); + priv->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"); - genlist = elm_genlist_add(win); - priv->fileview = efl_add_ref(ELM_VIEW_LIST_CLASS, win, elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_NONE, NULL)); - elm_view_list_property_connect(priv->fileview, "filename", "elm.text"); - elm_view_list_model_set(priv->fileview, priv->model); - _widget_init(genlist); - elm_object_part_content_set(panes, "left", genlist); + priv->fileview = efl_add(EFL_UI_LIST_VIEW_CLASS, panes, +efl_ui_collection_view_factory_set(efl_added, factory), +efl_ui_view_model_set(efl_added, priv->model)); + _widget_init(priv->fileview); + elm_object_part_content_set(panes, "left", priv->fileview); elm_panes_content_left_size_set(panes, 0.3); - efl_event_callback_add(priv->fileview, ELM_VIEW_LIST_EVENT_MODEL_SELECTED, _list_selected_cb, priv); + efl_event_callback_add(priv->fileview, EFL_UI_EVENT_ITEM_PRESSED, _list_pressed_item_cb, priv); bxr = elm_box_add(win); priv->bxr = bxr; --
[EGIT] [apps/evisum] master 01/01: Fix accidentally added file.
netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=9026027b4780d7256925b1ce3fc444e7d59f8593 commit 9026027b4780d7256925b1ce3fc444e7d59f8593 Author: Alastair Poole Date: Wed Dec 4 18:27:50 2019 + Fix accidentally added file. --- data/desktop/.meson.build.swp | Bin 12288 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/data/desktop/.meson.build.swp b/data/desktop/.meson.build.swp deleted file mode 100644 index c0d8057..000 Binary files a/data/desktop/.meson.build.swp and /dev/null differ --
[EGIT] [apps/evisum] master 01/01: README: Update to reflect meson build system.
netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=2385de7edbbad446a756e9749eee3efd9b5a57f1 commit 2385de7edbbad446a756e9749eee3efd9b5a57f1 Author: Alastair Poole Date: Wed Dec 4 18:15:40 2019 + README: Update to reflect meson build system. --- README.md | 21 + 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 0ba3bed..0662b97 100644 --- a/README.md +++ b/README.md @@ -5,30 +5,21 @@ System Information (EFL) This is a process monitor and system monitor for Linux, macOS, FreeBSD, DragonFlyBSD and OpenBSD. -Includes 'tingle' a command-line utility for displaying sensor information. - REQUIREMENTS: -An installation of EFL (v1.19.0+). Remember to set your PKG_CONFIG_PATH environment -variable accordingly. For example if EFL is installed in /opt: +An installation of EFL (v1.19.0+). Remember to set your PKG_CONFIG_PATH environment variable accordingly. For example if EFL is installed in /opt: export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/opt/libdata/pkgconfig" BUILD: -$ make (or gmake) - -INSTALL (default PREFIX is /usr/local): - -$ make install +$ meson build -or as an example: +$ ninja -C build -$ sudo make PREFIX=/usr install +INSTALL: -or even: - -$ doas make PREFIX=/opt install +$ ninja -C build install NOTES @@ -38,5 +29,3 @@ respectively. The plan is to rewrite the whole program to log system information over time to disk so we can do nice things with E and displaying system information (not duplicating loads of code). - -For information on tingle, see src/tingle/README. --
[EGIT] [apps/evisum] master 01/01: Fix small issue
netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=08752b12698cbdb0d3d0f928a150782d00dd93ca commit 08752b12698cbdb0d3d0f928a150782d00dd93ca Author: Alastair Poole Date: Wed Dec 4 17:48:58 2019 + Fix small issue --- src/meson.build | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/meson.build b/src/meson.build index 80f5ef4..e793f52 100644 --- a/src/meson.build +++ b/src/meson.build @@ -7,5 +7,3 @@ executable('evisum', [ dependencies : deps, gui_app : true, install : true) - -subdir('tingle') --
[EGIT] [apps/evisum] master 01/01: meson: Use Meson over Make
netstar pushed a commit to branch master. http://git.enlightenment.org/apps/evisum.git/commit/?id=b09db930af12176a857ee172b4830712377fc257 commit b09db930af12176a857ee172b4830712377fc257 Author: Alastair Poole Date: Wed Dec 4 17:47:17 2019 + meson: Use Meson over Make --- data/desktop/.meson.build.swp | Bin 0 -> 12288 bytes data/{ => desktop}/evisum.desktop |0 data/desktop/meson.build |2 + data/{ => icons}/evisum.png | Bin data/icons/meson.build|2 + data/meson.build |2 + makefile | 39 - meson.build | 17 + src/makefile | 27 - src/meson.build | 11 + src/tingle/README | 44 - src/tingle/makefile | 23 - src/tingle/tingle.c | 1734 - src/tingle/tmux.conf | 124 --- src/tingle/volctl | 142 --- 15 files changed, 34 insertions(+), 2133 deletions(-) diff --git a/data/desktop/.meson.build.swp b/data/desktop/.meson.build.swp new file mode 100644 index 000..c0d8057 Binary files /dev/null and b/data/desktop/.meson.build.swp differ diff --git a/data/evisum.desktop b/data/desktop/evisum.desktop similarity index 100% rename from data/evisum.desktop rename to data/desktop/evisum.desktop diff --git a/data/desktop/meson.build b/data/desktop/meson.build new file mode 100644 index 000..a52291c --- /dev/null +++ b/data/desktop/meson.build @@ -0,0 +1,2 @@ +install_data('evisum.desktop', + install_dir: join_paths(dir_data, 'applications')) diff --git a/data/evisum.png b/data/icons/evisum.png similarity index 100% rename from data/evisum.png rename to data/icons/evisum.png diff --git a/data/icons/meson.build b/data/icons/meson.build new file mode 100644 index 000..8829ea1 --- /dev/null +++ b/data/icons/meson.build @@ -0,0 +1,2 @@ +install_data('evisum.png', + install_dir: join_paths(dir_data, 'icons/hicolor/128x128/apps')) diff --git a/data/meson.build b/data/meson.build new file mode 100644 index 000..8a19d38 --- /dev/null +++ b/data/meson.build @@ -0,0 +1,2 @@ +subdir('desktop') +subdir('icons') diff --git a/makefile b/makefile deleted file mode 100644 index 6112f7f..000 --- a/makefile +++ /dev/null @@ -1,39 +0,0 @@ -LIBS= - -PREFIX= /usr/local - -OSNAME := $(shell uname -s) - -ifeq ($(OSNAME), OpenBSD) - LIBS += -lkvm - LDFLAGS += -I/usr/local/include -L/usr/local/lib -L/usr/X11R6/lib -endif - -ifeq ($(OSNAME), FreeBSD) -LDFLAGS += -L/usr/local/lib -endif - -export PKGS = elementary - -export LIBS - -export LDFLAGS - -default: - $(MAKE) -C src - $(MAKE) -C src/tingle - -clean: - $(MAKE) -C src clean - $(MAKE) -C src/tingle clean - -install: - $(MAKE) default - -mkdir -p $(PREFIX)/share/ - -mkdir -p $(PREFIX)/share/applications - -mkdir -p $(PREFIX)/bin - -mkdir -p $(PREFIX)/share/icons/hicolor/512x512/apps - install -m 0644 data/evisum.png $(PREFIX)/share/icons/hicolor/512x512/apps - install -m 0644 data/evisum.desktop $(PREFIX)/share/applications - install -m 0755 evisum $(PREFIX)/bin - install -m 0755 src/tingle/tingle $(PREFIX)/bin diff --git a/meson.build b/meson.build new file mode 100644 index 000..b049ddb --- /dev/null +++ b/meson.build @@ -0,0 +1,17 @@ +project('evisum', 'c', + version: '0.3.0', + meson_version : '>= 0.40.0') + +efl_version = '>= 1.22.0' + +deps = dependency('elementary', version: efl_version) + +# dir locations +dir_prefix = get_option('prefix') +dir_bin= join_paths(dir_prefix, get_option('bindir')) +dir_lib= join_paths(dir_prefix, get_option('libdir')) +dir_data = join_paths(dir_prefix, get_option('datadir')) +dir_locale = join_paths(dir_prefix, get_option('localedir')) + +subdir('src') +subdir('data') diff --git a/src/makefile b/src/makefile deleted file mode 100644 index 0836034..000 --- a/src/makefile +++ /dev/null @@ -1,27 +0,0 @@ -TARGET = ../evisum - -OBJECTS = system.o disks.o process.o ui.o main.o - -default: $(TARGET) - -$(TARGET) : $(OBJECTS) - $(CC) $(OBJECTS) $(shell pkg-config --libs $(PKGS)) $(LIBS) $(LDFLAGS) -o $@ - -main.o: main.c - $(CC) -c $(CFLAGS) $(shell pkg-config --cflags $(PKGS)) main.c -o $@ - -system.o: system.c - $(CC) -c $(CFLAGS) system.c -o $@ - -disks.o: disks.c - $(CC) -c $(CFLAGS) $(shell pkg-config --cflags $(PKGS)) disks.c -o $@ - -process.o: process.c - $(CC) -c $(CFLAGS) $(shell pkg-config --cflags $(PKGS)) process.c -o $@ - -ui.o: ui.c - $(CC) -c $(CFLAGS) $(shell pkg-config --cflags $(PKGS)) ui.c -o $@ - -clean: - -rm $(OBJECTS) - -rm $(TARGET) diff --git a/src/meson.build b/src/meson.build new file mode 100644 index 000..80f5ef4 --- /dev/null +++ b/src/meson.build @@ -0,0 +1,11 @@ +executable('evisum', [ + 'disks.c', 'disks.h', +
[EGIT] [core/efl] master 01/01: code comments: annoying typos
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=b04a7ed4f4d031ef92d028b5fe84ec9150da2e15 commit b04a7ed4f4d031ef92d028b5fe84ec9150da2e15 Author: Xavi Artigas Date: Wed Dec 4 18:22:25 2019 +0100 code comments: annoying typos --- src/lib/elementary/efl_ui_view_model.c | 2 +- src/lib/elementary/efl_ui_view_model.eo | 4 ++-- src/lib/elementary/efl_ui_widget.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/elementary/efl_ui_view_model.c b/src/lib/elementary/efl_ui_view_model.c index 0194e47a87..85e8e33694 100644 --- a/src/lib/elementary/efl_ui_view_model.c +++ b/src/lib/elementary/efl_ui_view_model.c @@ -30,7 +30,7 @@ struct _Efl_Ui_View_Model_Data Eina_Bool child_removed : 1; } propagating; // Boolean to prevent reentrance event emission on the same object Eina_Bool finalized : 1; - Eina_Bool children_bind : 1; // Define if child object should be automatically binded + Eina_Bool children_bind : 1; // Define if child object should be automatically bound }; struct _Efl_Ui_View_Model_Text diff --git a/src/lib/elementary/efl_ui_view_model.eo b/src/lib/elementary/efl_ui_view_model.eo index d5dcdbeaf8..6d07f8d101 100644 --- a/src/lib/elementary/efl_ui_view_model.eo +++ b/src/lib/elementary/efl_ui_view_model.eo @@ -76,8 +76,8 @@ class Efl.Ui.View_Model extends Efl.Composite_Model with the above property name.]] set: EflUiViewModelPropertySet; [[Define the set callback called when the @Efl.Model.property.set is called with the above property name.]] -binded: iterator @move; [[Iterator of property name to bind with this defined property see - @.property_bind.]] +bound: iterator @move; [[Iterator of property name to bind with this defined property see + @.property_bind.]] } return: Eina.Error; } diff --git a/src/lib/elementary/efl_ui_widget.c b/src/lib/elementary/efl_ui_widget.c index 96cecc68c7..370bf4e045 100644 --- a/src/lib/elementary/efl_ui_widget.c +++ b/src/lib/elementary/efl_ui_widget.c @@ -5981,7 +5981,7 @@ _efl_ui_property_bind(Eo *widget, Eo *target, Efl_Ui_Widget_Data *pd, { Efl_Ui_Property_Bound *prop; - // Always check for a model and fetch a provider in case a binded property + // Always check for a model and fetch a provider in case a bound property // is provided by a class down the hierarchy, but they still need to be notified // when a model change _efl_ui_widget_model_register(widget, pd); --
[EGIT] [core/efl] master 01/01: efl_canvas_animation_group: show that playing backwards is also working
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=76fa7184a4a4568dabdd76fa44e287415c18c11f commit 76fa7184a4a4568dabdd76fa44e287415c18c11f Author: Marcel Hollerbach Date: Wed Dec 4 17:45:25 2019 +0100 efl_canvas_animation_group: show that playing backwards is also working Summary: playing backwards is also working, this is simply shown here, the handcrafted backwards animation wasnt showing the correct animation either. Depends on D10799 Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10802 --- src/bin/elementary/test_efl_anim_group_parallel.c | 27 +- .../elementary/test_efl_anim_group_sequential.c| 33 +- 2 files changed, 2 insertions(+), 58 deletions(-) diff --git a/src/bin/elementary/test_efl_anim_group_parallel.c b/src/bin/elementary/test_efl_anim_group_parallel.c index ed319e588c..728c54ea4e 100644 --- a/src/bin/elementary/test_efl_anim_group_parallel.c +++ b/src/bin/elementary/test_efl_anim_group_parallel.c @@ -5,7 +5,6 @@ typedef struct _App_Data { - Efl_Canvas_Animation*parallel_show_anim; Efl_Canvas_Animation*parallel_hide_anim; Elm_Button *button; @@ -49,7 +48,7 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) if (ad->is_btn_visible) { //Create Animation Object from Animation -efl_canvas_object_animation_start(ad->button, ad->parallel_show_anim, 1.0, 0.0); +efl_canvas_object_animation_start(ad->button, ad->parallel_hide_anim, -1.0, 0.0); efl_text_set(obj, "Start Parallel Group Animation to hide button"); } else @@ -88,29 +87,6 @@ test_efl_anim_group_parallel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE evas_object_show(btn); efl_event_callback_array_add(btn, animation_stats_cb(), ad); - //Show Animation - Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); - efl_animation_alpha_set(show_anim, 0.0, 1.0); - - //Rotate from 45 to 0 degrees Animation - Efl_Canvas_Animation *ccw_45_degrees_anim = efl_add(EFL_CANVAS_ANIMATION_ROTATE_CLASS, win); - efl_animation_rotate_set(ccw_45_degrees_anim, 45.0, 0.0, NULL, EINA_VECTOR2(0.5, 0.5)); - - //Scale Animation to zoom out - Efl_Canvas_Animation *scale_half_anim = efl_add(EFL_CANVAS_ANIMATION_SCALE_CLASS, win); - efl_animation_scale_set(scale_half_anim, EINA_VECTOR2(2.0, 2.0), EINA_VECTOR2(1.0, 1.0), NULL, EINA_VECTOR2(0.5, 0.5)); - - //Show Parallel Group Animation - Efl_Canvas_Animation *parallel_show_anim = efl_add(EFL_CANVAS_ANIMATION_GROUP_PARALLEL_CLASS, win); - efl_animation_duration_set(parallel_show_anim, 1.0); - efl_animation_final_state_keep_set(parallel_show_anim, EINA_TRUE); - - //Add animations to group animation - efl_animation_group_animation_add(parallel_show_anim, show_anim); - efl_animation_group_animation_add(parallel_show_anim, ccw_45_degrees_anim); - efl_animation_group_animation_add(parallel_show_anim, scale_half_anim); - - //Hide Animation Efl_Canvas_Animation *hide_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS, win); efl_animation_alpha_set(hide_anim, 1.0, 0.0); @@ -135,7 +111,6 @@ test_efl_anim_group_parallel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSE //Initialize App Data - ad->parallel_show_anim = parallel_show_anim; ad->parallel_hide_anim = parallel_hide_anim; ad->button = btn; diff --git a/src/bin/elementary/test_efl_anim_group_sequential.c b/src/bin/elementary/test_efl_anim_group_sequential.c index 37b4e53434..60b3a836a1 100644 --- a/src/bin/elementary/test_efl_anim_group_sequential.c +++ b/src/bin/elementary/test_efl_anim_group_sequential.c @@ -5,7 +5,6 @@ typedef struct _App_Data { - Efl_Canvas_Animation*sequential_show_anim; Efl_Canvas_Animation*sequential_hide_anim; Elm_Button *button; @@ -49,7 +48,7 @@ _btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED) if (ad->is_btn_visible) { //Create Animation Object from Animation -efl_canvas_object_animation_start(ad->button, ad->sequential_show_anim, 1.0, 0.0); +efl_canvas_object_animation_start(ad->button, ad->sequential_hide_anim, -1.0, 0.0); efl_text_set(obj, "Start Sequential Group Animation to hide button"); } else @@ -111,37 +110,7 @@ test_efl_anim_group_sequential(void *data EINA_UNUSED, Evas_Object *obj EINA_UNU efl_animation_group_animation_add(sequential_hide_anim, scale_double_anim); efl_animation_group_animation_add(sequential_hide_anim, hide_anim); - - /* Animations to show button */ - //Show Animation - Efl_Canvas_Animation *show_anim = efl_add(EFL_CANVAS_ANIMATION_ALPHA_CLASS,
[EGIT] [core/efl] master 01/01: Efl.Canvas.Animation: Rename repeat_count to play_count
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=b179e397d66c29712a7c38254b8c67daa6a77dc0 commit b179e397d66c29712a7c38254b8c67daa6a77dc0 Author: Xavi Artigas Date: Wed Dec 4 17:25:45 2019 +0100 Efl.Canvas.Animation: Rename repeat_count to play_count Summary: play_count is a tad simpler to understand, since it means the TOTAL number of times the animation will play. The default value is now 1, and 0 means INFINITE (instead of -1). This allows removing yet another constant from header files. Depends on D10799 Test Plan: Everything builds and passes tests. Elm_test Animation.Repeat has been adjusted accordingly. Reviewers: bu5hm4n Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10800 --- src/bin/elementary/test_efl_anim_repeat.c | 38 +++--- src/examples/evas/efl-canvas-animation.c | 8 ++--- src/lib/evas/Evas_Common.h | 2 -- src/lib/evas/Evas_Eo.h | 2 -- src/lib/evas/canvas/efl_canvas_animation.c | 15 + src/lib/evas/canvas/efl_canvas_animation.eo| 14 src/lib/evas/canvas/efl_canvas_animation_private.h | 4 +-- src/lib/evas/canvas/efl_canvas_animation_types.eot | 8 +++-- src/lib/evas/canvas/efl_canvas_object_animation.c | 4 +-- 9 files changed, 48 insertions(+), 47 deletions(-) diff --git a/src/bin/elementary/test_efl_anim_repeat.c b/src/bin/elementary/test_efl_anim_repeat.c index 0f72882207..b3dddcd0e3 100644 --- a/src/bin/elementary/test_efl_anim_repeat.c +++ b/src/bin/elementary/test_efl_anim_repeat.c @@ -10,7 +10,7 @@ typedef struct _App_Data Elm_Button *button; Evas_Object *start_btn; - Evas_Object *repeat_count_spin; + Evas_Object *play_count_spin; Evas_Object *repeat_mode_spin; Eina_Bool is_btn_visible; @@ -44,8 +44,8 @@ _anim_changed_cb(void *data, const Efl_Event *event EINA_UNUSED) Efl_Canvas_Animation_Repeat_Mode repeat_mode = _anim_repeat_mode_get(ad->repeat_mode_spin); if (repeat_mode == EFL_CANVAS_ANIMATION_REPEAT_MODE_REVERSE) { - int repeat_count = elm_spinner_value_get(ad->repeat_count_spin); - if (repeat_count % 2 == 1) + int play_count = elm_spinner_value_get(ad->play_count_spin); + if (play_count % 2 == 0) { ad->is_btn_visible = !(ad->is_btn_visible); if (ad->is_btn_visible) @@ -54,7 +54,7 @@ _anim_changed_cb(void *data, const Efl_Event *event EINA_UNUSED) elm_object_text_set(ad->start_btn, "Start Alpha Animation from 0.0 to 1.0"); } } -elm_object_disabled_set(ad->repeat_count_spin, EINA_FALSE); +elm_object_disabled_set(ad->play_count_spin, EINA_FALSE); elm_object_disabled_set(ad->repeat_mode_spin, EINA_FALSE); } } @@ -78,16 +78,16 @@ _start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED ad->is_btn_visible = !(ad->is_btn_visible); - int repeat_count = elm_spinner_value_get(ad->repeat_count_spin); - elm_object_disabled_set(ad->repeat_count_spin, EINA_TRUE); + int play_count = elm_spinner_value_get(ad->play_count_spin); + elm_object_disabled_set(ad->play_count_spin, EINA_TRUE); Efl_Canvas_Animation_Repeat_Mode repeat_mode = _anim_repeat_mode_get(ad->repeat_mode_spin); elm_object_disabled_set(ad->repeat_mode_spin, EINA_TRUE); if (ad->is_btn_visible) { -//Set animation repeat count -efl_animation_repeat_count_set(ad->show_anim, repeat_count); +//Set animation play count +efl_animation_play_count_set(ad->show_anim, play_count); //Set animation repeat mode efl_animation_repeat_mode_set(ad->show_anim, repeat_mode); @@ -99,7 +99,7 @@ _start_btn_clicked_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED else { //Set animation repeat count -efl_animation_repeat_count_set(ad->hide_anim, repeat_count); +efl_animation_play_count_set(ad->hide_anim, play_count); //Set animation repeat mode efl_animation_repeat_mode_set(ad->hide_anim, repeat_mode); @@ -158,15 +158,15 @@ test_efl_anim_repeat(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void evas_object_move(start_btn, 100, 300); evas_object_show(start_btn); - //Spinner to set animation repeat count - Evas_Object *repeat_count_spin = elm_spinner_add(win); - elm_spinner_label_format_set(repeat_count_spin, "Repeat Count: %d"); - elm_spinner_editable_set(repeat_count_spin, EINA_FALSE); - elm_spinner_min_max_set(repeat_count_spin, 0, 3); - elm_spinner_value_set(repeat_count_spin, 0); -
[EGIT] [core/efl] master 01/01: charp: Require mono bindings when using dotnet
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=44b532425915aeaf97637db96053e03b2b97bfa7 commit 44b532425915aeaf97637db96053e03b2b97bfa7 Author: Lauro Moura Date: Wed Nov 6 18:41:13 2019 + charp: Require mono bindings when using dotnet Allow using `-Ddotnet=true` to automatically pull `bindings=mono`. Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10610 --- src/bindings/meson.build | 5 + 1 file changed, 5 insertions(+) diff --git a/src/bindings/meson.build b/src/bindings/meson.build index e6a59d1559..b59e084d8a 100644 --- a/src/bindings/meson.build +++ b/src/bindings/meson.build @@ -2,6 +2,11 @@ bindings = get_option('bindings') bindings_order = ['luajit', 'cxx', 'mono'] +if (get_option('dotnet') and not bindings.contains('mono')) + message('dotnet support requires the C# bindings') + bindings += ['mono'] +endif + if (bindings.contains('cxx') == false and bindings.contains('mono')) subdirs = ['eina_cxx', 'eolian_cxx'] subdir(join_paths('cxx', 'eina_cxx')) --
[EGIT] [core/efl] master 02/09: efl_ui_radio_box: declare stable
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=20699d7f616032f2ec6ccb0972eff2491fd9c538 commit 20699d7f616032f2ec6ccb0972eff2491fd9c538 Author: Marcel Hollerbach Date: Tue Dec 3 14:47:31 2019 +0100 efl_ui_radio_box: declare stable this was forgotten, the task for it (T8026) was even closed. Differential Revision: https://phab.enlightenment.org/D10786 --- src/lib/elementary/efl_ui_radio_box.eo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/elementary/efl_ui_radio_box.eo b/src/lib/elementary/efl_ui_radio_box.eo index e6b2259376..9aa0d87ab2 100644 --- a/src/lib/elementary/efl_ui_radio_box.eo +++ b/src/lib/elementary/efl_ui_radio_box.eo @@ -1,4 +1,4 @@ -class @beta Efl.Ui.Radio_Box extends Efl.Ui.Box composites Efl.Ui.Radio_Group +class Efl.Ui.Radio_Box extends Efl.Ui.Box composites Efl.Ui.Radio_Group { [[A standard @Efl.Ui.Box container which automatically handles grouping of any @Efl.Ui.Radio widget added to it in addition to regular widgets. --
[EGIT] [core/efl] master 05/09: tests/layout: fix theme apply test for layout object
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8729c4b0b5f99e1ca1d4e616a06cad687a08c758 commit 8729c4b0b5f99e1ca1d4e616a06cad687a08c758 Author: Mike Blumenkrantz Date: Tue Nov 26 10:52:31 2019 -0500 tests/layout: fix theme apply test for layout object the group previously used (efl/win/background) no longer exists, and this test never verified that the theme_set call succeeded so this has been failing silently for a long time now we check and verify that the call succeeds in addition to using a valid group Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10739 --- src/tests/elementary/efl_ui_test_layout.c | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/tests/elementary/efl_ui_test_layout.c b/src/tests/elementary/efl_ui_test_layout.c index 5aa64e0688..6a1763f620 100644 --- a/src/tests/elementary/efl_ui_test_layout.c +++ b/src/tests/elementary/efl_ui_test_layout.c @@ -153,15 +153,17 @@ EFL_START_TEST(efl_ui_layout_test_layout_theme) { Evas_Object *win; const char *klass, *group, *style; + Eina_Error err; win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC); Eo *layout = efl_add(EFL_UI_LAYOUT_CLASS, win, - efl_ui_layout_theme_set(efl_added, "win", "background", NULL) + err = efl_ui_layout_theme_set(efl_added, "button", NULL, "anchor") ); + ck_assert_int_eq(err, 0); efl_ui_layout_theme_get(layout, , , ); - ck_assert_str_eq(klass, "win"); - ck_assert_str_eq(group, "background"); - ck_assert(!style); + ck_assert_str_eq(klass, "button"); + ck_assert(!group); + ck_assert_str_eq(style, "anchor"); } EFL_END_TEST --
[EGIT] [core/efl] master 01/09: efl_ui_mutli_selectable: stabelize interfaces
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=655472d9c9afd0ce27b53410b4c17cce90e9306b commit 655472d9c9afd0ce27b53410b4c17cce90e9306b Author: Marcel Hollerbach Date: Mon Nov 25 13:33:44 2019 +0100 efl_ui_mutli_selectable: stabelize interfaces these classes are after a long naming discussion stable. fixes T7871 fixes T8265 fixes T7922 Reviewed-by: Daniel Kolesa Differential Revision: https://phab.enlightenment.org/D10734 --- src/lib/elementary/efl_ui.eot | 2 +- src/lib/elementary/efl_ui_multi_selectable.eo | 2 +- src/lib/elementary/efl_ui_multi_selectable_index_range.eo | 2 +- src/lib/elementary/efl_ui_multi_selectable_object_range.eo | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/elementary/efl_ui.eot b/src/lib/elementary/efl_ui.eot index 3c186c913e..6b0b10eff5 100644 --- a/src/lib/elementary/efl_ui.eot +++ b/src/lib/elementary/efl_ui.eot @@ -88,7 +88,7 @@ enum @beta Efl.Ui.Widget_Orientation_Mode not change according to the window or screen orientation.]] } -enum @beta Efl.Ui.Select_Mode { +enum Efl.Ui.Select_Mode { [[Type of multi selectable object.]] single, [[Only single child is selected. If a child is selected, previous selected child will be unselected.]] diff --git a/src/lib/elementary/efl_ui_multi_selectable.eo b/src/lib/elementary/efl_ui_multi_selectable.eo index c5237c8118..57e5389386 100644 --- a/src/lib/elementary/efl_ui_multi_selectable.eo +++ b/src/lib/elementary/efl_ui_multi_selectable.eo @@ -1,6 +1,6 @@ import efl_ui; -interface @beta Efl.Ui.Multi_Selectable extends Efl.Ui.Single_Selectable +interface Efl.Ui.Multi_Selectable extends Efl.Ui.Single_Selectable { [[Interface for getting access to a range of selected items. diff --git a/src/lib/elementary/efl_ui_multi_selectable_index_range.eo b/src/lib/elementary/efl_ui_multi_selectable_index_range.eo index 39747ab8b4..dce9a4e847 100644 --- a/src/lib/elementary/efl_ui_multi_selectable_index_range.eo +++ b/src/lib/elementary/efl_ui_multi_selectable_index_range.eo @@ -1,6 +1,6 @@ import efl_ui; -interface @beta Efl.Ui.Multi_Selectable_Index_Range extends Efl.Ui.Multi_Selectable +interface Efl.Ui.Multi_Selectable_Index_Range extends Efl.Ui.Multi_Selectable { [[Interface for getting access to a range of selected items through their indices. diff --git a/src/lib/elementary/efl_ui_multi_selectable_object_range.eo b/src/lib/elementary/efl_ui_multi_selectable_object_range.eo index f88beb9efa..889afe10f9 100644 --- a/src/lib/elementary/efl_ui_multi_selectable_object_range.eo +++ b/src/lib/elementary/efl_ui_multi_selectable_object_range.eo @@ -1,6 +1,6 @@ import efl_ui; -interface @beta Efl.Ui.Multi_Selectable_Object_Range extends Efl.Ui.Multi_Selectable +interface Efl.Ui.Multi_Selectable_Object_Range extends Efl.Ui.Multi_Selectable { [[Interface for getting access to a range of selected items. --
[EGIT] [core/efl] master 08/09: efl_ui/layout: unconditionally emit theme, changed event for legacy layouts
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=22b005ea8a8f0774de3b34f54eaed9b60e712bc2 commit 22b005ea8a8f0774de3b34f54eaed9b60e712bc2 Author: Mike Blumenkrantz Date: Wed Nov 27 08:12:52 2019 -0500 efl_ui/layout: unconditionally emit theme,changed event for legacy layouts this will automatically be optimized by smart callback internals and fix emission of this event Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10750 --- src/lib/elementary/efl_ui_layout.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/efl_ui_layout.c b/src/lib/elementary/efl_ui_layout.c index e540f4201d..941b5f9512 100644 --- a/src/lib/elementary/efl_ui_layout.c +++ b/src/lib/elementary/efl_ui_layout.c @@ -540,7 +540,9 @@ _efl_ui_layout_theme_internal(Eo *obj, Efl_Ui_Layout_Data *sd, Elm_Widget_Smart_ if (ret != EFL_UI_THEME_APPLY_ERROR_GENERIC) { if (sd->cb_theme_changed) - efl_event_callback_legacy_call(obj, EFL_UI_LAYOUT_EVENT_THEME_CHANGED, NULL); + efl_event_callback_call(obj, EFL_UI_LAYOUT_EVENT_THEME_CHANGED, NULL); +if (elm_widget_is_legacy(obj)) + evas_object_smart_callback_call(obj, "theme,changed", NULL); } if (!_visuals_refresh(obj, sd)) --
[EGIT] [core/efl] master 09/09: tests/layout: add unit test for legacy layout theme, changed signal
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=a8417668bcf17f2df642dadbe4f2699c13756063 commit a8417668bcf17f2df642dadbe4f2699c13756063 Author: JunsuChoi Date: Wed Nov 27 08:23:12 2019 -0500 tests/layout: add unit test for legacy layout theme,changed signal split from D10744 Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10751 --- src/tests/elementary/elm_test_layout.c | 17 + 1 file changed, 17 insertions(+) diff --git a/src/tests/elementary/elm_test_layout.c b/src/tests/elementary/elm_test_layout.c index 7ddffc9345..d08b9cb0d8 100644 --- a/src/tests/elementary/elm_test_layout.c +++ b/src/tests/elementary/elm_test_layout.c @@ -114,10 +114,27 @@ EFL_START_TEST(elm_layout_test_sizing) } EFL_END_TEST +EFL_START_TEST(elm_layout_test_theme_changed_callback) +{ + Evas_Object *win, *ly; + int called = 0; + + win = win_add(NULL, "layout", ELM_WIN_BASIC); + evas_object_show(win); + + ly = elm_button_add(win); + evas_object_smart_callback_add(ly, "theme,changed", event_callback_single_call_int_data, ); + evas_object_show(ly); + elm_object_style_set(ly, "anchor"); + ck_assert_int_eq(called, 1); +} +EFL_END_TEST + void elm_test_layout(TCase *tc) { tcase_add_test(tc, elm_layout_test_legacy_type_check); tcase_add_test(tc, elm_atspi_role_get); tcase_add_test(tc, elm_layout_test_swallows); tcase_add_test(tc, elm_layout_test_sizing); + tcase_add_test(tc, elm_layout_test_theme_changed_callback); } --
[EGIT] [core/efl] master 06/09: tests/layout: validate EFL_UI_LAYOUT_EVENT_THEME_CHANGED emission in theme test
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d54ba9421431912f4b08a843584ac7584a477f1d commit d54ba9421431912f4b08a843584ac7584a477f1d Author: Mike Blumenkrantz Date: Tue Nov 26 10:54:36 2019 -0500 tests/layout: validate EFL_UI_LAYOUT_EVENT_THEME_CHANGED emission in theme test ensure that this callback is emitted exactly one time if the theme is set during construction Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10740 --- src/tests/elementary/efl_ui_test_layout.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/tests/elementary/efl_ui_test_layout.c b/src/tests/elementary/efl_ui_test_layout.c index 6a1763f620..fc7a3b969c 100644 --- a/src/tests/elementary/efl_ui_test_layout.c +++ b/src/tests/elementary/efl_ui_test_layout.c @@ -154,9 +154,11 @@ EFL_START_TEST(efl_ui_layout_test_layout_theme) Evas_Object *win; const char *klass, *group, *style; Eina_Error err; + int called = 0; win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC); Eo *layout = efl_add(EFL_UI_LAYOUT_CLASS, win, + efl_event_callback_add(efl_added, EFL_UI_LAYOUT_EVENT_THEME_CHANGED, (void*)event_callback_single_call_int_data, ), err = efl_ui_layout_theme_set(efl_added, "button", NULL, "anchor") ); ck_assert_int_eq(err, 0); @@ -164,6 +166,7 @@ EFL_START_TEST(efl_ui_layout_test_layout_theme) ck_assert_str_eq(klass, "button"); ck_assert(!group); ck_assert_str_eq(style, "anchor"); + ck_assert_int_eq(called, 1); } EFL_END_TEST --
[EGIT] [core/efl] master 04/09: efl_ui/layout: fix multiple emissions of theme, changed during construction
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=3f7a63149a74abc26822e35530914654d7a60c4f commit 3f7a63149a74abc26822e35530914654d7a60c4f Author: Mike Blumenkrantz Date: Tue Nov 26 10:49:55 2019 -0500 efl_ui/layout: fix multiple emissions of theme,changed during construction in the case where a layout object was created and had a theme manually set with efl_ui_layout_theme_set() during construction, the layout would then call theme_apply() a second time internally during finalize which, if the theme has not changed (as can only be the case if this flag is unset), results in a repeated theme_apply for the existing theme @fix Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10738 --- src/lib/elementary/efl_ui_layout.c | 12 ++-- src/lib/elementary/elm_widget_layout.h | 1 + 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/lib/elementary/efl_ui_layout.c b/src/lib/elementary/efl_ui_layout.c index f4e3c0579f..e540f4201d 100644 --- a/src/lib/elementary/efl_ui_layout.c +++ b/src/lib/elementary/efl_ui_layout.c @@ -557,6 +557,8 @@ _efl_ui_layout_base_efl_ui_widget_theme_apply(Eo *obj, Efl_Ui_Layout_Data *sd) char buf[64]; static unsigned int version = 0; + sd->needs_theme_apply = EINA_FALSE; + theme_apply_ret = efl_ui_widget_theme_apply(efl_super(obj, MY_CLASS)); if (theme_apply_ret == EFL_UI_THEME_APPLY_ERROR_GENERIC) return EFL_UI_THEME_APPLY_ERROR_GENERIC; @@ -2699,6 +2701,7 @@ EOLIAN static Eo * _efl_ui_layout_base_efl_object_constructor(Eo *obj, Efl_Ui_Layout_Data *sd) { sd->obj = obj; + sd->needs_theme_apply = EINA_TRUE; sd->finger_size_multiplier_x = sd->finger_size_multiplier_y = 1; obj = efl_constructor(efl_super(obj, MY_CLASS)); evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks); @@ -2708,12 +2711,17 @@ _efl_ui_layout_base_efl_object_constructor(Eo *obj, Efl_Ui_Layout_Data *sd) } EOLIAN static Efl_Object* -_efl_ui_layout_base_efl_object_finalize(Eo *obj, Efl_Ui_Layout_Data *pd EINA_UNUSED) +_efl_ui_layout_base_efl_object_finalize(Eo *obj, Efl_Ui_Layout_Data *pd) { Eo *eo, *win; ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL); eo = efl_finalize(efl_super(obj, MY_CLASS)); - efl_ui_widget_theme_apply(eo); + if (pd->needs_theme_apply) + { +efl_ui_widget_theme_apply(eo); +/* handle case where subclass does not call into layout */ +pd->needs_theme_apply = EINA_FALSE; + } efl_canvas_group_change(obj); Elm_Layout_Data *ld = efl_data_scope_safe_get(obj, ELM_LAYOUT_MIXIN); diff --git a/src/lib/elementary/elm_widget_layout.h b/src/lib/elementary/elm_widget_layout.h index 839bb06131..69565b6fd9 100644 --- a/src/lib/elementary/elm_widget_layout.h +++ b/src/lib/elementary/elm_widget_layout.h @@ -75,6 +75,7 @@ typedef struct _Efl_Ui_Layout_Data Eina_Bool model_watch : 1; /**< Set to true once we do watch for model change*/ Eina_Bool calc_subobjs : 1; /**< Set to true if group_calc should also handle subobjs during manual calc */ Eina_Bool cb_theme_changed : 1; /**< if theme,changed event subscriber has been added */ + Eina_Bool needs_theme_apply : 1; /**< if theme has not been manually set during construction */ } Efl_Ui_Layout_Data; typedef struct _Elm_Layout_Data --
[EGIT] [core/efl] master 07/09: tests/layout: add explicit test for implicit theme, changed emission
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=d434bee31b5c7165eaecc1d93fb772acc564c95a commit d434bee31b5c7165eaecc1d93fb772acc564c95a Author: Mike Blumenkrantz Date: Tue Nov 26 10:59:21 2019 -0500 tests/layout: add explicit test for implicit theme,changed emission this must be emitted automatically during finalize if theme_set is not directly called during construction Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10741 --- src/tests/elementary/efl_ui_test_layout.c | 23 +++ 1 file changed, 23 insertions(+) diff --git a/src/tests/elementary/efl_ui_test_layout.c b/src/tests/elementary/efl_ui_test_layout.c index fc7a3b969c..387bf9aa68 100644 --- a/src/tests/elementary/efl_ui_test_layout.c +++ b/src/tests/elementary/efl_ui_test_layout.c @@ -149,6 +149,28 @@ EFL_START_TEST(efl_ui_layout_test_layout_force) } EFL_END_TEST +/* private */ +EAPI Eina_Bool elm_widget_theme_klass_set(Evas_Object *obj, const char *name); +EAPI Eina_Bool elm_widget_theme_style_set(Evas_Object *obj, const char *name); + +EFL_START_TEST(efl_ui_layout_test_callback) +{ + Evas_Object *win; + int called = 0; + Eina_Bool klass, style; + + win = win_add(NULL, "layout", EFL_UI_WIN_TYPE_BASIC); + efl_add(EFL_UI_LAYOUT_CLASS, win, + efl_event_callback_add(efl_added, EFL_UI_LAYOUT_EVENT_THEME_CHANGED, (void*)event_callback_single_call_int_data, ), + klass = elm_widget_theme_klass_set(efl_added, "button"), + style = elm_widget_theme_style_set(efl_added, "anchor") + ); + ck_assert_int_eq(klass, 1); + ck_assert_int_eq(style, 1); + ck_assert_int_eq(called, 1); +} +EFL_END_TEST + EFL_START_TEST(efl_ui_layout_test_layout_theme) { Evas_Object *win; @@ -194,5 +216,6 @@ void efl_ui_test_layout(TCase *tc) tcase_add_test(tc, efl_ui_layout_test_layout_force); tcase_add_test(tc, efl_ui_layout_test_layout_theme); tcase_add_test(tc, efl_ui_layout_test_api_ordering); + tcase_add_test(tc, efl_ui_layout_test_callback); tcase_add_test(tc, efl_ui_layout_test_property_bind_provider); } --
[EGIT] [core/efl] master 03/09: efl_ui/layout: fix typo in theme, changed event checking and fix this event
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=e9281cf124b2b973e1a0d97eef1c3d85ee684903 commit e9281cf124b2b973e1a0d97eef1c3d85ee684903 Author: Mike Blumenkrantz Date: Tue Nov 26 10:48:42 2019 -0500 efl_ui/layout: fix typo in theme,changed event checking and fix this event this was a copy/paste error ref 7ad8acc290f078aa9d2bfd32ec15a4e5677ab01f Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10737 --- src/lib/elementary/efl_ui_layout.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/elementary/efl_ui_layout.c b/src/lib/elementary/efl_ui_layout.c index 28e99a1c84..f4e3c0579f 100644 --- a/src/lib/elementary/efl_ui_layout.c +++ b/src/lib/elementary/efl_ui_layout.c @@ -2975,7 +2975,7 @@ _efl_ui_layout_base_theme_rotation_apply(Eo *obj, Efl_Ui_Layout_Data *pd EINA_UN EOLIAN static Eina_Bool _efl_ui_layout_base_efl_object_event_callback_priority_add(Eo *obj, Efl_Ui_Layout_Data *pd, const Efl_Event_Description *desc, Efl_Callback_Priority priority, Efl_Event_Cb func, const void *user_data) { - if (desc == EFL_CANVAS_GROUP_EVENT_MEMBER_ADDED) + if (desc == EFL_UI_LAYOUT_EVENT_THEME_CHANGED) { pd->cb_theme_changed = EINA_TRUE; } @@ -2988,7 +2988,7 @@ _efl_ui_layout_base_efl_object_event_callback_array_priority_add(Eo *obj, Efl_Ui { for (int i = 0; array[i].desc; ++i) { -if (array[i].desc == EFL_CANVAS_GROUP_EVENT_MEMBER_ADDED) +if (array[i].desc == EFL_UI_LAYOUT_EVENT_THEME_CHANGED) { pd->cb_theme_changed = EINA_TRUE; } --
[EGIT] [core/efl] master 01/05: efl_canvas_animation_group: use @property instead of method
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=10b631e7cb94b674446888aabaac09972af4382d commit 10b631e7cb94b674446888aabaac09972af4382d Author: Marcel Hollerbach Date: Wed Dec 4 10:51:04 2019 +0100 efl_canvas_animation_group: use @property instead of method this also refreshes the documentation of all this. Reviewed-by: Xavi Artigas Differential Revision: https://phab.enlightenment.org/D10795 --- src/lib/evas/canvas/efl_canvas_animation_group.eo | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/lib/evas/canvas/efl_canvas_animation_group.eo b/src/lib/evas/canvas/efl_canvas_animation_group.eo index 07daa8f554..7b9f19cf61 100644 --- a/src/lib/evas/canvas/efl_canvas_animation_group.eo +++ b/src/lib/evas/canvas/efl_canvas_animation_group.eo @@ -21,9 +21,12 @@ abstract @beta Efl.Canvas.Animation_Group extends Efl.Canvas.Animation @in animation: Efl.Canvas.Animation; [[Animation to remove from the group.]] } } - animations_get @const { - [[Gets the list of animations currently in the animation group.]] - return: iterator @move; [[List of animations in the group.]] + @property animations { + [[All animations that are currently part of this group.]] + get { } + values { +animations : iterator @move; [[The iterator carrying all animations of this group]] + } } } implements { --
[EGIT] [core/efl] master 02/05: efl_canvas_animation: add a standard value for duration of animations
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=a29be18b5f6f94d8b4e6e7738ced1ae502159fbc commit a29be18b5f6f94d8b4e6e7738ced1ae502159fbc Author: Marcel Hollerbach Date: Wed Dec 4 10:14:09 2019 +0100 efl_canvas_animation: add a standard value for duration of animations before this commit the standard time was 0, which results in no animation played at all. Now its 0.2 and a app that does not like it can adjust it. ref T8436 Reviewed-by: Xavi Artigas Differential Revision: https://phab.enlightenment.org/D10796 --- src/lib/evas/canvas/efl_canvas_animation.c | 22 ++ src/lib/evas/canvas/efl_canvas_animation.eo | 9 + src/tests/evas/efl_canvas_animation.c | 9 + 3 files changed, 40 insertions(+) diff --git a/src/lib/evas/canvas/efl_canvas_animation.c b/src/lib/evas/canvas/efl_canvas_animation.c index 33ffa035ac..772fb41b18 100644 --- a/src/lib/evas/canvas/efl_canvas_animation.c +++ b/src/lib/evas/canvas/efl_canvas_animation.c @@ -2,6 +2,8 @@ #define MY_CLASS EFL_CANVAS_ANIMATION_CLASS +static double _default_animation_time = 0.2; //in seconds + EOLIAN static void _efl_canvas_animation_duration_set(Eo *eo_obj EINA_UNUSED, Efl_Canvas_Animation_Data *pd, @@ -134,4 +136,24 @@ _efl_canvas_animation_efl_playable_seekable_get(const Eo *eo_obj EINA_UNUSED, Ef return EINA_TRUE; } +EOLIAN static Efl_Object* +_efl_canvas_animation_efl_object_constructor(Eo *obj, Efl_Canvas_Animation_Data *pd) +{ + pd->duration = _default_animation_time; + return efl_constructor(efl_super(obj, MY_CLASS)); +} + +EOLIAN static void +_efl_canvas_animation_default_duration_set(double animation_time) +{ + EINA_SAFETY_ON_FALSE_RETURN(animation_time > 0.0); + _default_animation_time = animation_time; +} + +EOLIAN static double +_efl_canvas_animation_default_duration_get(void) +{ + return _default_animation_time; +} + #include "efl_canvas_animation.eo.c" diff --git a/src/lib/evas/canvas/efl_canvas_animation.eo b/src/lib/evas/canvas/efl_canvas_animation.eo index 3640cd2234..a55cf73bbd 100644 --- a/src/lib/evas/canvas/efl_canvas_animation.eo +++ b/src/lib/evas/canvas/efl_canvas_animation.eo @@ -110,8 +110,17 @@ class @beta Efl.Canvas.Animation extends Efl.Object implements Efl.Playable } return: double; [[Final applied progress, after possible adjustments. See @.interpolator.]] } + @property default_duration @static { + [[Duration that will be used by default on all animations unless another value + is set per object using @.duration. + ]] + values { +animation_time : double; [[Default animation duration, in seconds.]] + } + } } implements { + Efl.Object.constructor; Efl.Playable.length { get; } Efl.Playable.seekable { get; } Efl.Playable.playable { get; } diff --git a/src/tests/evas/efl_canvas_animation.c b/src/tests/evas/efl_canvas_animation.c index cef036341c..e7d0b16ff9 100644 --- a/src/tests/evas/efl_canvas_animation.c +++ b/src/tests/evas/efl_canvas_animation.c @@ -34,7 +34,16 @@ EFL_START_TEST(efl_canvas_animation_negative_double_checking) } EFL_END_TEST +EFL_START_TEST(efl_canvas_animation_default_value) +{ + Efl_Canvas_Animation *animation = efl_new(EFL_CANVAS_ANIMATION_CLASS); + + fail_if(efl_animation_duration_get(animation) == 0.0); +} +EFL_END_TEST + void efl_test_canvas_animation(TCase *tc) { tcase_add_test(tc, efl_canvas_animation_negative_double_checking); + tcase_add_test(tc, efl_canvas_animation_default_value); } --
[EGIT] [core/efl] master 03/05: efl_canvas_animation: use floating point infinite instead of macro
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=fc7d398e07af857e67d8e7038f2bc989a9086ee6 commit fc7d398e07af857e67d8e7038f2bc989a9086ee6 Author: Marcel Hollerbach Date: Wed Dec 4 10:20:38 2019 +0100 efl_canvas_animation: use floating point infinite instead of macro the floating point infinite builtin should also work cross languages (so this is better for bindings). ref T8437 Reviewed-by: Xavi Artigas Differential Revision: https://phab.enlightenment.org/D10797 --- src/lib/evas/canvas/efl_canvas_animation.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/lib/evas/canvas/efl_canvas_animation.c b/src/lib/evas/canvas/efl_canvas_animation.c index 772fb41b18..001dca7892 100644 --- a/src/lib/evas/canvas/efl_canvas_animation.c +++ b/src/lib/evas/canvas/efl_canvas_animation.c @@ -1,5 +1,5 @@ #include "efl_canvas_animation_private.h" - +#include #define MY_CLASS EFL_CANVAS_ANIMATION_CLASS static double _default_animation_time = 0.2; //in seconds @@ -117,8 +117,7 @@ _efl_canvas_animation_efl_playable_length_get(const Eo *eo_obj, Efl_Canvas_Anima { if (efl_animation_repeat_count_get(eo_obj) == EFL_ANIMATION_REPEAT_INFINITE) { -//TODO: what's correct? -return (double)EFL_ANIMATION_REPEAT_INFINITE; +return INFINITY; } return (efl_animation_duration_get(eo_obj) * (efl_animation_repeat_count_get(eo_obj) + 1)); --
[EGIT] [core/efl] master 04/05: remove unsued macros
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=752855825ddad2d3f9df11f52280ed11b5038317 commit 752855825ddad2d3f9df11f52280ed11b5038317 Author: Marcel Hollerbach Date: Wed Dec 4 10:23:23 2019 +0100 remove unsued macros Reviewed-by: Xavi Artigas Differential Revision: https://phab.enlightenment.org/D10798 --- src/lib/evas/Evas_Common.h | 3 --- src/lib/evas/Evas_Eo.h | 4 2 files changed, 7 deletions(-) diff --git a/src/lib/evas/Evas_Common.h b/src/lib/evas/Evas_Common.h index 23a481bf80..32cf83b60d 100644 --- a/src/lib/evas/Evas_Common.h +++ b/src/lib/evas/Evas_Common.h @@ -3483,10 +3483,7 @@ typedef Eo Efl_Animation_Group_Sequential; #endif #define EFL_ANIMATION_GROUP_DURATION_NONE -1 -#define EFL_ANIMATION_PLAYER_GROUP_DURATION_NONE -1 - #define EFL_ANIMATION_REPEAT_INFINITE -1 -#define EFL_ANIMATION_PLAYER_REPEAT_INFINITE -1 // The below type are necessary for legacy API and need to be manually kept in sync with .eo file. #ifndef _EFL_INPUT_DEVICE_EO_CLASS_TYPE diff --git a/src/lib/evas/Evas_Eo.h b/src/lib/evas/Evas_Eo.h index 56971d0a14..58a1f01b6c 100644 --- a/src/lib/evas/Evas_Eo.h +++ b/src/lib/evas/Evas_Eo.h @@ -123,11 +123,7 @@ typedef Eo Efl_Canvas_Animation_Group_Sequential; #endif #define EFL_ANIMATION_GROUP_DURATION_NONE -1 -#define EFL_ANIMATION_PLAYER_GROUP_DURATION_NONE -1 - #define EFL_ANIMATION_REPEAT_INFINITE -1 -#define EFL_ANIMATION_PLAYER_REPEAT_INFINITE -1 - struct _Efl_Canvas_Animation_Player_Event_Running { --
[EGIT] [core/efl] master 05/05: efl_canvas_animation_group: remove implicit children behaviour
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=a6c102df1f1cb8cb4c51da7e743d00dea859aa83 commit a6c102df1f1cb8cb4c51da7e743d00dea859aa83 Author: Marcel Hollerbach Date: Wed Dec 4 14:20:43 2019 +0100 efl_canvas_animation_group: remove implicit children behaviour you could set the duration of the group to all children, however, the default behaviour was to not do that. This is however a bit probeblatic, and needs to be more expclicit. If this is needed again, then this can be reintroduced, however, not in this form. ref T8437 Depends on D10798 Reviewed-by: Xavi Artigas Differential Revision: https://phab.enlightenment.org/D10799 --- src/lib/evas/Evas_Common.h | 1 - src/lib/evas/Evas_Eo.h | 1 - src/lib/evas/canvas/efl_canvas_animation_group.c | 16 +++- 3 files changed, 3 insertions(+), 15 deletions(-) diff --git a/src/lib/evas/Evas_Common.h b/src/lib/evas/Evas_Common.h index 32cf83b60d..d7fa681094 100644 --- a/src/lib/evas/Evas_Common.h +++ b/src/lib/evas/Evas_Common.h @@ -3482,7 +3482,6 @@ typedef Eo Efl_Animation_Group_Sequential; #endif -#define EFL_ANIMATION_GROUP_DURATION_NONE -1 #define EFL_ANIMATION_REPEAT_INFINITE -1 // The below type are necessary for legacy API and need to be manually kept in sync with .eo file. diff --git a/src/lib/evas/Evas_Eo.h b/src/lib/evas/Evas_Eo.h index 58a1f01b6c..f156ec50a8 100644 --- a/src/lib/evas/Evas_Eo.h +++ b/src/lib/evas/Evas_Eo.h @@ -122,7 +122,6 @@ typedef Eo Efl_Canvas_Animation_Group_Sequential; #endif -#define EFL_ANIMATION_GROUP_DURATION_NONE -1 #define EFL_ANIMATION_REPEAT_INFINITE -1 struct _Efl_Canvas_Animation_Player_Event_Running diff --git a/src/lib/evas/canvas/efl_canvas_animation_group.c b/src/lib/evas/canvas/efl_canvas_animation_group.c index 8673efd01e..b6a771501f 100644 --- a/src/lib/evas/canvas/efl_canvas_animation_group.c +++ b/src/lib/evas/canvas/efl_canvas_animation_group.c @@ -8,10 +8,7 @@ _efl_canvas_animation_group_animation_add(Eo *eo_obj, if (!animation) return; double duration = efl_animation_duration_get(efl_super(eo_obj, MY_CLASS)); - /* if group animation duration is available value, then the duration is -* propagated to its child. */ - if (duration != EFL_ANIMATION_GROUP_DURATION_NONE) - efl_animation_duration_set(animation, duration); + efl_animation_duration_set(animation, duration); Eina_Bool keep_final_state = efl_animation_final_state_keep_get(eo_obj); efl_animation_final_state_keep_set(animation, keep_final_state); @@ -53,9 +50,8 @@ _efl_canvas_animation_group_efl_canvas_animation_duration_set(Eo *eo_obj, Efl_Canvas_Animation_Group_Data *pd, double duration) { - if (duration == EFL_ANIMATION_GROUP_DURATION_NONE) goto end; - - if (duration < 0.0) return; + efl_animation_duration_set(efl_super(eo_obj, MY_CLASS), duration); + duration = efl_animation_duration_get(eo_obj); Eina_List *l; Efl_Canvas_Animation *anim; @@ -63,9 +59,6 @@ _efl_canvas_animation_group_efl_canvas_animation_duration_set(Eo *eo_obj, { efl_animation_duration_set(anim, duration); } - -end: - efl_animation_duration_set(efl_super(eo_obj, MY_CLASS), duration); } EOLIAN static void @@ -106,9 +99,6 @@ _efl_canvas_animation_group_efl_object_constructor(Eo *eo_obj, pd->animations = NULL; - //group animation does not affect its child duration by default. - efl_animation_duration_set(eo_obj, EFL_ANIMATION_GROUP_DURATION_NONE); - return eo_obj; } --
[EGIT] [core/efl] efl-1.23 01/02: eolian: account for entire inheritance trees when compositing
q66 pushed a commit to branch efl-1.23. http://git.enlightenment.org/core/efl.git/commit/?id=387947f6b151f5dd65c6c38d99e762e612281269 commit 387947f6b151f5dd65c6c38d99e762e612281269 Author: Daniel Kolesa Date: Wed Dec 4 15:30:17 2019 +0100 eolian: account for entire inheritance trees when compositing When a class composites an interface, we need to ignore all of its extends (and extends of those) as well as the main interface when doing API checks, as composites essentially provides a guarantee that this *will* be implemented at runtime, which further extends to the whole inheritance tree of that interface. Fixes T8491. --- src/lib/eolian/database_validate.c | 18 +- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index 4e51718ecd..b1af2185ef 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -1247,6 +1247,17 @@ _add_composite(Eolian_Class *cl, const Eolian_Class *icl, Eina_Hash *ch) } } +static void +_add_implicit_composite(Eolian_Class *icl, Eina_Hash *ch, Eina_Bool try_tree) +{ + eina_hash_set(ch, , icl); + if (!try_tree) + return; + Eina_List *l; + EINA_LIST_FOREACH(icl->extends, l, icl) + _add_implicit_composite(icl, ch, try_tree); +} + static Eina_Bool _db_fill_inherits(Validate_State *vals, Eolian_Class *cl, Eina_Hash *fhash, Eina_Hash *errh) @@ -1325,7 +1336,12 @@ _db_fill_inherits(Validate_State *vals, Eolian_Class *cl, Eina_Hash *fhash, cl->composite = eina_list_append(cl->composite, out_cl); succ = _db_fill_inherits(vals, out_cl, fhash, errh); ++ncomp; -eina_hash_set(ch, _cl, out_cl); +/* for each thing that is composited, we need to add the entire + * inheritance tree of it into composite hash to check, so e.g. + * class A -> composites B -> extends C does not complain about + * A not implementing C + */ +_add_implicit_composite(out_cl, ch, out_cl->type == EOLIAN_CLASS_INTERFACE); } /* parent can be abstract, those are not checked for unimplemented, --
[EGIT] [core/efl] efl-1.23 02/02: eolian: fix a parse bug where composites was treated as implements
q66 pushed a commit to branch efl-1.23. http://git.enlightenment.org/core/efl.git/commit/?id=266f0a57169efe672db44921665a05e73cc0eb58 commit 266f0a57169efe672db44921665a05e73cc0eb58 Author: Daniel Kolesa Date: Wed Dec 4 16:04:19 2019 +0100 eolian: fix a parse bug where composites was treated as implements In the specific case where you had "class A extends B composites C" the correct composites branch was ignored and instead the implements branch was used. This was entirely wrong/an oversight that did not appear until now. Other combinations were handled correctly. --- src/lib/eolian/eo_parser.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/eolian/eo_parser.c b/src/lib/eolian/eo_parser.c index 706d6c1c37..6c45f19907 100644 --- a/src/lib/eolian/eo_parser.c +++ b/src/lib/eolian/eo_parser.c @@ -2301,8 +2301,11 @@ tags_done: { /* regular class can have a parent, but just one */ _inherit_dep(ls, ibuf, EINA_TRUE); + /* followed by composites */ + if (ls->t.kw == KW_composites) +goto noimp_comp; /* if not followed by implements, we're done */ - if ((ls->t.kw != KW_implements) && (ls->t.kw != KW_composites)) + if (ls->t.kw != KW_implements) { eo_lexer_dtor_pop(ls); goto inherit_done; @@ -2314,6 +2317,7 @@ tags_done: while (test_next(ls, ',')); } +noimp_comp: if (ls->t.kw == KW_composites) { if (type == EOLIAN_CLASS_INTERFACE) --
[EGIT] [core/efl] master 01/01: eolian: fix a parse bug where composites was treated as implements
q66 pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c601944a13d63d2b4228aeca1cd680c5d092e58b commit c601944a13d63d2b4228aeca1cd680c5d092e58b Author: Daniel Kolesa Date: Wed Dec 4 16:04:19 2019 +0100 eolian: fix a parse bug where composites was treated as implements In the specific case where you had "class A extends B composites C" the correct composites branch was ignored and instead the implements branch was used. This was entirely wrong/an oversight that did not appear until now. Other combinations were handled correctly. --- src/lib/eolian/eo_parser.c | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/eolian/eo_parser.c b/src/lib/eolian/eo_parser.c index 8316c4f3bc..96de7a77ec 100644 --- a/src/lib/eolian/eo_parser.c +++ b/src/lib/eolian/eo_parser.c @@ -2301,8 +2301,11 @@ tags_done: { /* regular class can have a parent, but just one */ _inherit_dep(ls, ibuf, EINA_TRUE); + /* followed by composites */ + if (ls->t.kw == KW_composites) +goto noimp_comp; /* if not followed by implements, we're done */ - if ((ls->t.kw != KW_implements) && (ls->t.kw != KW_composites)) + if (ls->t.kw != KW_implements) { eo_lexer_dtor_pop(ls); goto inherit_done; @@ -2314,6 +2317,7 @@ tags_done: while (test_next(ls, ',')); } +noimp_comp: if (ls->t.kw == KW_composites) { if (type == EOLIAN_CLASS_INTERFACE) --
[EGIT] [core/efl] master 01/01: docs: slight improvement for Efl.Decelerate_Interpolator
xartigas pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=e242a05d73c0fd7142c0d8c7804d5f60ffb80748 commit e242a05d73c0fd7142c0d8c7804d5f60ffb80748 Author: Xavi Artigas Date: Wed Dec 4 15:58:04 2019 +0100 docs: slight improvement for Efl.Decelerate_Interpolator --- src/lib/ecore/efl_decelerate_interpolator.eo | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/ecore/efl_decelerate_interpolator.eo b/src/lib/ecore/efl_decelerate_interpolator.eo index 42011694a5..eef3b3a71e 100644 --- a/src/lib/ecore/efl_decelerate_interpolator.eo +++ b/src/lib/ecore/efl_decelerate_interpolator.eo @@ -4,7 +4,7 @@ class @beta Efl.Decelerate_Interpolator extends Efl.Object implements Efl.Interp it reaches $[1.0]. Internally it uses the second half of a sinus rise (from 0.5 to 1.0) and the steepness - can be customized. + can be customized through the @.slope property. ]] data: Efl_Decelerate_Interpolator_Data; methods { --
[EGIT] [core/efl] master 01/01: eolian: account for entire inheritance trees when compositing
q66 pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=c360f5edb699ed5a4a5b24c9091a596d1a0db46f commit c360f5edb699ed5a4a5b24c9091a596d1a0db46f Author: Daniel Kolesa Date: Wed Dec 4 15:30:17 2019 +0100 eolian: account for entire inheritance trees when compositing When a class composites an interface, we need to ignore all of its extends (and extends of those) as well as the main interface when doing API checks, as composites essentially provides a guarantee that this *will* be implemented at runtime, which further extends to the whole inheritance tree of that interface. Fixes T8491. --- src/lib/eolian/database_validate.c | 18 +- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/lib/eolian/database_validate.c b/src/lib/eolian/database_validate.c index 4e51718ecd..b1af2185ef 100644 --- a/src/lib/eolian/database_validate.c +++ b/src/lib/eolian/database_validate.c @@ -1247,6 +1247,17 @@ _add_composite(Eolian_Class *cl, const Eolian_Class *icl, Eina_Hash *ch) } } +static void +_add_implicit_composite(Eolian_Class *icl, Eina_Hash *ch, Eina_Bool try_tree) +{ + eina_hash_set(ch, , icl); + if (!try_tree) + return; + Eina_List *l; + EINA_LIST_FOREACH(icl->extends, l, icl) + _add_implicit_composite(icl, ch, try_tree); +} + static Eina_Bool _db_fill_inherits(Validate_State *vals, Eolian_Class *cl, Eina_Hash *fhash, Eina_Hash *errh) @@ -1325,7 +1336,12 @@ _db_fill_inherits(Validate_State *vals, Eolian_Class *cl, Eina_Hash *fhash, cl->composite = eina_list_append(cl->composite, out_cl); succ = _db_fill_inherits(vals, out_cl, fhash, errh); ++ncomp; -eina_hash_set(ch, _cl, out_cl); +/* for each thing that is composited, we need to add the entire + * inheritance tree of it into composite hash to check, so e.g. + * class A -> composites B -> extends C does not complain about + * A not implementing C + */ +_add_implicit_composite(out_cl, ch, out_cl->type == EOLIAN_CLASS_INTERFACE); } /* parent can be abstract, those are not checked for unimplemented, --
[EGIT] [website/www-content] master 01/01: Wiki page freebsd-start.md changed with summary [Add more instruction and include infoation regarding building against OpenSSL in base.] by Alastair Poole
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=2fabdbb356f3ecd00c2084e9eba0f655ff6ba912 commit 2fabdbb356f3ecd00c2084e9eba0f655ff6ba912 Author: Alastair Poole Date: Wed Dec 4 03:10:45 2019 -0800 Wiki page freebsd-start.md changed with summary [Add more instruction and include infoation regarding building against OpenSSL in base.] by Alastair Poole --- pages/docs/distros/freebsd-start.md.txt | 26 +++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/pages/docs/distros/freebsd-start.md.txt b/pages/docs/distros/freebsd-start.md.txt index cdc496a5b..0884a9562 100644 --- a/pages/docs/distros/freebsd-start.md.txt +++ b/pages/docs/distros/freebsd-start.md.txt @@ -61,12 +61,22 @@ To install the software packages required by EFL: ```bash su -pkg install meson ninja python2 python3 bullet fribidi gettext-tools giflib git gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms ibus xorg xorg-server +pkg install meson ninja python2 python3 bullet fribidi gettext-tools giflib git gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool openssl poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms ibus xorg xorg-server ``` +Note: Versions of EFL greater than 1.23.x use the base installation of OpenSSL (see instructions for building from Git). + ### Step 4: Building and Installing ### -Once you have installed all the required packages ``cd`` into the *efl-X.XX.X* folder and run +Set up these environment variables before building. + +```bash +setenv PKG_CONFIG_PATH /usr/local/libdata/pkgconfig:/usr/local/lib/pkgconfig +setenv CFLAGS "-I/usr/local/include" +setenv LDFLAGS "-L/usr/local/lib" +``` + +Once you have installed all the required packages ``cd`` into the *efl-X.XX.X* folder and and set environment variables run ```bash meson build -Dsystemd=false -Deeze=false @@ -112,11 +122,21 @@ This will create a a directory named *efl/*. To install the dependencies specific to EFL: ```bash -pkg install meson ninja python2 python3 bullet fribidi gettext-tools giflib gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool openssl poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms ibus xorg xorg-server +pkg install meson ninja python2 python3 bullet fribidi gettext-tools giflib gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms ibus xorg xorg-server ``` +Note: Versions of EFL greater than 1.23.x use the base installation of OpenSSL. Therefore there is no need for the OpenSSL port to be installed. + ### Step 3: Configuring the Software ### +Set up these environment variables before building. + +```bash +setenv PKG_CONFIG_PATH /usr/local/libdata/pkgconfig:/usr/local/lib/pkgconfig +setenv CFLAGS "-I/usr/local/include" +setenv LDFLAGS "-L/usr/local/lib" +``` + You can now ``cd`` into the *efl\* directory compile and install EFL: ```bash --
[EGIT] [website/www-content] master 01/01: Wiki page freebsd-start.md changed with summary [Minor Change. Test Save.] by Alastair Poole
WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=3397fad4093120aa8d6ed7c882a5a9de30dd9f1d commit 3397fad4093120aa8d6ed7c882a5a9de30dd9f1d Author: Alastair Poole Date: Wed Dec 4 02:58:40 2019 -0800 Wiki page freebsd-start.md changed with summary [Minor Change. Test Save.] by Alastair Poole --- pages/docs/distros/freebsd-start.md.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/docs/distros/freebsd-start.md.txt b/pages/docs/distros/freebsd-start.md.txt index da5b19176..cdc496a5b 100644 --- a/pages/docs/distros/freebsd-start.md.txt +++ b/pages/docs/distros/freebsd-start.md.txt @@ -61,7 +61,7 @@ To install the software packages required by EFL: ```bash su -pkg install meson ninja python2 python3 bullet fribidi gettext-tools giflib git gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool openssl poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms ibus xorg xorg-server +pkg install meson ninja python2 python3 bullet fribidi gettext-tools giflib git gmake gstreamer1 gstreamer1-plugins-core luajit check libraw libspectre librsvg2 libtool poppler pkgconf pulseaudio shared-mime-info xcb-util-keysyms ibus xorg xorg-server ``` ### Step 4: Building and Installing ### --
[EGIT] [core/efl] master 01/01: fix the wrong method signature for evas_textgrid
hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=608c853b442c38dd6129598b8e60e623cbb13540 commit 608c853b442c38dd6129598b8e60e623cbb13540 Author: Taehyub Kim Date: Wed Dec 4 19:12:48 2019 +0900 fix the wrong method signature for evas_textgrid Summary: fix the wrong method signature famliy font get and font size get for evas_textgrid the method parameter should be changed to return type @fix Reviewers: Hermet, ali.alzyod, woohyun Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10794 --- src/lib/evas/canvas/evas_object_textgrid.c | 12 ++-- src/lib/evas/canvas/evas_textgrid_eo.c | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/lib/evas/canvas/evas_object_textgrid.c b/src/lib/evas/canvas/evas_object_textgrid.c index e73609668a..504e8c1ffa 100644 --- a/src/lib/evas/canvas/evas_object_textgrid.c +++ b/src/lib/evas/canvas/evas_object_textgrid.c @@ -1224,10 +1224,10 @@ _evas_textgrid_efl_text_font_font_family_set(Eo *eo_obj, _evas_textgrid_font_reload(eo_obj, o); } -EOLIAN static void -_evas_textgrid_efl_text_font_font_family_get(const Eo *eo_obj EINA_UNUSED, Evas_Textgrid_Data *o, const char **font_name) +EOLIAN static const char * +_evas_textgrid_efl_text_font_font_family_get(const Eo *eo_obj EINA_UNUSED, Evas_Textgrid_Data *o) { - if (font_name) *font_name = o->cur.font_name; + return o->cur.font_name; } EOLIAN static void @@ -1244,10 +1244,10 @@ _evas_textgrid_efl_text_font_font_size_set(Eo *eo_obj, _evas_textgrid_font_reload(eo_obj, o); } -EOLIAN static void -_evas_textgrid_efl_text_font_font_size_get(const Eo *eo_obj EINA_UNUSED, Evas_Textgrid_Data *o, Evas_Font_Size *font_size) +EOLIAN static Evas_Font_Size +_evas_textgrid_efl_text_font_font_size_get(const Eo *eo_obj EINA_UNUSED, Evas_Textgrid_Data *o) { - if (font_size) *font_size = o->cur.font_size; + return o->cur.font_size; } EOLIAN static void diff --git a/src/lib/evas/canvas/evas_textgrid_eo.c b/src/lib/evas/canvas/evas_textgrid_eo.c index ce49c063b9..306ea8af00 100644 --- a/src/lib/evas/canvas/evas_textgrid_eo.c +++ b/src/lib/evas/canvas/evas_textgrid_eo.c @@ -48,13 +48,13 @@ void _evas_textgrid_efl_object_destructor(Eo *obj, Evas_Textgrid_Data *pd); void _evas_textgrid_efl_text_font_font_family_set(Eo *obj, Evas_Textgrid_Data *pd, const char *font); -void _evas_textgrid_efl_text_font_font_family_get(const Eo *obj, Evas_Textgrid_Data *pd, const char **font); +const char * _evas_textgrid_efl_text_font_font_family_get(const Eo *obj, Evas_Textgrid_Data *pd); void _evas_textgrid_efl_text_font_font_size_set(Eo *obj, Evas_Textgrid_Data *pd, Efl_Font_Size size); -void _evas_textgrid_efl_text_font_font_size_get(const Eo *obj, Evas_Textgrid_Data *pd, Efl_Font_Size *size); +Evas_Font_Size _evas_textgrid_efl_text_font_font_size_get(const Eo *obj, Evas_Textgrid_Data *pd); void _evas_textgrid_efl_text_font_font_source_set(Eo *obj, Evas_Textgrid_Data *pd, const char *font_source); --
[EGIT] [core/efl] master 01/01: efl_canvas_animation_group: move from list to iterator
bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8daaab65fa24f95cdb1a67ea812f9cec1977bb8a commit 8daaab65fa24f95cdb1a67ea812f9cec1977bb8a Author: Marcel Hollerbach Date: Tue Dec 3 16:00:29 2019 +0100 efl_canvas_animation_group: move from list to iterator we should not use lists directly, ownership issues etc. etc.. This moves it to iterators Reviewed-by: Xavi Artigas Differential Revision: https://phab.enlightenment.org/D10787 --- src/lib/evas/canvas/efl_canvas_animation_group.c | 4 ++-- src/lib/evas/canvas/efl_canvas_animation_group.eo | 2 +- src/lib/evas/canvas/efl_canvas_animation_group_parallel.c | 14 +++--- .../evas/canvas/efl_canvas_animation_group_sequential.c| 14 +++--- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/lib/evas/canvas/efl_canvas_animation_group.c b/src/lib/evas/canvas/efl_canvas_animation_group.c index ab88743a26..8673efd01e 100644 --- a/src/lib/evas/canvas/efl_canvas_animation_group.c +++ b/src/lib/evas/canvas/efl_canvas_animation_group.c @@ -41,11 +41,11 @@ _efl_canvas_animation_group_animation_del(Eo *eo_obj EINA_UNUSED, } } -EOLIAN static Eina_List * +EOLIAN static Eina_Iterator* _efl_canvas_animation_group_animations_get(const Eo *eo_obj EINA_UNUSED, Efl_Canvas_Animation_Group_Data *pd) { - return pd->animations; + return eina_list_iterator_new(pd->animations); } EOLIAN static void diff --git a/src/lib/evas/canvas/efl_canvas_animation_group.eo b/src/lib/evas/canvas/efl_canvas_animation_group.eo index f9cada25a7..07daa8f554 100644 --- a/src/lib/evas/canvas/efl_canvas_animation_group.eo +++ b/src/lib/evas/canvas/efl_canvas_animation_group.eo @@ -23,7 +23,7 @@ abstract @beta Efl.Canvas.Animation_Group extends Efl.Canvas.Animation } animations_get @const { [[Gets the list of animations currently in the animation group.]] - return: list; [[List of animations in the group.]] + return: iterator @move; [[List of animations in the group.]] } } implements { diff --git a/src/lib/evas/canvas/efl_canvas_animation_group_parallel.c b/src/lib/evas/canvas/efl_canvas_animation_group_parallel.c index 4ec979caff..9960e4105e 100644 --- a/src/lib/evas/canvas/efl_canvas_animation_group_parallel.c +++ b/src/lib/evas/canvas/efl_canvas_animation_group_parallel.c @@ -13,15 +13,14 @@ _efl_canvas_animation_group_parallel_efl_canvas_animation_animation_apply(Eo *eo int anim_repeated_count; progress = efl_animation_apply(efl_super(eo_obj, MY_CLASS), progress, target); - Eina_List *group_anim = efl_animation_group_animations_get(eo_obj); + Eina_Iterator *group_anim = efl_animation_group_animations_get(eo_obj); if (!group_anim) return progress; group_length = efl_playable_length_get(eo_obj); group_elapsed_time = group_length * progress; - Eina_List *l; Efl_Canvas_Animation *anim; - EINA_LIST_FOREACH(group_anim, l, anim) + EINA_ITERATOR_FOREACH(group_anim, anim) { anim_length = efl_playable_length_get(anim); anim_duration = efl_animation_duration_get(anim); @@ -48,6 +47,7 @@ _efl_canvas_animation_group_parallel_efl_canvas_animation_animation_apply(Eo *eo efl_animation_apply(anim, anim_progress, target); } + eina_iterator_free(group_anim); return progress; } @@ -58,18 +58,18 @@ _efl_canvas_animation_group_parallel_efl_canvas_animation_duration_get(const Eo double child_total_duration; double total_duration = 0.0; - Eina_List *animations = efl_animation_group_animations_get(eo_obj); - if (!animations) return 0.0; + Eina_Iterator *group_anim = efl_animation_group_animations_get(eo_obj); + if (!group_anim) return 0.0; - Eina_List *l; Efl_Canvas_Animation *anim; - EINA_LIST_FOREACH(animations, l, anim) + EINA_ITERATOR_FOREACH(group_anim, anim) { child_total_duration = efl_playable_length_get(anim); child_total_duration += efl_animation_start_delay_get(anim); if (child_total_duration > total_duration) total_duration = child_total_duration; } + eina_iterator_free(group_anim); return total_duration; } diff --git a/src/lib/evas/canvas/efl_canvas_animation_group_sequential.c b/src/lib/evas/canvas/efl_canvas_animation_group_sequential.c index 2a83fc4431..26edb21355 100644 --- a/src/lib/evas/canvas/efl_canvas_animation_group_sequential.c +++ b/src/lib/evas/canvas/efl_canvas_animation_group_sequential.c @@ -15,15 +15,14 @@ _efl_canvas_animation_group_sequential_efl_canvas_animation_animation_apply(Eo * int anim_repeated_count; progress = efl_animation_apply(efl_super(eo_obj, MY_CLASS), progress, target); - Eina_List *group_anim = efl_animation_group_animations_get(eo_obj); + Eina_Iterator *group_anim = efl_animation_group_animations_get(eo_obj); if
[EGIT] [core/efl] master 01/01: edje_entry: converting plain_text to '*' using unicode units.
woohyun pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8cb0b193ea043bbd0d2a2162fa25f82aafaa50cd commit 8cb0b193ea043bbd0d2a2162fa25f82aafaa50cd Author: Bowon Ryu Date: Wed Dec 4 17:09:33 2019 +0900 edje_entry: converting plain_text to '*' using unicode units. Summary: When converting plain_text to '*' in retrieve_surrounding_cb, always convert it to '*' in 1 byte unit. For example, 2 byte character is converted to "* *" and 3 byte character is converted to "* * *" However, this does not match the number of '*' printed in the entry. Because, '*' in the entry is printed according to number of unicode characters. This patch converts plain_text into unicode units when converting plain_text to '*' Test Plan: N/A Reviewers: woohyun Reviewed By: woohyun Subscribers: cedric, #reviewers, jihoon, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10792 --- src/lib/edje/edje_entry.c | 18 -- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/lib/edje/edje_entry.c b/src/lib/edje/edje_entry.c index 29e0f10c96..e87576b4ac 100644 --- a/src/lib/edje/edje_entry.c +++ b/src/lib/edje/edje_entry.c @@ -4736,9 +4736,23 @@ _edje_entry_imf_retrieve_surrounding_cb(void *data, Ecore_IMF_Context *ctx EINA_ { if (ecore_imf_context_input_hint_get(ctx) & ECORE_IMF_INPUT_HINT_SENSITIVE_DATA) { + int idx = 0; char *itr = NULL; - for (itr = plain_text; itr && *itr; ++itr) - *itr = '*'; + size_t len = eina_unicode_utf8_get_len(plain_text); + char *u_text = (char *)malloc(len * sizeof(char) + 1); + if (!u_text) return EINA_FALSE; + + itr = u_text; + while (eina_unicode_utf8_next_get(plain_text, )) + { +*itr = '*'; +itr++; + } + *itr = 0; + + plain_text = strdup(u_text); + free(u_text); + u_text = NULL; } *text = strdup(plain_text); --