AgeCommit message (Collapse)Author
2018-01-15eo: Warn on calls to NULL objectdevs/jpeg/no_null_callsJean-Philippe Andre
This makes eo print a WRN message in case a function is called on NULL. efl_del is an exception to this rule (implemented in a hackish way, I admit). A few (most likely not all) of said warnings have been resolved.
2018-01-15elm_scroll: Avoid calls to non-existing partJean-Philippe Andre
In case of Bryce's style, there are no scroll bars.
2018-01-15evas: Remove stupid warningJean-Philippe Andre
2018-01-15edje: Add property "part_exist"Jean-Philippe Andre
This allows to safely verify if a part exists, without triggering any potential call to NULL object, or even requiring the efl_part() handle to be created. This is perfectly equivalent to edje_object_part_exists(), but implemented by both edje object and elm layout.
2018-01-15ecore_file_monitor: replace EINA_LIST_FOREACH to EINA_LIST_FOREACH_SAFEWooHyun Jung
If ecore_file_monitor_del is called inside the file monitor callback function, eina_list found from monitor_hash would be freed. (You can check this inside eina_hash_list_remove.) Then, EINA_LIST_FOREACH makes one more for loop with invalid eina_list pointer. EINA_LIST_FOREACH_SAFE can prevent from this problem.
2018-01-14Ecore_Win32: move monitor window initialization to earlier in init funcVincent Torri
Summary: This monitor window is just used to receive events when mutiple monitors are available. it should not be managed by the ecore loop (creation and destruction events), so initting it earlier means ecore_win32 attaches less memory/overhead to it as it's just being used for notifications for devices. Test Plan: DrMemory to check used memory Reviewers: cedric Subscribers: jpeg Differential Revision:
2018-01-14Pyolian: add tests for recently added funcsDave Andreoli
2018-01-14Correct module name for the interface contextAndy Williams
2018-01-14docs: Show when classes really are top level EFL namespaceAndy Williams
2018-01-13ecore_audio wasapi - fix ecore win32 handler deletion and destructionCarsten Haitzler (Rasterman)
vtorri pointed this out in T6607. this should fix this. fixed T6607 @fix
2018-01-12Evil: remove useless dirent codeVincent Torri
Test Plan: compilation of the EFL Reviewers: cedric Subscribers: jpeg Differential Revision: Signed-off-by: Cedric BAIL <>
2018-01-12efl-wl: multiply axis events by 10 to send normalized valuesMike Blumenkrantz
ref T6443
2018-01-12efl-wl: unset cursor role on existing cursor surface if new cursor is setMike Blumenkrantz
this avoids killing clients which replace cursors @fix
2018-01-12elm_tooltip: immediately show tooltip if callback is set for obj under pointerMike Blumenkrantz
2018-01-12elm_tooltip: force immediate hint recalc during tooltip creation if 0x0 sizeMike Blumenkrantz
try to avoid initial 0x0 sized tooltips @fix
2018-01-12efl-wl: return NULL without error when non-extracted parent is foundMike Blumenkrantz
in efl_wl_extracted_surface_extracted_parent_get()
2018-01-12eina: document quadtreeBryce Harrington
Reviewers: cedric, Subscribers: segfaultxavi, jpeg Differential Revision: Signed-off-by: Cedric BAIL <>
2018-01-12efl: remove inclusion of dirent.h where it is not usedVincent Torri
Test Plan: compilation Reviewers: cedric Subscribers: jpeg Differential Revision: Signed-off-by: Cedric BAIL <>
2018-01-12efl: make efl build againDaniel Kolesa
After a function pointer validation branch got enabled, it turned out that people have been writing obviously incorrect eo files all along. So while I have no idea if this is logically fully correct, at least EFL builds again now... cc @thiepha
2018-01-12eolian: correctly validate function pointersDaniel Kolesa
2018-01-12eo: fix tests build.Cedric BAIL
2018-01-12Revert "promise: Add even simpler helper for main loop promise creation"Cedric BAIL
This reverts commit e931fd698d26b8bec0e34239d2f79c059b339a51.
2018-01-12Revert "efl-loop: Don't use 'main' as a variable name"Cedric BAIL
This reverts commit 214dbdbd590a8f3fd9a0f3d5ef975d6ff9ce0e43.
2018-01-12eolian: aliased_base_get funcs don't need unitDaniel Kolesa
2018-01-12eolian: type_typedecl_get doesn't need a unitDaniel Kolesa
2018-01-12eolian: do not require unit for type_class_getDaniel Kolesa
2018-01-12eolian: store typedecl/class in typeDaniel Kolesa
2018-01-12elementary: Fix constant qualifer warning messageChris Michael
Gcc complains here due to _wl_default_seat_id_get not accepting a 'const' Evas_Object, so to avoid the warning just case it to a normal Evas_Object when passing in. Signed-off-by: Chris Michael <>
2018-01-12update po filesCarsten Haitzler (Rasterman) - remove src files no longer in treeCarsten Haitzler (Rasterman)
2018-01-12edje - multisense - only complain once about being inable to play audioCarsten Haitzler (Rasterman)
no p[oint creating streams of noise, so only once.
2018-01-12ecore_audio - only complain once about not loading pulse/sndfileCarsten Haitzler (Rasterman)
otherwise we get a complaint for everty time some audio needs/wants to play and that's just noisy and ugly, so only do it once - the first time sndfile/pulse are being loaded and it fails.
2018-01-12ecore_audio - don't about destruction because of failed sndfile loadCarsten Haitzler (Rasterman)
this means objetcs are only partly destroyed and that is wrong. @fix
2018-01-12eolian_cxx: support multiple function pointersThiep Ha
2018-01-12gengrid: add visible/hidden signal for texts and contentsSangHyeon Lee
Send visible/hidden signal when text/content are realized. This feature is already implemented in genlist widget, for reacting dynamically in item layout depending on their text/content realizations.
2018-01-11eio: remove unecessary include.Cedric Bail
2018-01-11ecore: remove use of efl_main_loop_get from efl_net_socket_ssl_server_example.Cedric BAIL
2018-01-11ecore: remove use of efl_main_loop_get from efl_net_socket_ssl_dialer_example.Cedric BAIL
2018-01-11ecore: remove use of efl_main_loop_get from efl_net_session_example.Cedric BAIL
2018-01-12mmap memory allocation - do not used when under valgrindCarsten Haitzler (Rasterman)
we can't sensibly use things like massif to track memory if we bypass itr with mmaping -1 fd anonymous memory... so if built with valgrind support and running under valgrind, use malloc/calloc and free so these tools actually do something useful for these bits of memory.
2018-01-12evas sw generic - don't dlopen osmesa until first needed.Carsten Haitzler (Rasterman)
osmesa needs llvm. llvm apparently just by dlopening or linking to the lib (libLLVM...) gets you 3.5mb of dirty pages just in this lib. that's a whole lib entirely dirty pages. odd and horrible. in fact once i stoppd dlopening OSMesa all the time on engine init (and only when gl is needed)... the amount of dirty pages went from 17208 to 8860. that's a whopping drop of 8mb! 8mb saved! in fact just dlopening osmesa and doing the other gl init stuff led to more anonymuse mappings with dirty pages. 2 of them (2072k and 2076k) which baffled me as that didn't seem like heap or efl's own data. these disappeared along with (3520k + 60k dirty pages). we stopped linking/loading libedit (12k dirty), libglapi (20k dirty), libLLVM-5.0 (3580k dirty), libncursesw (72k dirty), (260k dirty), libtinfo (20k dirty). ... or at least stopped until absolutely needed. total 17208k of dirty pages went down to 8860. my test case was just launching terminology (and doing nothing with it). @fix memory bloating
2018-01-11elementary: Remove use of implicit declarationChris Michael
evas_canvas_default_device_get used here leads to an 'implicit declaration of function warning'. Use evas_default_device_get instead to remove warning. @fix Signed-off-by: Chris Michael <>
2018-01-11ecore signal - since we arent going to use threads due to osx, removeCarsten Haitzler (Rasterman)
remove thread code since osx is not happy with threads trapping signals (or at least a thread setting up the handler and trapping there with signal blocks...). this should now work universally.
2018-01-11cnp_dnd: make legacy APIs use new interfacesThiep Ha
Legacy APIs can uses efl_selection, efl_ui_dnd, efl_ui_dnd_container interfaces with helper functions.
2018-01-11dnd: add efl_ui_dnd_containerThiep Ha
efl_ui_dnd_container is the interface of dnd for container objects.
2018-01-11dnd: add efl_ui_dndThiep Ha
Efl_Ui_Dnd is the interface for drag and drop of elm_cnp.
2018-01-11selection: add efl_selection interfaceThiep Ha
Efl_Selection is the object interface for selection api of elm_cnp. It allows get, set, clear, check selection.
2018-01-11cnp_dnd: add selection managerThiep Ha
Selection manager implements functions for selection (cnp) and drag and drop. All objects can uses it APIs. It also supports multi-seat.
2018-01-11efl_ui_focus_manager_calc: store node data before the node is freedYeongJong Lee
Summary: we can consider that the node is freed during focus_manager routine. for example, efl_ui_focus_manager_redirect_set call edje event callbacks, and a application can delete a object in the edje callback. if the object is the focusable object of a node, focus_manager make the node freed. the focus_manager is able to use freed node. (a good example is test_popup.c) this prevent reusing freed pointers. Test Plan: 1. elementary_test -to popup 2. popup-center-text + 1 button 3. Click the Close button 4. check that there is no erroe message Reviewers: bu5hm4n Reviewed By: bu5hm4n Subscribers: cedric, woohyun, jpeg, Jaehyun_Cho Differential Revision:
2018-01-11ecore signal write - save and restore errno since may be on mainloopCarsten Haitzler (Rasterman)
now i disabled the signal thread watcher ... save+restore errno.