summaryrefslogtreecommitdiff
path: root/src/lib (follow)
AgeCommit message (Collapse)Author
2017-12-19efl: Reset ecore event types on initJean-Philippe Andre
This fixes cycles of init/shutdown/init where ecore event types would become invalid, since they are now stored in a dynamic array rather than a statically stored array. The risk here is that if a module of EFL tends to init/shutdown in a "normal" scenario then the event type array will grow in a leaking manner. This could be fixed by resetting those event ID's only when the loop actually exits (EFL_EVENT_DEL on the main loop). I'm not using EFL_EVENT_DEL in this patch as this would add too many event callbacks to the main loop object, which may result in slightly slower event calls to it, affecting the overall performance.
2017-12-19scroller: Introducing Efl.Ui.ScrollerWonki Kim
Summary: scrollable widgets had a interface_scrollable as a mixin so that the widgets had a 'is-a' relation with interface_scrollabe. however, new scroller concept don't have 'is-a' relationship, but 'has-a' relationship. scrollable widgets should have a scroll manager inside them, then scroll manager handles event from user and api implementations. and also we cut the features such as paging because there will be aka 'elm_pager'. we are expecting that the new concept make us to maintain the scroller easier. please excuse for many unorganized code and logics. : ( [contained commit] scrollable: add efl_ui_scroller example scrollable: refactoring for behavior in case of multiple scroller scrollable: remove repetitive scrollbar code. scrollable: combine calculating bounce distance code. scroll_manager: mouse up function refactoring scroll_manager: mouse move function refactoring scroll_manager: warp animator wip scroll_manager: fix denominator value when calculating flicking behavior. Fix to disconnect bounce animator once animation is done gather duplicated animator drop logics gather duplicated conditions Rearrange prototypes and append comment Add manipulate functions for animators scroll_manager: change member_add function. scroll_manger: apply mirroring logic scroll_manager: apply scrollbar apply API to scroller widget scroll_manager: apply scroll event callback Change logics for all about scroll animating efl_ui_pan: add efl_ui_pan scrollable: change content_min_limit to match_content scroll theme: apply overlapped scrollbar + many others! Reviewers: akanad, woohyun, cedric, jpeg Subscribers: jenkins, cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5222 Note by @jpeg: Unfortunately this patch comes in a massive single blob, after too many rebase operations. It has now come to a point where I think the API is nice and it works as I'd expect. Now I only wonder how applicable this will be for Efl.Ui.List. As we can see Photocam (legacy and unified API) could be transformed to use this new API.
2017-12-19eina: Add missing eina_internal.hJean-Philippe Andre
2017-12-18eina: make __eina_promise_cancel_all an internal only function.Cedric BAIL
2017-12-18ecore: make message_process and message_exists internal function.Cedric BAIL
2017-12-19eolian: fix use-after-free in eo_parserDaniel Kolesa
Thanks @netstar for finding this. Fixes T6523.
2017-12-18efl_ui_image: apply load_size when API is calledSungtaek Hong
Summary: when efl_image_load_size_set() is called, image only sets internal variable and not apply to the internal image. elm_image_prescale_set() is also affected. Test Plan: Run elementary_test->Image Prescale Reviewers: jpeg, eunue, woohyun Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D5645
2017-12-18efl_ui_bg_widget: replace internal image to efl_ui_imageSungtaek Hong
2017-12-18efl_ui_bg: add Efl.Ui.Bg interfaceSungtaek Hong
Summary: - Previous class efl_ui_bg moved to efl_ui_bg_widget. - Scale_type moved to efl_image from efl_ui_image. - Previous enum Efl_Ui_Image_Scale_Type moved to Efl_Image_Scale_Type. Test Plan: Run elementary_test 1.Image Scale Type 2.Efl.Ui.Bg 3.Efl.Ui.Win 4.Part Background Reviewers: jpeg, woohyun, cedric Differential Revision: https://phab.enlightenment.org/D5616
2017-12-18ecore: Avoid access to invalid eo idJean-Philippe Andre
Not a fan of the solution, as I think some of the logic handling those futures is a bit broken. I'm not 100% sure about this patch. But this improves make check with CK_FORK=no in elm_suite.
2017-12-18ecore: Simplify codeJean-Philippe Andre
2017-12-18ecore_con: Make sure the proxy helper is validJean-Philippe Andre
If the http proxy helper gets deleted at shutdown rather than because the process actually exited, the object pointer becomes invalid. This patch tries to avoid a situation where the object is not valid.
2017-12-18ecore_con: Properly shutdown and unregister log domainJean-Philippe Andre
I believe the comment saying we should not unregister the log domain is invalid as we try to flush the pending ecore events.
2017-12-18ecore_con: Always get the loop on initJean-Philippe Andre
In case of init/shutdown/init cycles, the loop EO ID has changed, so it must be fetched again.
2017-12-18ecore_con: Avoid safety errors when closing httpJean-Philippe Andre
When setting EOS on the dialoer, it's possible that it will also get automatically closed (by a callback). This results in safety check error messages, while everything is fine (at least I believe it is).
2017-12-18loop: Try harder to find the main loopJean-Philippe Andre
If the object has no parent or anything else goes a bit wrong, efl_loop_get() may fail to return the loop object. It's a bit ridiculous when we're in the main loop as we know which loop object was requested. This avoids returning NULL.
2017-12-18ecore: Avoid double free with promisesJean-Philippe Andre
2017-12-18ecore: Fix legacy message handlers destructionJean-Philippe Andre
2017-12-18eo/eina: Add HACK to avoid calls to EO after shutdownJean-Philippe Andre
Efl.Future is an EO object which means even cancelling Efl.Future objects requires EO. So this should be done before shutting down EO, otherwise everything fails badly. I believe Efl.Future is going to disappear soon, but the problem will remain: if any promise/future uses EO or anything else outside of Eina (so, basically anything) then it needs to be canceled before shutting down the above layers. This is the same situation as with ecore events, for which we've introduced ecore_event_type_flush. Ping @cedric
2017-12-18ecore: Fix clean shutdownJean-Philippe Andre
There is no good reason to not shutdown a library properly. The loop object can easily be deleted safely, if it is properly initialized. The del event happens before destruction so it is too early to set the singleton variable to NULL. Do that as late as possible and all calls to efl_loop_main_get() will work as expected. The issue with fd's was simply that they were not initialized to -1 (timer_fd), as some #ifdef statements have disappeared.
2017-12-18ecore: Fix warning with enumJean-Philippe Andre
2017-12-18Efl.Ui.Popup.Anchor: remove event callback when popup is deletedJinYong Park
Summary: When popup is deleted, popup didn't remove event callback which its parent and anchor object. So before popup destruction, detach anchor. Test Plan: elementary_test -to efl.ui.popup.anchor Reviewers: Jaehyun_Cho, herb, woohyun, jpeg, cedric Reviewed By: Jaehyun_Cho Differential Revision: https://phab.enlightenment.org/D5667
2017-12-18efl_ui_spin_button: Fix can't input number in case of the min value is ↵Woochan Lee
bigger than 1. Summary: Min Max validate logic has been changed to support decimal point counting. It makes this side effect. Test Plan: elementary_test -> efl_ui_spin_button sample. (On the min max filter enabled.) Reviewers: jpeg, Jaehyun_Cho, woohyun Reviewed By: Jaehyun_Cho Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5580
2017-12-17ecore: Additional safety for bad futuresAndy Williams
Fixes T6519
2017-12-17ecore - remove warning for win buildCarsten Haitzler (Rasterman)
2017-12-17windows build - try fix againCarsten Haitzler (Rasterman)
2017-12-17ecore main - try fix windows buildCarsten Haitzler (Rasterman)
i hope this fixes T6517
2017-12-16elm widget - remove unused vars from new shadow part codeCarsten Haitzler (Rasterman)
fill isn't used... maybe at some point someone jpeg wanted to.. but he didn't, so let's not have warnings.
2017-12-16efl loop - fix merge issue with future changes.Carsten Haitzler (Rasterman)
2017-12-16efl loop message stuff - document the eo files.Carsten Haitzler (Rasterman)
2017-12-15efl_mono: tests and better support for structs, plus some other fixesVitor Sousa
Fix several integer binding type deduction based in its size on C. Generation for function pointers no longer use modified argument name which is different from the parameter name. New generation context for structs. bool from UnmanagedType.I1 to UnmanagedType.U1 (correct use inside structs according to mono documentation). byte (signed char) and int8 now is correctly represented by sbyte in C#. Check parameter direction in some out generators in parameter.hh. Add efl_libs.csv to gitignore. Make eina.Value pointer constructor public. Add missing fields to efl.kw_event.Description struct. Remove eina.File workaround (let struct gen handle it). Remove is_function_ptr bool from regular_type_def and add a typedecl_type enum to it. Also add some helper methods for easier comparison. Left some test cases commented for when pointer parameters are properly working.
2017-12-15elementary: fix definition of EAPI.Cedric BAIL
2017-12-15eio: remove uneeded function.Cedric BAIL
2017-12-15eolian: remove now unused database init/shutdownDaniel Kolesa
2017-12-15eolian: remove remaining global state (+ modify APIs accordingly)Daniel Kolesa
2017-12-15eolian: filename retrieval APIs are read onlyDaniel Kolesa
2017-12-15eolian: make declaration APIs use unitsDaniel Kolesa
2017-12-15efl_ui_focus_manager_calc: dont use sqrtMarcel Hollerbach
We only need the order, not the exact value
2017-12-15efl_ui_focus_manager_calc: use pow instead of powerof2Marcel Hollerbach
2017-12-15eo: Fix crash with invalid objectsJean-Philippe Andre
Not a legacy fix as auto-unref is new in 1.21.
2017-12-15ecore - unify comment styleCarsten Haitzler (Rasterman)
2017-12-15eo - set opts hash to NULL after freeCarsten Haitzler (Rasterman)
2017-12-15eo - fi missed error condition if eoid passed in is NULLCarsten Haitzler (Rasterman)
in some cases construction can fail badly and this causes a crash... eoid is NULL going in and this causes a cascade of failure. survive and be more robust.
2017-12-15ecore - begin moving data into the efl loop data in the objectCarsten Haitzler (Rasterman)
we really should have data inside the loop object, so begin moving it one small thing at a time. this is the basics that will allow multiple efl loops. make an eo efl object and class for fd handlers that is efl loop bound make fd handlers really bound to their parent loop and not global as well as have a nice class/obj. create an message queue per loop and put legacy ecore events on top of it... and a lot more. this is not 100% done, but it's a lot of the core and groundwork. various ecore_timer_add(), ecore_diler_add() etc. need changes. The following still need doing: ecore_timer (internal usage for sure) ecore_idler (internal usage for sure) ecore_idle_enterer ecore_idle_exiter ecore_pollers? (is the new efl loop stuff ok?) ecore_exe (fork/spawn from any thread and track exe from that thread?) ecore_signal code ecore_throttle (should we have a single global too? we have per loop) ecore_app ? (should every loop be given its own argv/argc?) Lots of internal ecore code uses/calls these legacy calls and we should have efl loop replacements and/or use the ones we have The following will bedifferently designed for loop to loop control/messaging/ipc: ecore_thread ecore_pipe
2017-12-15Efl.Ui.Popup.Anchor: apply group calculate with size problem fixJinYong Park
Summary: Size and align calculation in Efl.Ui.Popup was advanced using group calculate, so Efl.Ui.Popup.Anchor apply it also. Test Plan: elementary_test -to efl.ui.popup.anchor Reviewers: Jaehyun_Cho, herb, jpeg, woohyun, cedric Reviewed By: Jaehyun_Cho Differential Revision: https://phab.enlightenment.org/D5655
2017-12-14eio: migrate Efl.Io.Manager.xattr_ls to use Eina_Future.Cedric Bail
2017-12-14ecore_con: move Efl.Net.Control.Access_Point to use Eina_Future.Cedric Bail
2017-12-14elm: Fix typo in copy and paste in efl_ui_list precise layouterFelipe Magno de Almeida
Fix comparison between height and width instead of width and width. CID 1383711
2017-12-14evas: forgotten adjustement to handle the output geometry offset.Cedric Bail
2017-12-14eolian: remove _cunit and prepare for returning actual unitsDaniel Kolesa