Commit Graph

57009 Commits

Author SHA1 Message Date
Mykola Solyanko ea63f487d3 Eldbus: add test suite for eldbus (eldbus_pending_data*)
Summary:
add tests for next API:
eldbus_pending_data_set()
eldbus_pending_data_get()
eldbus_pending_data_del()

Reviewers: cedric, NikaWhite, myoungwoon, raster, artem.popov

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5650
2017-12-19 14:42:56 +09:00
Mykola Solyanko 346e9a1904 Eldbus: add test suite for eldbus (eldbus_pending_cancel*)
Summary:
add tests for next API:
eldbus_pending_cancel()
eldbus_pending_destination_get()
eldbus_pending_interface_get()
eldbus_pending_method_get()
eldbus_pending_path_get()

Reviewers: cedric, NikaWhite, myoungwoon, raster, artem.popov

Subscribers: jpeg

Differential Revision: https://phab.enlightenment.org/D5660
2017-12-19 14:41:22 +09:00
Jean-Philippe Andre 43c0122dd6 examples: Fix compilation (cxx bg & table)
See 25136ddf8c
See 0f16a06710

Note: This only fixes compilation, not runtime!
2017-12-19 14:36:54 +09:00
Jean-Philippe Andre f2b13e4a21 scroll: Fix a warning (and probably the logic too) 2017-12-19 14:25:08 +09:00
Lauro Moura 54c09d64f6 eolian_cxx: Fix cxx build after evt changes
Summary: Examples and libeolian_cxx api changes

Reviewers: jpeg, felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5673
2017-12-19 14:25:08 +09:00
Yeongjong Lee 434e7b4470 efl_ui_spin_button: remove needless focus_set
Summary:
because _entry_show_cb callback call focus_set function,
efl_ui_focus_manager_focus_set is unnecessary.
also, this fixes focus error message.

Test Plan:
1. elementary_test -to Efl.Ui.Spin.Button
2. click the entry.

Reviewers: CHAN, Jaehyun_Cho, bu5hm4n

Reviewed By: CHAN

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D5641
2017-12-19 14:25:08 +09:00
SangHyeon Lee 0f16a06710 interface : change efl_pack_grid and efl_ui_grid to efl_pack_table and efl_ui_table
Summary:
Change name of 'grid' to 'table' for matching on common ui naming
and avoiding confusion with 'gengrid' and 'grid view'.
grid will be introduced as grid image view after.

Test Plan:
checked make & make install
checked make check - there are errors but not related with these changes.
checked make examples - there are errors in cxx but not related with these changes.
checked make discheck - failed
test in elementary_test with Efl.Ui.Table and Table_static.

Reviewers: raster, cedric, jpeg, felipealmeida

Differential Revision: https://phab.enlightenment.org/D5668
2017-12-19 14:25:08 +09:00
Jean-Philippe Andre 85b2a8669a ecore: Shutdown ecore after running tests
Those test cases should verify that the threads have exited cleanly, and
then we can shutdown ecore.

CK_FORK=no ecore_suite passes
2017-12-19 13:53:09 +09:00
Jean-Philippe Andre c8a28b9780 ecore: Properly shutdown pollers 2017-12-19 13:44:33 +09:00
Jean-Philippe Andre cb20ad9f53 ecore: Fix up some test cases
- Add missing ecore_shutdown
- Reinstate supposedly silly test case (see previous commits, the main
  loop object can in fact die cleanly).
- Disable really silly test cases (inner main loops aren't meant to
  work)
2017-12-19 12:21:29 +09:00
Jean-Philippe Andre ff24ac2d6d efl: Reset ecore event types on init
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-19 11:14:37 +09:00
Wonki Kim 47bf356435 scroller: Introducing Efl.Ui.Scroller
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-19 10:26:25 +09:00
Jean-Philippe Andre 29ce7550eb eina: Add missing eina_internal.h 2017-12-19 10:20:18 +09:00
Cedric BAIL 90f30ea418 eina: make __eina_promise_cancel_all an internal only function. 2017-12-18 16:17:04 -08:00
Cedric BAIL 29d4cb864b ecore: make message_process and message_exists internal function. 2017-12-18 16:10:11 -08:00
Daniel Kolesa 03e77ea361 eolian: fix use-after-free in eo_parser
Thanks @netstar for finding this.

Fixes T6523.
2017-12-19 00:20:40 +01:00
Sungtaek Hong a2309c5083 efl_ui_image: apply load_size when API is called
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-18 20:49:46 +09:00
Sungtaek Hong 81ba035f69 efl_ui_bg_widget: replace internal image to efl_ui_image 2017-12-18 20:49:45 +09:00
Sungtaek Hong 25136ddf8c efl_ui_bg: add Efl.Ui.Bg interface
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-18 20:49:45 +09:00
Jean-Philippe Andre 147ef4f91d ecore: Avoid access to invalid eo id
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-18 19:54:31 +09:00
Jean-Philippe Andre 06fea06c86 ecore: Simplify code 2017-12-18 19:54:31 +09:00
Jean-Philippe Andre fce444bb18 ecore_con: Make sure the proxy helper is valid
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-18 19:54:31 +09:00
Jean-Philippe Andre c0c5e72408 ecore_con: Properly shutdown and unregister log domain
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-18 19:54:31 +09:00
Jean-Philippe Andre 81bad9f47c ecore_con: Always get the loop on init
In case of init/shutdown/init cycles, the loop EO ID has changed, so it
must be fetched again.
2017-12-18 19:54:31 +09:00
Jean-Philippe Andre a90746378d ecore_con: Avoid safety errors when closing http
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-18 19:54:31 +09:00
Jean-Philippe Andre 784a5b56a3 loop: Try harder to find the main loop
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-18 19:54:31 +09:00
Jean-Philippe Andre fed8123448 ecore: Avoid double free with promises 2017-12-18 19:54:31 +09:00
Jean-Philippe Andre 796b1dd566 ecore: Fix legacy message handlers destruction 2017-12-18 19:54:31 +09:00
Jean-Philippe Andre 5dbfb7961f eo/eina: Add HACK to avoid calls to EO after shutdown
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-18 19:54:31 +09:00
Jean-Philippe Andre 9427862d40 ecore: Fix clean shutdown
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-18 19:54:31 +09:00
Jean-Philippe Andre b6eeed74bb ecore: Fix warning with enum 2017-12-18 19:54:31 +09:00
JinYong Park e8735068ac Efl.Ui.Popup.Anchor: remove event callback when popup is deleted
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-18 14:08:09 +09:00
Woochan Lee 845d6d1b57 efl_ui_spin_button: Fix can't input number in case of the min value is 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-18 13:23:32 +09:00
Daniel Kolesa 7ae1030383 eolian cxx: pass state when getting decls 2017-12-17 23:08:07 +01:00
Andy Williams a34aca27a0 ecore: Additional safety for bad futures
Fixes T6519
2017-12-17 14:38:19 +00:00
Carsten Haitzler 679d41fc3c ecore - remove warning for win build 2017-12-17 16:27:08 +09:00
Carsten Haitzler 52c9c0e939 windows build - try fix again 2017-12-17 16:03:33 +09:00
Carsten Haitzler 4abe5d90e4 ecore main - try fix windows build
i hope this fixes T6517
2017-12-17 15:07:37 +09:00
Carsten Haitzler 90d0f695b4 elm widget - remove unused vars from new shadow part code
fill isn't used... maybe at some point someone jpeg wanted to.. but he
didn't, so let's not have warnings.
2017-12-16 12:09:52 +09:00
Carsten Haitzler 24d43f2f48 efl loop - fix merge issue with future changes. 2017-12-16 12:09:52 +09:00
Carsten Haitzler d9e149eb4d efl loop message stuff - document the eo files. 2017-12-16 12:09:52 +09:00
Vitor Sousa 00fb5b228a eolian_mono: fix handling of regular ptr() types 2017-12-15 22:26:30 -02:00
Vitor Sousa b55542889b efl_mono: fix test and example compilation on Windows 2017-12-15 22:26:30 -02:00
Vitor Sousa acd99be98b efl_mono: tests and better support for structs, plus some other fixes
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-15 22:26:29 -02:00
Cedric BAIL b20dd869a4 elementary: fix definition of EAPI. 2017-12-15 15:48:17 -08:00
Cedric BAIL fa0ba4c0c9 eio: remove uneeded function. 2017-12-15 09:45:48 -08:00
Andy Williams 5937b1a3de docs: link to the module list in legacy docs
This should improve visibility of stuff that is not specifically
mentioned on the home page
2017-12-15 17:22:31 +00:00
Daniel Kolesa 373392d56e eolian: remove now unused database init/shutdown 2017-12-15 17:11:11 +01:00
Daniel Kolesa 18e18ca74c eolian: remove remaining global state (+ modify APIs accordingly) 2017-12-15 17:11:11 +01:00
Daniel Kolesa d624464ab4 eolian: filename retrieval APIs are read only 2017-12-15 17:11:11 +01:00