summaryrefslogtreecommitdiff
path: root/src/lib (follow)
AgeCommit message (Collapse)Author
2020-06-23Get rid of trailing whitespaces (4 / 14)Elyes HAOUAS
Remove trailing whitespaces Differential Revision: https://phab.enlightenment.org/D12002
2020-06-23Efl.Gfx.Path: Change draw of a rounded rect from arc to quadraticJunsuChoi
Summary: The rounded rect is a very slightly different shape compared to chrome's svg output. To solve this, modify to use a quadratic bezier instead of arc when drawing a round. Test Plan: {F3904500} (Drawing rect with arc or quadratic) Compare Image {F3904501} {F3904502} Reviewers: Hermet, kimcinoo, herb Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D12020
2020-06-22eina_strbuf: introduce change last occurrence functionAli Alzyod
Reviewers: cedric, woohyun, bowonryu Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8757 Differential Revision: https://phab.enlightenment.org/D11990
2020-06-22eina_strbuf: if readonly strbuf is malloc, then it will stop being readonlyAli Alzyod
Reviewers: cedric Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8757 Differential Revision: https://phab.enlightenment.org/D11992
2020-06-22eina_strbuf_manage_new: update documentationAli Alzyod
Reviewers: cedric Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8757 Differential Revision: https://phab.enlightenment.org/D11991
2020-06-22evas textblock : update font source when it set using font_source_setAbdullehGhujeh
Summary: when we set font source, for example with efl_text_font_source_set, the font source will not be updated in the textblock. this is have same results that has been done in D9548 Test Plan: #define EFL_EO_API_SUPPORT 1 #define EFL_BETA_API_SUPPORT 1 #include <Efl_Ui.h> static void _gui_quit_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED) { efl_exit(0); } static Eo * _create_label(Eo *win, Eo *bx) { Eo *en; en = efl_add(EFL_UI_TEXTBOX_CLASS, win); printf("Added Efl.Ui.Text object\n"); efl_text_interactive_editable_set(en, EINA_FALSE); efl_pack(bx, en); return en; } static void _gui_setup() { char buf[512], f_buf[512]; Eo *win, *bx; win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(), efl_ui_win_type_set(efl_added, EFL_UI_WIN_TYPE_BASIC), efl_text_set(efl_added, "Hello World"), efl_ui_win_autodel_set(efl_added, EINA_TRUE)); // when the user clicks "close" on a window there is a request to delete efl_event_callback_add(win, EFL_UI_WIN_EVENT_DELETE_REQUEST, _gui_quit_cb, NULL); bx = efl_add(EFL_UI_BOX_CLASS, win, efl_content_set(win, efl_added), efl_gfx_hint_size_min_set(efl_added, EINA_SIZE2D(360, 240))); snprintf(buf, sizeof(buf), "./TestFontSource.eet"); Eo *en = _create_label(win, bx); efl_text_set(en, "Hello, This Text Use The Font : Does_Not_Exists_Font_1 : Source + Font Name"); efl_text_font_source_set(en, buf); efl_text_font_family_set(en, "Does_Not_Exists_Font_1"); efl_text_font_size_set(en, 35); en = _create_label(win, bx); efl_text_set(en, "Hello, This Text Use The Font : Does_Not_Exists_Font_1 : Font Name"); efl_text_font_family_set(en, "Does_Not_Exists_Font_1"); efl_text_font_size_set(en, 35); en = _create_label(win, bx); efl_text_set(en, "Hello, This Text Use The Font : Does_Not_Exists_Font_2 : Source + Font Name"); efl_text_font_source_set(en, buf); efl_text_font_family_set(en, "Does_Not_Exists_Font_2"); efl_text_font_size_set(en, 35); en = _create_label(win, bx); efl_text_set(en, "Hello, This Text Use The Font : Does_Not_Exists_Font_2 : Font Name"); efl_text_font_family_set(en, "Does_Not_Exists_Font_2"); efl_text_font_size_set(en, 35); } EAPI_MAIN void efl_main(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED) { _gui_setup(); } EFL_MAIN() Reviewers: ali.alzyod, woohyun, bowonryu, cedric Reviewed By: ali.alzyod Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11757
2020-06-22eina_strbuf: resolve segfault when replace used with read_only bufferAli Alzyod
Summary: when eina_strbuf_replace is used by read_only buffer, this will cause segfault (access invalid memory) Reviewers: cedric Reviewed By: cedric Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8757 Differential Revision: https://phab.enlightenment.org/D11989
2020-06-22Textblock : Fix cursor cluster movement when emoji at the line startAbdullehGhujeh
Summary: if we have emoji only or emoji at line start we can move cursor using mouse click to be inside the emoji. {F3868502} this should fix T8664 Test Plan: #include <Elementary.h> EAPI_MAIN int elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) { Evas_Object *win; elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); win = elm_win_util_standard_add("emoji-test", "emoji-test"); elm_win_autodel_set(win, EINA_TRUE); /* and now just resize the window to a size you want. normally widgets * will determine the initial size though */ evas_object_resize(win, 320, 320); Evas_Object *box; box = elm_box_add(win); evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(box, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_win_resize_object_add(win, box); Evas_Object *entry; entry = elm_entry_add(box); elm_entry_entry_set(entry, "&#x262a;&#xfe0f;"); evas_object_size_hint_weight_set(entry, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(entry, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(box, entry); evas_object_show(entry); evas_object_show(box); /* and show the window */ evas_object_show(win); elm_run(); /* and run the program now, starting to handle all * events, etc. */ /* exit code */ return 0; } ELM_MAIN() Reviewers: ali.alzyod, woohyun, bowonryu, zmike, bu5hm4n Reviewed By: ali.alzyod Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8664 Differential Revision: https://phab.enlightenment.org/D11732
2020-06-20eina_unicode: have explicit type conversionsBoris Faure
Summary: Found by running terminology's tests with UBSAN: include/eina-1/eina/eina_inline_unicode.x: runtime error: implicit conversion from type 'char' of value -62 (8-bit, signed) to type 'unsigned char' changed the value to 194 (8-bit, unsigned) Reviewers: #reviewers, vtorri Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11972
2020-06-19elm_scroller: use region of proxy soruce for loopShinwoo Kim
Summary: If size of elm_sclloer content is too big, then the proxy of elm_scroller to show loop effect does not work. Because evas_gl_common_image_surface_new does not allow bigger size surface than max_texture_size. Reviewers: Hermet, jsuya, herb Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11996
2020-06-18meson: add Solaris supportVincent Torri
Summary: Add Solaris support for meson Test Plan: test on OpenIndiana Reviewers: raster, bu5hm4n, stefan_schmidt Reviewed By: raster, stefan_schmidt Subscribers: alarcher, stefan_schmidt, bu5hm4n, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11973
2020-06-18efreet - mtime 0 fix build on windowsCarsten Haitzler (Rasterman)
2020-06-18efreetd - cache - add more statinfo work around 0 mtime distrosCarsten Haitzler (Rasterman)
some distros 9notably in this case nixos) want to do reproducible builds. to them this means going around setting mtime for all files to 0. this means efreetd not only thinks mtime is invalid/stupid (0 is generally just that as midnight on jan 1 1970 is not exactly a sensible dare for a modified timestamp of a file as no filesystem with any sanity will have not been modified since that time), but it keeps mtime at 0 even when things update. this totally breaks efreetd that expects to find mtime increases over time as things change. it's necessary because it has to perform a "are mu caches up to date" scan of all file data it caches and it needs to know if it should rebuild something based on this. so this does a few things: 1. it makes mtime have to be an exact match to the cache, not cache mtime >= file mtime. so any change forward or back is an inavlidation. 2. it now also uses ctime, mode, size, uid, gid, block count and if a symlink, the sha1 of the symlink path in addition and any change to these == invalid. this adds a lot of code and changes how dirs get scanned a bit but it means it can pick up changes on these 0 mtime distros. interestingly the policy of mtime being 0 is to have a reprodcible fs ... but ctime still changes and is > 0, as does inode info, so it's not actually possible to have it totally work... but they try still, so this is a fix for that problem. whilst i was doing thisi also noticed efreetd re-red dirs many times due to icon theme inhritance. i also fixed that to do a LOT less syscalls by only scanning a dir once as i was rejigging the scanning code at the time anyway. this should optimize thr scan costs at efreetd startup too. @fix @opt
2020-06-17elm_image: remove the spaces and keep the indentation for elm_image_file_set()Taehyub Kim
Summary: there are wrong indentation in the elm_image_file_set, so removed the tabs Reviewers: Jaehyun_Cho Reviewed By: Jaehyun_Cho Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11988
2020-06-17elm_image: keep backword compatibility for elm_image_file_set API when ↵Taehyub Kim
setting url file set twice Summary: when trying to set file using url path twice, the second api call's return value is EINA_FALSE since image obj has already has same file path. After applying Efl.File interface, the behavior is changed compared to before. both of the return values should be EINA_TRUE. @fix ex) Eina_Bool ret1, ret2; ret1 = elm_image_file_set(image, "http://sameurl/image.jpg", NULL); ret2 = elm_image_file_set(image, "http://sameurl/image.jpg", NULL); ret1 and ret2 should be EINA_TURE Test Plan: 1. call elm_image_file_set api with same url path 2. see the return value Reviewers: Hermet, kimcinoo, jsuya Reviewed By: Hermet Subscribers: bu5hm4n, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11979
2020-06-17efl_ui_widget: addition to the previous commitMarcel Hollerbach
in the previous commit we started to only receive the parent_obj from the evas object when its not a widget. However, we still need to ensure that the parent is equal to the current one in order to remove it when a widget. While this is one more call, the call to get the parent is not as heavy as the data_get call, as this directly addresses a struct, and does not read from a hash table. This also fixes a test case failure.
2020-06-17elementary/perf: reduce number of efl_isa() call. in elementary test ↵Subhransu Mohanty
application efl_isa() shows up as hotsport during profiling so refactored the code to reduce redundant efl_isa() calls. in genlist testcase the number of calls reduced by 30000. Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Reviewed-by: Hermet Park <<hermetpark@gmail.com>> Reviewed-by: Youngbok Shin <youngb.shin@samsung.com> Differential Revision: https://phab.enlightenment.org/D11984
2020-06-17elementary/perf:remove unnecessary elm_widget_is() checkSubhransu Mohanty
As we always make sure the parent is a widget class we don't have to check anymore. Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Reviewed-by: Hermet Park <<hermetpark@gmail.com>> Differential Revision: https://phab.enlightenment.org/D11985
2020-06-16evas_object_table: fix not to use hint_fill on elm_tableJaehyun Cho
Summary: The hint_fill logic in evas_object_table was designed to be used for Efl.Ui.Table not for elm_table. Since Efl.Ui.Table does not use evas_object_table logic, hint_fill logic in evas_object_table is removed. Reviewers: YOhoho Reviewed By: YOhoho Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11982
2020-06-16Efl.Canvas.Vg.Object: Fix wrong render areaJunsuChoi
Summary: When determining the size of the ector buffer, it was used the smaller of the object's geometry or path_bounds. However, because of that, path worked as absolute coordinates. path_bounds should be relative to geometry of object. Test Plan: {F3900444} original {F3900445} before + evas_object_geometry_set(vg, 100, 100, 200, 200); {F3900447} after + evas_object_geometry_set(vg, 100, 100, 200, 200); {F3900448} Reviewers: Hermet, kimcinoo, herb, smohanty Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11974
2020-06-14webp - 0.5.0 is actually new enoughCarsten Haitzler (Rasterman)
webp anim apis came out in 0.5.0 not 1.1.0 :)
2020-06-12efl_ui_win: reuse bg which was created for version checkWooHyun Jung
Summary: This is just for not creating bg object twice. Reviewers: bu5hm4n, zmike, YOhoho Reviewed By: YOhoho Subscribers: YOhoho, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11936
2020-06-12ui image: fix a missing else case.Hermet Park
it sholud be turned on enabled status. it's side issue by 0826b4916efb0bce20a353cece56e84d05fb406c
2020-06-12efl_ui_image: fixed elm_image_preload_disabled_set api is not working when ↵Taehyub Kim
it is called before file set Summary: when elm_image_preload_disabled_set(img, EINA_TRUE) is called before file set. The image preload is not canceled, because the function will be returned since the image is not loaded. so preload disabled api is fixed to work even if it is called before file set. @fix Reviewers: Hermet, kimcinoo, jsuya Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11969
2020-06-11elm_calendar: Do not pass NULL to function.Woochanlee
Summary: T7076 legacy calendar inc/dec button has auto repeat feature. for that if user click the button very quickly, we delete internal timer than it will pass to function. to prevent this, need to check NULL pointer. Reviewers: devilhorns, Hermet Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11966
2020-06-11eina: only enable EINA_LOG_BACKTRACE when backtrace API is presentDaniel Kolesa
This prevents build breakage on platforms that either don't have backtrace() or don't have the appropriate library for it installed.
2020-06-10ecore_drm: check return of drmModeSetCrtc()Stefan Schmidt
Report if we fail to reset the Crtc during output free. Only print an error and keep going with the rest of the output free. CID: 1402668 Reviewed-by: Christopher Michael <devilhorns@comcast.net> Differential Revision: https://phab.enlightenment.org/D11965
2020-06-10evas stack: ++safe code.Hermet Park
null check to prevent any crashes (just in case)
2020-06-10Use extern after EAPIVincent Torri
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org> Differential Revision: https://phab.enlightenment.org/D11961
2020-06-10ui textpath: updated doc.Hermet Park
2020-06-10efl_ui_textpath: add the efl_ui_textpath_text_user_style_set API for ↵Taehyub Kim
applying the user text style Summary: For the text style customizing, added the new API to apply user text style. The following example is the user style sample. DEFAULT='font_size=16 color=#F00 underline=on underline_color=#00ffff'"; {F3899541} Test Plan: 1. run elementary_text (textpath) 2. toggle user style check box 3. see the result Reviewers: Hermet, kimcinoo, jsuya, bu5hm4n Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11953
2020-06-09efreet - handle runtime relocation right with default XDG_DATA_DIRSCarsten Haitzler (Rasterman)
XDG_DATA_DIRS was only set up to a default including where efl was installed prefix-wise as the compiled-=in prefix, not runtime determined prefix. it shouldn't actually affect most people except those making use of this. @fix
2020-06-09eina - prefix - use smaller buffers for building stringsCarsten Haitzler (Rasterman)
use less stack space but no features as buffers are big enough for all content used or alloca'd now.
2020-06-09eina - abstratc content - smaller stack buffer for limited size stringCarsten Haitzler (Rasterman)
no need for a 4k buffer when 128 bytes will be plenty - short string.
2020-06-09efl_ui_win: declare constructors not optionalMarcel Hollerbach
they cannot be optional, or in later languages types will collide. Differential Revision: https://phab.enlightenment.org/D11741
2020-06-09cxx: Fix uses of intrinsic eolian binbuf typeFelipe Magno de Almeida
Add special binbuf and Eina_Strbuf conversions Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D11950
2020-06-09eo-files: convert all Eina.Strbuf & Eina.BinbufMarcel Hollerbach
these structs should not be used, but rather the builtin types that exist for it. Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br> Differential Revision: https://phab.enlightenment.org/D11742
2020-06-09eo: make the parent a optional constructorMarcel Hollerbach
this is needed in order to sanely bind parent calls to some objejcts, but not all. However, from the canvas structure up we *need* a parent, so we can fetch the evas from it. So declare it there a none optional Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br> Differential Revision: https://phab.enlightenment.org/D11734
2020-06-09doxygen docs: Fix API reference group to Ecore_EoMyoungwoon Roy, Kim
This patch fixs a wrong group name in Ecore_Eo API reference Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org> Differential Revision: https://phab.enlightenment.org/D11952
2020-06-09evas_vg_cache: Don't caching vg file if value_provider is applied.JunsuChoi
Summary: value_provider can change the value of the property received from VG file. When a file is cached, the changed properties are applied to all other objects using the same file. So. If value provider is applied, evas_vg_cache is not caching vg file. Test Plan: N/A Reviewers: Hermet, herb, kimcinoo Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11924
2020-06-09evas_common_font: release reallocated glyphs bitmaps dataAli Alzyod
Reviewers: woohyun, smohanty Reviewed By: woohyun Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8743 Differential Revision: https://phab.enlightenment.org/D11945
2020-06-08ecore_ipc: Fix memory leakSubhransu Mohanty
Summary: As delete_me flag was not updated in the delete callback it dosen't call ecore_ipc_client_del() on the client hence the leak. Reviewers: Hermet, raster, bu5hm4n, CHAN Reviewed By: Hermet, CHAN Subscribers: CHAN, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11927
2020-06-08webp: add version check in configuration timeWooHyun Jung
Reviewers: Hermet, herb, bu5hm4n, stefan_schmidt Reviewed By: stefan_schmidt Subscribers: stefan_schmidt, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11926
2020-06-08eldbus: fix the data size issue.Hermet Park
Summary: dbus message requires the void* value for the message data, the returned value of dbus_message_iter_get_basic() can be mismatched by to the architure, This could bring the returned va_argues memory corrupted among the series of values. We can use the defined type for exceptions. Reviewers: herb, kimcinoo, jsuya, raster Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11940
2020-06-06build: disable elua by default, plus nicer detectionDaniel Kolesa
Elua is now disabled by default. There are some other changes: 1) Elua scripts are only installed if Elua is enabled 2) Lua bindings are only installed if Elua is enabled 3) Elua with interpreter is clearly experimental and will message
2020-06-05emotion: remove all left overs from removed backendsStefan Schmidt
We removed them in the last release. Make sure we cleanup all the references and dead code still belonging to it. Extra note on the Emotion_Module enum removal. While it was exposed in the public Emotion.h header it is never used anywhere in the code and has no purpose, thus it can safely be removed. Reviewed-by: Carsten Haitzler (Rasterman) <raster@rasterman.com> Differential Revision: https://phab.enlightenment.org/D11941
2020-06-05build: do not publish surface .eo filesMarcel Hollerbach
they are privat, they should never be installed. Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org> Differential Revision: https://phab.enlightenment.org/D11933
2020-06-05evas: correctly declare filter_internal as public APIMarcel Hollerbach
I know this is internal. However it is public used in public .eo files. Even if it is internal, and beta, we still need to expose the API in order to have it correctly in the .so. Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org> Differential Revision: https://phab.enlightenment.org/D11932
2020-06-05edje: markup flag should be TRUE in legacy edje_object_part_text_setBowon Ryu
Summary: Through some APIs (elm_entry_editable_set, elm_entry_single_line_set, etc.) located after edje_object_part_text_set(legacy) If efl_ui_widget_theme_apply is called, In edje_object_part_text_raw_generic_set, the legacy flag becomes FALSE. And in this case, the logic works in the unintended direction because the set_markup flag is FALSE. Test Plan: /* gcc -o entry_example entry.c `pkg-config --cflags --libs elementary` */ #include <Elementary.h> EAPI_MAIN int elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED) { Evas_Object *win, *en; elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED); win = elm_win_util_standard_add("entry-example", "test"); elm_win_autodel_set(win, EINA_TRUE); en = elm_entry_add(win); evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); elm_object_part_text_set(en, "elm.guide", "<font_size=32 color=#FFF>TEST</font_size>"); elm_entry_editable_set(en, EINA_FALSE); evas_object_show(en); elm_object_content_set(win, en); evas_object_resize(win, 300, 200); evas_object_show(win); elm_run(); return 0; } ELM_MAIN() Reviewers: woohyun, ali.alzyod Subscribers: zmike, cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11868
2020-06-04evas render - add debug to draw boxes around update regionsCarsten Haitzler (Rasterman)
helps debug update regions to see if there is too much overdraw or too many regions. i smelled too manhy and this showed it. i was right. fix for too many regions coming next