Commit Graph

24571 Commits

Author SHA1 Message Date
Cedric BAIL ddccd9e306 evas: destructor can not be called recursively, we should rely on Eo refcount. 2018-05-24 16:02:19 -07:00
Cedric Bail d052f001be eo: move destruction of the link with children to be always after invalidate. 2018-05-24 16:02:19 -07:00
Cedric Bail 3a1fe14742 eo: propagate invalidate before destroying the link to the parent. 2018-05-24 16:02:19 -07:00
Cedric Bail 91cd4f7c0c evas: actually we do not even need to NULL it, if we wref it. 2018-05-24 16:02:19 -07:00
Cedric Bail 3347db4bea edje: do not reparent when the object is dead already. 2018-05-24 16:02:19 -07:00
Cedric Bail a3c91d14a9 eo: improve message for debugging life cycle issues. 2018-05-24 16:02:19 -07:00
Cedric Bail f49ccff71d edje: forgot to propagate invalidate upward. 2018-05-24 16:02:19 -07:00
Lauro Moura 02f77eb092 cxx: Fix examples after part changes
Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-24 16:02:19 -07:00
Lauro Moura 969efc6399 examples: Elm: Add dependency on efl.la due to efl_part
Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-24 16:02:19 -07:00
Lauro Moura f510d536a4 efl_mono: Fixes after efl_part/del changes.
Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-24 16:02:19 -07:00
Cedric Bail bff5c37c1b ecore_evas: we shouldn't do anything when we are deleted. 2018-05-24 16:02:19 -07:00
Cedric Bail 741f3e39ed evas: preserve evas_object_del logic to not really destroy an object until it is fully unref first. 2018-05-24 16:02:19 -07:00
Cedric Bail c2e8b492b1 evas: enforce legacy parent to be the canvas. 2018-05-24 16:02:19 -07:00
Cedric Bail f44511d0f9 elementary: refactor by using elm_legacy_add. 2018-05-24 16:02:19 -07:00
Cedric Bail b482107a19 evas: add a way to figure out the evas class that should be the real parent for all legacy object. 2018-05-24 16:02:19 -07:00
Cedric BAIL f29e1db94b elementary: make toolbar 'more_item' properly self destruct. 2018-05-24 16:02:19 -07:00
Cedric BAIL 2ce788063a elementary: no need to recalculate the layout during invalidate. 2018-05-24 16:02:19 -07:00
Cedric BAIL 9e0f9539dd elementary: the pan object of the map object was created with efl_add, adjust accordingly. 2018-05-24 16:02:19 -07:00
Cedric BAIL 0fe3b7962d elementary: due to lifecycle difference between legacy object and unified object, we need to track their lifecycle more explicitely.
It is my understanding that some items view are created with efl_add directly
and manipulate VIEW directly with Eo new API. This clash with the inconsistent
behavior that evas_object_del expect. To work around this, we track object life
by explictely relying on efl_wref_add while holding the pointer to the object.
2018-05-24 16:02:19 -07:00
Cedric BAIL 0239099d01 eo: efl_del should not be something anyone can override this can break so many things.
Allowing override of efl_del allow for messing with object life cycle which can create
problem for binding where an object was expected to be invalidated, but isn't really.
2018-05-24 16:02:19 -07:00
Cedric BAIL 30d02a7410 evas: try to protect old legacy lifecycle without overloading Efl.Del. 2018-05-24 16:02:19 -07:00
Cedric BAIL 590304d597 eio: properly handle Eio.Model lifecycle inside Elm.Fileselector.
Differential Revision: https://phab.enlightenment.org/D6107
2018-05-24 16:02:18 -07:00
Cedric BAIL c753fc793b elementary: dayselector use efl_add to create the object, calling efl_del during destructor make no sense.
Differential Revision: https://phab.enlightenment.org/D6106
2018-05-24 16:02:18 -07:00
Cedric BAIL 1991900fd6 elementary: no need to check for part during destruction.
Differential Revision: https://phab.enlightenment.org/D6105
2018-05-24 16:02:18 -07:00
Cedric BAIL 6476896ec5 elementary: no need for resize an object during destruction.
Differential Revision: https://phab.enlightenment.org/D6104
2018-05-24 16:02:18 -07:00
Cedric BAIL 2508c1a3ae elementary: colorselector item are created with efl_add, so they are dead when they reach the destructor.
Differential Revision: https://phab.enlightenment.org/D6103
2018-05-24 16:02:18 -07:00
Cedric BAIL dbbcfa4a59 elementary: small correction in the API of Efl.Access.Object to have proper lifecycle.
This API require more review, I have just fixed API that return type that are
inconsistent over time and fail to allow for proper lifecycle of event, which
lead to crash when those event trigger at unexpected point.

Differential Revision: https://phab.enlightenment.org/D6102
2018-05-24 16:02:18 -07:00
Cedric BAIL fe14abd929 evas: refactor efl_input_event and remove some of the lifecycle hack.
Differential Revision: https://phab.enlightenment.org/D6101
2018-05-24 16:02:18 -07:00
Cedric BAIL c447b61756 eo: actually during invalidating we already have an invalidated object.
Differential Revision: https://phab.enlightenment.org/D6100
2018-05-24 16:02:18 -07:00
Cedric BAIL 4c9a33a388 eo: move EFL internal function ___efl_ref2 also to eo_internal.h
Differential Revision: https://phab.enlightenment.org/D6099
2018-05-24 16:02:18 -07:00
Cedric BAIL 8a513a522e efl: major rewrite of efl_part.
The interface efl_part_get should not be directly called from C, but the efl_part
wrapper should. It rely on efl_noref to properly destroy the object. Binding can
control the lifecycle of the reference the way they want by either calling the
wrapper or efl_part_get directly. It also means that the ugly ___efl_auto_unref_set
doesn't need to be exposed outside of EFL anymore.

Differential Revision: https://phab.enlightenment.org/D6098
2018-05-24 16:02:18 -07:00
Cedric BAIL c28eb28728 eo: check for allow_parent_unref during efl_unref and silence warning.
Differential Revision: https://phab.enlightenment.org/D6097
2018-05-24 16:02:18 -07:00
Cedric BAIL dcfddcd283 eo: make sure efl_noref is always called at the proper time.
Differential Revision: https://phab.enlightenment.org/D6096
2018-05-24 16:02:18 -07:00
Cedric BAIL 79e4947f3e eo: add an automatic fallback at the moment when efl_unref instead of efl_del is called.
Differential Revision: https://phab.enlightenment.org/D6095
2018-05-24 16:02:18 -07:00
Cedric Bail c1cef1e74b elementary: object created with efl_add should be destroyed with efl_del.
Differential Revision: https://phab.enlightenment.org/D6094
2018-05-24 16:02:18 -07:00
Cedric Bail 0135b23e45 elementary: object allocated with efl_add should be destroyed with efl_del.
Differential Revision: https://phab.enlightenment.org/D6093
2018-05-24 16:02:18 -07:00
Cedric Bail aaa827c2d2 eldbus: fix unref of eldbus to not throw warning all over the place.
Especially to note, that when giving a message to send, the caller
do not own it anymore and should not unref it.

Differential Revision: https://phab.enlightenment.org/D6092
2018-05-24 16:02:18 -07:00
Cedric Bail 6e078edaa9 eldbus: manage death of children during invalidate.
Differential Revision: https://phab.enlightenment.org/D6091
2018-05-24 16:02:18 -07:00
Cedric Bail 71cd44c176 eldbus: object created with efl_add should be destroyed with efl_del.
Differential Revision: https://phab.enlightenment.org/D6090
2018-05-24 16:02:18 -07:00
Cedric Bail 6bb450d7ee ecore: first invalidate the loop and its children, then destroy all the object capability.
Differential Revision: https://phab.enlightenment.org/D6089
2018-05-24 16:02:18 -07:00
Cedric BAIL 93a49da161 eo: optimize efl object reuse by limiting the amount of call to pointer translation.
Differential Revision: https://phab.enlightenment.org/D6088
2018-05-24 16:02:18 -07:00
Cedric BAIL ae5d0005d3 edje: properly handle lifecycle of edje global object.x
Differential Revision: https://phab.enlightenment.org/D6087
2018-05-24 16:02:18 -07:00
Cedric BAIL ef6cac1476 eo: prevent parenting to an already invalidated parent.
Differential Revision: https://phab.enlightenment.org/D6086
2018-05-24 16:02:18 -07:00
Cedric BAIL 546a4c79e0 eo: only call efl_parent_set(NULL) at the end of invalidate if the object is not invalidating.
Add also a comment to justify why we do force parent to NULL during invalidate.

Differential Revision: https://phab.enlightenment.org/D6085
2018-05-24 16:02:18 -07:00
Cedric BAIL 69c9d5bb50 ecore_con: correct lifecycle of object used by Efl.Net.Dialer.Ssl.
Differential Revision: https://phab.enlightenment.org/D6084
2018-05-24 16:02:18 -07:00
Cedric BAIL 594c254183 ecore_con: trigger teardown during invalidate.
Delaying teardown might result in code expecting parent to still be valid,
especially call to efl_provider_find won't work anymore.

Differential Revision: https://phab.enlightenment.org/D6083
2018-05-24 16:02:18 -07:00
Cedric BAIL e46369a569 ecore_con: it is best to call the super destructor and not touch the object anymore after.
Differential Revision: https://phab.enlightenment.org/D6082
2018-05-24 16:02:18 -07:00
Cedric BAIL 67e48c679d ecore_con: correct a typo wrongly calling super destructor instead of super invalidate.
Differential Revision: https://phab.enlightenment.org/D6081
2018-05-24 16:02:18 -07:00
Cedric BAIL 7ca25cae0f ecore: correct lifecycle of object used by Ecore_Con legacy.
Differential Revision: https://phab.enlightenment.org/D6080
2018-05-24 16:02:18 -07:00
Cedric BAIL 56fb2cf377 eo: improve error message by pointing to the class that is creating trouble.
Differential Revision: https://phab.enlightenment.org/D6079
2018-05-24 16:02:18 -07:00
Cedric BAIL bb66aa37ca eo: preventing infinite loop by safely iterating over children during destructor.
Differential Revision: https://phab.enlightenment.org/D6078
2018-05-24 16:02:18 -07:00
Cedric BAIL 93893def9f ecore: properly handle shutdown of Efl.Loop children by using invalidate.
Differential Revision: https://phab.enlightenment.org/D6077
2018-05-24 16:02:18 -07:00
Cedric BAIL 23281bc54a ecore: disable signal during shutdown.
Differential Revision: https://phab.enlightenment.org/D6076
2018-05-24 16:02:18 -07:00
Cedric BAIL 2160fe0d4d eo: invalidate at the end of efl_invalidate only and prevent infinite recursion with an invalidating phase.
Differential Revision: https://phab.enlightenment.org/D6075
2018-05-24 16:02:18 -07:00
Cedric BAIL 266dabc096 ecore: force close during invalidate of Efl.Io.Buffered_Stream.
Differential Revision: https://phab.enlightenment.org/D6074
2018-05-24 16:02:18 -07:00
Cedric BAIL 0ac6e47697 elementary: use invalidate instead of overriding del for widget items.
Differential Revision: https://phab.enlightenment.org/D6073
2018-05-24 16:02:18 -07:00
Cedric BAIL 95f8bf2ebd elementary: rely on inheritance instead of faking efl_del behavior.
Differential Revision: https://phab.enlightenment.org/D6072
2018-05-24 16:02:18 -07:00
Cedric BAIL b265c5c887 elementary: make del_pre not return a bool and force rely on Eo ref counting.
Differential Revision: https://phab.enlightenment.org/D6071
2018-05-24 16:02:18 -07:00
Cedric BAIL a669fb820a elementary: prevent death of list item using Eo ref counting.
Differential Revision: https://phab.enlightenment.org/D6070
2018-05-24 16:02:18 -07:00
Cedric BAIL ad009667b5 elementary: remove now useless walking in item.
Differential Revision: https://phab.enlightenment.org/D6069
2018-05-24 16:02:18 -07:00
Cedric BAIL 4b30a7df8e elementary: use Eo ref counting to prevent death of genlist items.
Differential Revision: https://phab.enlightenment.org/D6068
2018-05-24 16:02:18 -07:00
Cedric BAIL 2a51465593 elementary: use Eo ref counting to prevent death of gengrid items.
Differential Revision: https://phab.enlightenment.org/D6067
2018-05-24 16:02:18 -07:00
Mike Blumenkrantz 6932f0fdd6 elm_list: prevent list item operations during item deletion
ref T6880

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>

Differential Revision: https://phab.enlightenment.org/D6066
2018-05-24 16:02:17 -07:00
Mike Blumenkrantz 499beb9162 elm_list: fix crash in item deletion
this is still broken

ref T6881

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>

Differential Revision: https://phab.enlightenment.org/D6065
2018-05-24 16:02:17 -07:00
Cedric BAIL ccb5642eb9 Revert "efl_add_ref - fis to use efl_add properly with a parent."
This reverts commit 2fb5cc3ad0.

Most of this change where wrong as they didn't affect the destruction
of the object. efl_add_ref allow for manual handling of the lifecycle
of the object and make sure it is still alive during destructor. efl_add
will not allow you to access an object after invalidate also efl.parent.get
will always return NULL once the object is invalidated.

Differential Revision: https://phab.enlightenment.org/D6062
2018-05-24 16:02:17 -07:00
Cedric Bail 36f8a70041 eo: to avoid mistake in timing, efl_invalidate should always be triggered before any destructor code.
Differential Revision: https://phab.enlightenment.org/D6061
2018-05-24 16:02:17 -07:00
Marcel Hollerbach 0090384ef5 elm_ctxpopup: prevent a giant load of errors
Summary:
i)  There have been 2 sorts of errors, first the items have been deleted
    after the list was deleted, thus the list items have already been
    destructed. which lead to the error as the popup items destroyed the list
    items on destruction as well.

ii) sd->box was attached to the ctxpopup when getting into group_del the
    box has already been destroyed by the cleanup logic.

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6166

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-24 16:02:17 -07:00
WooHyun Jung ea1760380e elm_main: call _elm_config_shutdown() after loop_iterate()
In _elm_config_shutdown(), _elm_config is freed.
So, if some ecore events call efl_ui_xxx API which refers _elm_config,
there can be crashes.

@fix
2018-05-24 15:30:29 +09:00
Cedric BAIL 9dce56687b eina: path get actually allocate memory and can't be pure. 2018-05-23 21:33:04 -07:00
Marcel Hollerbach d5fd76c190 efl_ui_focus_composition: track the deletion state of child objects
Reviewers: cedric, zmike

Reviewed By: cedric

Subscribers: #committers, cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6186

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-05-23 21:16:01 -07:00
Lauro Moura 54f1e56b34 efl_mono: Generate support for accessors in .eos
Summary: Depends on D6190

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6191
2018-05-23 18:59:26 -03:00
Lauro Moura cfafd01bbe efl_mono: Initial support for Accessors.
Summary:
Plain conversion to IEnumerable, which is the base of LINQ
Depends on D6189

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6190
2018-05-23 18:59:26 -03:00
Lauro Moura 2bbaada66e efl_mono: Reject the promise when it's disposed.
Summary:
As futures are tied to a given promises and are usually handled in
a 'attach and forget' scheme, we can't cancel them as it would cancel
the whole chain.

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6189
2018-05-23 18:59:26 -03:00
Mike Blumenkrantz b7530726c8 ecore-evas-buffer: defer resize callback until pre-render
Summary:
this mimics other engines, all of which have the same mechanics due
to display server interactions. it also avoids unnecessary recalcs before
pre-render if the canvas size was changing repeatedly

fix T6924
ref D6019

Reviewers: cedric, JackDanielZ

Reviewed By: JackDanielZ

Subscribers: #committers, JackDanielZ

Tags: #efl

Maniphest Tasks: T6924

Differential Revision: https://phab.enlightenment.org/D6145
2018-05-23 17:35:18 -04:00
Lauro Moura c4572d3f79 efl_mono: Fix events after Event_Description rename. 2018-05-23 17:33:47 +02:00
Xavi Artigas e5ef9057b5 efl: rename Efl.Ui.Zoom.Mode -> Efl.Ui.Zoom_Mode 2018-05-23 17:33:47 +02:00
Xavi Artigas 61b409015e efl: rename Efl.Ui.Widget.Orientation_Mode -> Efl.Ui.Widget_Orientation_Mode 2018-05-23 17:33:47 +02:00
Xavi Artigas e31b3213ec efl: rename Efl.Ui.Text.Change_Info -> Efl.Ui.Text_Change_Info 2018-05-23 17:33:47 +02:00
Xavi Artigas 4ab7e3fda0 efl: rename Efl.Ui.Tab_Page.* -> Efl.Ui.Tab_Page_* 2018-05-23 17:33:47 +02:00
Xavi Artigas a7d29f7185 efl: rename Efl.Ui.Stack.Event_* -> Efl.Ui.Stack_Event_* 2018-05-23 17:33:47 +02:00
Xavi Artigas ee27519432 efl: rename Efl.Ui.Slider.Indicator_Visible_Mode -> Efl.Ui.Slider_Indicator_Visible_Mode 2018-05-23 17:33:47 +02:00
Xavi Artigas a0d4d3b140 efl: rename Efl.Ui.Pager.Loop -> Efl.Ui.Pager_Loop 2018-05-23 17:33:47 +02:00
Xavi Artigas 1e8b7cc405 efl: rename Efl.Ui.Focus.Composition.Adapter -> Efl.Ui.Focus.Composition_Adapter 2018-05-23 17:33:47 +02:00
Xavi Artigas cd349762c6 efl: rename Efl.Ui.Drag.Dir -> Efl.Ui.Drag_Dir 2018-05-23 17:33:47 +02:00
Xavi Artigas 761aaa269d efl: rename Efl.Ui.*_Legacy.Part -> Efl.Ui.*_Legacy_Part 2018-05-23 17:33:47 +02:00
Xavi Artigas d808147e6f efl: rename Efl.Text.Bidirectional_Type -> Efl.Text_Bidirectional_Type 2018-05-23 17:33:47 +02:00
Xavi Artigas 0f47f53f57 efl: rename Efl.Task.* -> Efl.Task_* 2018-05-23 17:33:47 +02:00
Xavi Artigas 0e848ccf2d efl: rename Efl.Selection.* -> Efl.Selection_* 2018-05-23 17:33:47 +02:00
Xavi Artigas f78c5f3e6c efl: rename Efl.Observable.Tuple -> Efl.Observable_Tuple 2018-05-23 17:33:47 +02:00
Xavi Artigas f477d4ad36 efl: rename Efl.Net.*.* -> Efl.Net.*_* 2018-05-23 17:33:47 +02:00
Xavi Artigas 92bf45bf7c efl: rename Efl.Input.Device.Type -> Efl.Input.Device_Type 2018-05-23 17:33:47 +02:00
Xavi Artigas 88e92a63ed efl: rename Efl.Gfx.*.* -> Efl.Gfx.*_* 2018-05-23 17:33:47 +02:00
Xavi Artigas 8e0e1b702e efl: rename Efl.Gfx.Color_Class.Layer -> Efl.Gfx.Color_Class_Layer 2018-05-23 17:33:47 +02:00
Xavi Artigas 4396687b6c efl: rename Efl.Exe.* -> Efl.Exe_* 2018-05-23 17:33:47 +02:00
Xavi Artigas 029f0769a5 efl: rename Efl.Event.Description -> Efl.Event_Description 2018-05-23 17:33:47 +02:00
Xavi Artigas 7a427b3bfc efl: rename Efl.Event.Animator_Tick -> Efl.Event_Animator_Tick 2018-05-23 17:33:47 +02:00
Xavi Artigas 18ae917be6 efl: rename Efl.Canvas.Gesture.* -> Efl.Canvas.Gesture_* 2018-05-23 17:33:47 +02:00
Xavi Artigas 3e8b809999 efl: rename Efl.Canvas.Object.Animation.* -> Efl.Canvas.Object_Animation_* 2018-05-23 17:33:46 +02:00
Xavi Artigas 57b078f3df efl: rename Efl.Canvas.Animation.* -> Efl.Canvas.Animation_* 2018-05-23 17:33:46 +02:00
Hermet Park 9fcd03952e evas: fix a map rendering problem.
When map of a smart object is turned off, redraw-updation area could be incorrect.
This results in a mirror image problem.

for fixing this, let smart object request update-area in render_pre() properly only in case of map changed.

Thanks to akanad for reviewing together.

@fix
2018-05-23 22:58:57 +09:00
YeongJong Lee 495edbd995 elm: fix backward compatibility for "default" name part
Summary:
If you use legacy content/text set/get/unset with "default" part name,
_elm_layout_part_aliasing_eval change the part name to "elm.swallow.content".
Because internal _content_set/get/unset checked only "default" string,
legacy content/test set/get/unset with "default" part name was not working.
This patch fixes that bug.

Test Plan: elm_object_part_content/text_set(obj, "default", content)

Reviewers: Jaehyun_Cho, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6185
2018-05-23 19:35:18 +09:00
Mike Blumenkrantz efe5f92377 efl_ui_win: always force resize job on first pre-render
Summary:
ensure that a resize eval occurs after the frame edje has been thawed
so that sizing will be correct in engines which either still have
broken size handling (D6019) or have sub-optimal size handling (D6145)

Reviewers: bu5hm4n, cedric

Reviewed By: bu5hm4n

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6165
2018-05-23 10:28:06 +02:00
Jihoon Kim 379ee0d0db elm_entry: add elm_entry_prediction_hint_hash_set/del API
elm_entry_prediction_hint_hash_set API sets the prediction hint data at the specified key, and
elm_entry_prediction_hint_hash_del API is for deleting the prediction hint data identified by a key.

@feature

Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
2018-05-23 11:27:34 +09:00
Derek Foreman 249ae8e5f0 ecore_wl2_window: Silence early commit ERR for mouse cursors
Summary:
Our wayland mouse cursor code can trigger commits with commit pending
when mousing into a window across CSD, which results in quickly setting
the default cursors then an animated resize cursor before the first commit
has finished.

Fixing this is non trivial, and the bug is just a harmless inefficiency
of little impact, so just disable the ERR for that specific case instead.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6184
2018-05-22 12:33:36 -04:00
Daniel Kolesa 1673b620b0 eolian: push missing event type changes in tests 2018-05-21 20:32:57 +02:00
Woochan Lee 428d74ebc1 efl_ui_tags: Fixed bug when setting format string.
Summary:
efl_ui_format_string_set was not working well.

Changed default format text. ("++++ %d" text for test only.)

@fix

Reviewers: Jaehyun_Cho, cedric, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6044
2018-05-20 03:58:41 +09:00
Woochan Lee 976b9d877e efl_ui_spin: Added special value feature.
Summary:
User may want to set as meanignful words for the value instead of numberic value.

@feature

Test Plan: elementary_test->test_ui_spin_button.

Reviewers: cedric, woohyun, Jaehyun_Cho, herb

Reviewed By: Jaehyun_Cho

Subscribers: zmike, felipealmeida, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5969
2018-05-20 03:11:55 +09:00
Daniel Kolesa 175b25ab2e eolian: integrate event type requirement into eo file grammar 2018-05-19 01:49:06 +02:00
Daniel Kolesa f747df69f9 eolian: force-enable event type checks
Now that event types have all been fixed, force-enable the
validation check.
2018-05-19 01:45:38 +02:00
Xavi Artigas 35bbedc96f efl: Add missing event types
Summary:
All events must have a type now, otherwise bindings don't know how to handle
the event_info field.
Most of the missing event types were actually "void" (no event_info present).
Some struct definitions had to be moved to eo instead of h files, so they
are available to bindings. Some have not, and are marked with FIXME.
Some namespaces have been fixed (like Efl_Event_Cb -> Efl.Event_Cb).

In general, there are hundreds of changed files, but mostly to add a type which
was not present before, so there's no harm done.
Also, A lot of FIXMEs have been added which should be, like, fixed.
For example, some events can send different types of event_info, which is
very inconvenient (and error prone).

Test Plan: make with c# bindings works, make check and make examples work too.

Reviewers: cedric, q66, lauromoura

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6169
2018-05-19 01:42:26 +02:00
YeongJong Lee 6fdc3794eb ecore_con: add check for invalid space("") name
Summary:
space("") name check had existed, but it was removed on f4306d654d
(in the _efl_network_connector_efl_object_finalize)
This patch restore the safety checks

Reviewers: barbieri, Hermet, Jaehyun_Cho, myoungwoon, zmike

Reviewed By: zmike

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6177
2018-05-18 13:47:04 -04:00
Derek Foreman 27316746f5 ee_wayland: Fix device leak on disconnect
Summary:
A reference was taken on these when they were added, so by passing NULL
here we're not allowing that reference to be dropped.  This results in
not only leaking the device forever, but also potentially leaving it as
a default device after it's removed so that no new attach will replace it.

Under weston all devices are removed on a VT switch, and when you switch
back the default device is wrong, which leads to problems with events
like "mouse in" which, for legacy reasons, don't take a seat, but
instead look up the default seat.

This allows the delete callback to be fired for the first time ever,
and while I've tried to fix some bugs this has revealed, I'm not
actually sure I've caught them all.
Depends on D6182

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6183
2018-05-18 13:46:47 -04:00
Derek Foreman 83e1a456a4 evas_main: Fix deleting pointer data
Summary:
This appears to be called from a delete callback that takes place well
after the eo parent relationship is deleted, however
efl_input_device_get_seat() finds the seat by finding the parent.  That
will always be NULL during this callback, so we'll leak the data.

Instead, search all seats for the pointer.
Depends on D6181

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6182
2018-05-18 13:46:36 -04:00
Derek Foreman 250b69c239 evas_device: Only remove pointer data on deletion of pointer devices
Summary:
This delete callback is shared for mouse, pointer, touch, and seat.  We
should only delete pointer data when we're called on a pointer.

Note that (at least under wayland) this particular bug is irreproducible
right now because, due to a ref leak, this deletion callback can never
fire.
Depends on D6180

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6181
2018-05-18 13:46:31 -04:00
Derek Foreman 7df3299070 efl_input_device: Fix seat_get
Summary: This was testing the same thing twice.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6180
2018-05-18 13:46:28 -04:00
SangHyeon Lee ebdb3b71a1 cursor: fix ABI break in widget item cursor APIs
Summary:
fix ABI break in widget item cursor APIs
by efl_ui_cursor interface implementing.

item's view were not elementary widget mostly,
reimplementing efl_ui_cursor on efl_ui_widget
cannot resolve item's cursor API call.

Test Plan:
check,
elm_object_item_cursor_XXX
API is working properly on elm_object_item.

Reviewers: cedric, jpeg, raster

Reviewed By: raster

Subscribers: stefan_schmidt, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6046
2018-05-19 01:21:12 +09:00
Xavi Artigas 5d1898dd9e eo: do not expose callback,add and del events in bindings
These events have been removed from efl_object.eo. Bindings can
still use the EFL_EVENT_CALLBACK_ADD and EFL_EVENT_CALLBACK_DEL
events from C, but they won't be available to the bound language.
The rationale is that bound languages probably will have their
own way to handle callbacks and C function pointers will mean
very little to them. For example, the binding code could route
the native callback through a dispatcher so the received
function ptr would always be that of the dispatcher method.

Closes D6179.
2018-05-18 16:45:11 +02:00
Lauro Moura e1cb483643 efl_mono: Remove callback,add from event tests.
Test Plan: make check

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6178
2018-05-18 11:17:38 -03:00
Lauro Moura c8fbc31ee2 efl_mono: Start generating eina future in eolian_mono.
Summary:
Besides the normal methods returning Futures, we now generate
a wrapper with the "Async" suffix. This wrapper returns a
Systems.Threading.Tasks.Task which can be awaited on and reflect the
status of the Future.

When an eina.Future fails with ECANCELED, TaskCanceledException is
raised in the Task. Otherwise, an efl.FutureException(eina.Error) is
raised.
Depends on D6174

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6175
2018-05-17 16:56:31 -03:00
Lauro Moura fff0c86d99 efl_mono: Initial support for Futures/Promises
Summary:
Promise/Future cleanup:

In the promises, we use a wrapper Eina_Promise_Cancel_Cb to
invalidate the wrapper if it ever gets cancelled from outside. When
invalidating from C#, we can do it directly.

For the futures, likewise, in order to be able to invalidate the
wrapper when the chain it belongs to gets resolved we then() an
internal future with a callback to invalidate the wrapper we return to
C#. The return of this intermediate then() is the future we actually
return to the user.

Also added ECANCELED to the list of default eina.Errors
Depends on D6173

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6174
2018-05-17 16:56:25 -03:00
Lauro Moura 95c8a7d28c efl_mono: Fix eldbus warnings and typo.
Summary: Depends on D6172

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6173
2018-05-17 16:56:18 -03:00
Lauro Moura f8a033fd70 efl_mono: Add support for Eina.Error/Empty in eina.Value
Summary:
eina.Value.Empty now means that we have an zeroed (empty) eina value.
For optional values that are empty use eina.Value.OptionalEmpty.

This was required to support the empty values passed with
EINA_VALUE_EMPTY in some Ecore futures.

Also, returning an eina_value by value is not supported in eolian
for safety reasons, so we removed some tests that tried to use this
behavior.
Depends on D6171

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6172
2018-05-17 16:56:11 -03:00
Lauro Moura 2b8cbfe2f4 efl_mono: Add documentation tag in part decl
Summary: Depends on D6170

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6171
2018-05-17 16:56:02 -03:00
Lauro Moura bafa91be20 efl_mono: Fix generation of event arguments
Summary:
Event argument was getting its type name from another path, different
from the type_generator.

In later commits the other functions from name_helpers should use the
type_generator too.

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6170
2018-05-17 16:55:52 -03:00
Daniel Kolesa 42baaa046d eolian: add code to run static checks but don't enable yet
This adds code to run the Eolian static checker as part of tests,
but considering how many failures there are at this point, does
not enable it. Once they're all fixed, it can be enabled by
removing the #if 0.
2018-05-17 16:11:03 +02:00
Hosang Kim ec670e9a22 efl_ui_scrollable: apply scroll_hold_push/pop and scroll_freeze_push/pop
Test Plan: elementary_test -> Efl.Ui.Scroller -> move slider

Reviewers: jpeg, woohyun, akanad, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: zmike, Jaehyun_Cho, eagle001, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5796
2018-05-17 18:17:44 +09:00
Youngbok Shin f17cae08e6 evas textblock: manage default style properly for new interfaces
Summary:
Calling efl_canvas_text_style_set() with empty key means
setting a default style to object. But, it counldn't store style
as default properly. It caused a crash issue from elementary_test.
@fix

Test Plan:
New test case is included. Run test suite. Or,
1. Run elementary_test
2. Find and launch "Image Zoomable animation" test.
3. Close the image test window.
4. See the crash issue.

Reviewers: raster, herdsman, jpeg, cedric, zmike

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5692

Committer's note: rebased and removed unrelated test.
2018-05-16 22:24:11 +03:00
Youngbok Shin f437a3075a evas textblock: update format nodes when a Evas Textblock Style is updated
Summary:
A style tag among a text has to be replcaed by its matched tag when
a format node is created. If the matched tag is changed, format nodes
should be updated.
But, if a style text for Evas Textblock Style is changed,
related format nodes are not updated without setting new text.
The patch changes to update format nodes when new style text is set.
@fix

Test Plan: Included in Evas Test Suite.

Reviewers: raster, tasn, herdsman, subodh6129, zmike

Subscribers: zmike, cedric, z-wony, Blackmole

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D4697

Committer's note: rebased.
2018-05-16 22:24:11 +03:00
Marcel Hollerbach 5de88592bc efl_ui_win: hand-ref-count the provider object
Summary: Depends on D6108

Reviewers: cedric

Reviewed By: cedric

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6109
2018-05-16 13:30:33 -04:00
Marcel Hollerbach a218c883c7 Introduce efl_ui_widget_focus_manager
Summary:
The mixin encapsulates the correct
- creation
- composition attaching
- Lifecycle handling

of the focus managers that are assosiated with the object.

This fixes error messages on shutdown, and additionally lifetime issues
where the composite_attached object was deleted before the object was
deleted.

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: segfaultxavi, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6108
2018-05-16 13:30:28 -04:00
Wonki Kim f1c03000c9 Modify initial visibility of a extn_socket
Summary:
extn socket should be rendered even if it is not visible to answer client's requests

extn_socket was rendered even if it's not visible for the first render.
however, it's not rendered as expected because there has been changes for ecore evas idle enterer.
so that this patch changes visibility of extn_socket to answer client's requests immediately.

ref D6054

Reviewers: zmike, jypark

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6167
2018-05-16 11:41:27 -04:00
Wonki Kim d92b195fe2 ecore_evas_extn: Remove aka latch logic on fn_prepare function
Summary:
current extn_socket_prepare function logic could run into dead-end
because extnbuf_lock return null on failure of taking a lock.

this patch removes aka latch logic that guide the function to dead-end.

Reviewers: cedric, raster, zmike, jypark

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6054
2018-05-16 11:41:19 -04:00
Stefan Schmidt 5be9b1929e build: ensure we delete all new check-results*xml files
When we split up the tests to run them in parallel we also created a lot
more xml report files. Make sure we delete them when cleaning up.
Nicely spotted by distcheck by complaining about non removed files.
2018-05-16 17:03:51 +02:00
SubodhKumar b8c691ebd2 edje: Fix to support translation for textblock part
Summary:
Text translation in edc for textblock is missing.
Added to support it.

@fix

Reviewers: cedric, zmike

Reviewed By: cedric, zmike

Subscribers: shilpasingh, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6164
2018-05-15 12:44:29 -04:00
Daniel Kolesa ba31824a86 eolian: more useful namespace checks with no false negatives 2018-05-15 16:42:01 +02:00
Daniel Kolesa d26b6d0f22 eolian: initial simple namespace conflict check 2018-05-15 16:25:23 +02:00
Xavi Artigas 048adae83d Eo: introduce convenience macro efl_new()
Summary:
This is just a wrapper around efl_add_ref() with a NULL parent.
It only simplifies a bit object creation when no parent is desired, but it
simplifies a lot the explanation of the refcounting concepts (and tutorials).

Reviewers: cedric, bu5hm4n

Reviewed By: cedric, bu5hm4n

Subscribers: bu5hm4n, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6024
2018-05-15 09:53:24 -04:00
Andy Williams 114873c545 remove potential double free 2018-05-15 14:49:41 +01:00
Andy Williams 767c211e70 Add missing continue keyword from Go definition 2018-05-15 14:49:04 +01:00
Marcel Hollerbach cfc66c08a1 evas: error out when there appeared a object while a new one is focused
Summary:
this is on the one side error prone and race, as reacting to a focus out
with a new focused object leads to weird cases. On the other side we are
then using eina hash wrong which leads to later weirdness as the element
that is assosiated with &key is broken.

Reviewers: raster, zmike, stefan_schmidt, cedric

Reviewed By: zmike

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6158
2018-05-15 09:32:20 -04:00
Hosang Kim 19833657e8 elm_slider: fix test suite fail
Summary: change legacy widget name.

Reviewers: Jaehyun, stefan_schmidt, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6162
2018-05-15 20:13:06 +09:00
Jaehyun Cho bce7e7d0d7 examples: Fix slider cxx example based on Efl.Ui.Slider
Unlike Elm_Slider, Efl.Ui.Slider does not support text_set,
format_cb_set, and format_string_set.
To support Efl.Ui.Slider, slider cxx example is modified.
2018-05-15 20:03:20 +09:00
Hosang Kim 5db61e4d64 efl_ui_slider: refactor slider widget.
Test Plan: elementary_test -> Efl.Ui.Slider, Efl.Ui.Slider_Interval, slider

Reviewers: woohyun, cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: zmike, cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5908
2018-05-15 14:16:00 +09:00
Mike Blumenkrantz 9c7f5ca33b elm: use build dir data when EFL_RUN_IN_TREE is set
Summary:
this prevents tests from loading user configs and providing inconsistent
results or accidentally modifying a user's config

fix T6863
Depends on D6013

Reviewers: cedric, stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: stefan_schmidt

Tags: #efl

Maniphest Tasks: T6863

Differential Revision: https://phab.enlightenment.org/D6014
2018-05-14 18:26:21 +02:00
Marcel Hollerbach 8c14de8541 edje_cc: do not keep the filedescriptor
we have a limited number of filedescriptors available, a theme can
consist out of a number of groups with scripts, keeping the fd for later
use is going above the maximum number of open files, thus use the path
of the file, not the fd to access the file.

fix  T6922

Differential Revision: https://phab.enlightenment.org/D6159
2018-05-14 17:26:28 +02:00
Jaehyun Cho 1ea2f75015 elm_multibuttonentry: Fix to install eo header files
Move elm_multibuttonentry and its sub eo files to the correct location
in Makefile_Elementary.am to install eo header files.

@fix
2018-05-14 22:26:10 +09:00
SubhransuSekhar Mohanty bdca8f0c71 edje: return proper value from the function.
@fix
2018-05-14 13:26:54 +09:00
Alastair Poole a92b80ff86 elm_code: add EOAPI to refresh theme after a user layout change.
Hopefully this retains the object hierarchy. Gives us a method
to update the widget theme after a layout change.
2018-05-13 17:16:13 +01:00
Daniel Kolesa 577c00789a eolian: second batch of unused import removals
This fixes all remaining occurences introduced by false negatives
in 6bcd70f01d. The rest was already
fixed in 6be3809c04.
2018-05-13 18:13:12 +02:00
Daniel Kolesa 6bcd70f01d eolian: fix false negatives in unused dependency static checker
It is not necessary to check entire classes/typedecls/variables
when referenced, as that also checks their contents and adds
false negatives. It is enough to simply add their own unit
as a 'used' dependency and let the system do the work, besides
for actual declarations in the checked file.
2018-05-13 18:10:37 +02:00
Daniel Kolesa 6be3809c04 eolian: first batch of unused import removals
Initial results of our static analysis showed a bunch of unused
imports or imports used only for documentation references. In the
first case, remove entirely, in the second case, change to 'parse'
in order to keep references working.

The static analysis is not perfect and yields false negatives for
certain cases, so there will be a second batch later.
2018-05-13 17:28:47 +02:00
Daniel Kolesa 1f4f7e8597 eolian: cycle checks for all toplevel decls in static analyzer
This is necessary because e.g. typedecls can introduce cycles into
the system by self-referencing in struct field expressions.
2018-05-13 17:06:12 +02:00
Daniel Kolesa a923a94f85 eolian: always validate entire staging area
This is necessary even when parsing a single file because there
may be parsed results directly in the staging area introduced by
doc references, those wouldn't get correctly validated and would
be left in an inconsistent and unusable state.
2018-05-13 17:06:12 +02:00
Daniel Kolesa b8b94cbfb8 elua: add check API to eolian bindings 2018-05-13 17:06:12 +02:00
Daniel Kolesa e50aa5e1c9 eolian: check does no changes, so take a const state 2018-05-13 17:06:12 +02:00
Alastair Poole 4d61374872 elm_code_widget: on theme change update the background widget.
This ensures consistency between the colours of the widget and
its parent. When theme changes the whole visible region changes
and matches so that it isn't bogus and ugly.
2018-05-13 13:43:08 +01:00
Lauro Moura da6f5932f1 efl_mono: Support type aliases.
Summary:
Due to the absence of typedef from C#, we generate thin structs with
implicit operators to allow reference the data from their typedef'd name
from C#.

The other alternatives would be always converting to the lowest base on
the alias stack (losing the meaningfulness of the typedef name) or using
the 'using' directive. The latter has the restriction that it makes an
alias visible only in the file they are declared.

Reviewers: felipealmeida, cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6157
2018-05-11 11:01:59 -03:00
Daniel Kolesa 95e3468aee eolian: introduce initial out-of-validation static checking
For now this checks for validity of explicitly imported
dependencies in eo/eot files. It will warn if the dependency
is unused.
2018-05-11 14:02:36 +02:00
Carsten Haitzler b6a772cb27 elm test - progress - add vertical wheel test...
yes. in theory it can exist, so add a test for it. because for flat
theme i actually have an idea where vrtical vs horizontal do look
different and the theme already procvided both via an alias and code
would use them if needed... so... why not?
2018-05-11 17:27:33 +09:00
SubhransuSekhar Mohanty fd24998fa6 edje_cc: Fix coverity issue of accessing invalid memory. 2018-05-11 13:49:23 +09:00
WooHyun Jung 1b15c67c63 edje_cc: resolve possible dereferencing freed pointer 2018-05-11 10:44:55 +09:00
Marcel Hollerbach 6c25b38a1c elm_toolbar: only use the more_item if mode is correct
the more item is only usefull for SHRINK_MENU and SHRINK_EXPAND,
otherwise the item should not be there.
2018-05-10 13:34:39 +02:00
Marcel Hollerbach dda350e3b4 evas: introduce a log domain to monitor which object gets focus 2018-05-10 13:34:32 +02:00
Marcel Hollerbach 8e104d5bfe efl_ui_focus_manager_root_focus: restructure state eval
registering and unregsitering caused a few issues.
- Relations are recalculated even if they should not be
- We unfocus a element just to refocus it again
- We loose any iinformation about custom chains that have been set meanwhile

This fixes it
2018-05-10 13:34:17 +02:00
Marcel Hollerbach 05d4f0b256 efl_ui_focus_manager_root_focus: support a custom canvas object 2018-05-10 13:34:03 +02:00
Wonki Kim fef2a12ef6 ecore_evas_extn: Modify not to send a message if there is nothing to draw
Summary:
Seding ipc messages on ews_update_image(which is invoked as a callback of EVAS_RENDER_POST)
can makes ecore main loop awake, because sending ipc messages makes message_queue not empty.

so that this patch prevent seding ipc logic if there is nothing to draw.

Reviewers: cedric, raster

Reviewed By: raster

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6055
2018-05-09 23:58:48 +09:00
Carsten Haitzler 9cf5b97a8a ecore - dont rely on commons merge for func ptr
use a proper extern delcaration to do this not a extern func ptr.
fixes compile errors with lto on.
2018-05-09 23:58:48 +09:00
Daniel Kolesa 3685bcd61d eolian: add optional warnings about events missing a type
Set the EOLIAN_EVENT_NO_TYPE_WARN environment variable to enable
those warnings during Eolian usage. They will be considered a part
of the validation then.

Use the void type for events to suppress the warning.
2018-05-09 15:44:36 +02:00
Yeongjong Lee 6c252fc16c efl_ui_widget: use efl_data_scope_safe_get instead of macro
Summary: This macro isn't actually as safe as this safe data_get.

Reviewers: woohyun, Jaehyun_Cho

Subscribers: cedric, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6133
2018-05-09 10:19:38 +09:00
Derek Foreman 0ef79bb941 ecore_wl2: complain loudly when move or resize doesn't provide a seat
Summary:
We now have the ability to provide the seat information properly, so
fire off an ERR if a caller doesn't.
Depends on D6131

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6132
2018-05-08 13:27:00 -05:00
Derek Foreman 1e2626a70c ee_wayland: retain seat names when creating a new canvas
Summary:
We were creating seats with silly arbitray names like seat-11 when
creating a new canvas.
Depends on D6130

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6131
2018-05-08 13:26:57 -05:00
Derek Foreman 23d5ee88d5 ecore_wl2: warn on unused result from ecore_wl2_input_seat_id_get
Summary:
Make it harder to misuse this function in the future.
Depends on D6129

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6130
2018-05-08 13:26:54 -05:00
Derek Foreman 1ced5e65fd efl_selection: return wayland seat id if present
Summary:
We looked it up, we probably wanted to return it?
Depends on D6128

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6129
2018-05-08 13:26:50 -05:00
Derek Foreman ed60eddff5 ecore_wl2: Fix window drag mouse eventing
Summary:
When a CSD button interaction under wayland leads to a compositor action
like move or resize, we essentially "give back" that button press to the
compositor, and it never sends us a mouse up for it.

We need to internally fire a mouse up event to fix up state so the client
doesn't think the mouse is still down.  Until now we've been doing this
by setting a flag when we start a move/resize and checking it at next
pointer enter for the window.

This leads to unsolvable races and wacky bookkeeping, and runs afoul of
the fact that we're not actually guaranteed a pointer enter immediately
after a move completes.  There is absolutely no way at all on wayland to
know if a move or resize operation has completed.

So, let's just fire the mouse up immediately on start of interaction,
which is raceless.

This fixes a years old bug where dragging a window might leave a stuck
mouse up, and allow hilighting text without drag after the window drag
completes.  (elementary-test -to "text editor" with multiple windows open
exhibits this bug)
Depends on D6127

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6128
2018-05-08 13:26:46 -05:00
Derek Foreman f78ff5f445 ecore_wl2: Remove ecore_wl2_input_grab/ungrab
Summary:
These should never be called, so they shouldn't be API.

This kind of internal state fiddling should happen implicitly in the
API that need it.

@beta_break
Depends on D6126

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6127
2018-05-08 13:26:42 -05:00
Derek Foreman 83f2f086a5 efl_selection_manager: Stop calling ecore_wl2_input_ungrab
Summary:
This "ungrab" thing appears to just send a mouse up event in some
situations.

This already happens at *start* of drag, so at best calling it again will
do nothing, and at worst it'll break input.
Depends on D6125

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6126
2018-05-08 13:26:39 -05:00
Derek Foreman 4f720657d2 efl_ui_win: Pass seat info for wayland move/resize
Summary:
In wayland we need to know which seat initiated the CSD compositor move
request to properly handle input.
Depends on D6124

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6125
2018-05-08 13:26:35 -05:00
Derek Foreman 1729cbe33e efl_ui_win: Directly call ecore_wl2 move and resize functions
Summary:
These ecore_evas_wayland things seem like they shouldn't exist.  The
ecore_wl2 api is better and still in beta so it can be fixed when it's
shown to be broken/wrong as the ecore_evas_wayland ones are. :(

The move API is stuck with x, y co-ordinates that can never make sense,
and neither API is capable of passing seat info.
Depends on D6123

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6124
2018-05-08 13:26:30 -05:00
Derek Foreman abe295735a ee_wayland: clean up warnings
Summary:
Pretty sure these are my fault.
Depends on D6122

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6123
2018-05-08 13:26:25 -05:00
Derek Foreman 684d6a69d6 ee_wayland: remove edges flag
Summary:
Nothing needs this anymore.
Depends on D6121

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6122
2018-05-08 13:26:22 -05:00
Derek Foreman af9ae04eda ee_wayland_shm: Remove resize flag
Summary:
This hasn't been useful in a very long time.
Depends on D6120

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6121
2018-05-08 13:26:18 -05:00
Derek Foreman cadf0728fd ee_wayland_egl: Remove some amazing weirdness
Summary:
I don't even know what to put here, but I'll try.

wl_egl_window_resize()'s final two parameters indicate new attachment
points for a buffer relative to the previous top left corner.  When the
compositor is resizing a window it already handles the corner placement.
Fortunately, compositors seem to ignore the new attach co-ords during
resize, so this code hasn't broken anything.  It's just a complicated
NOP.

The new attachment points are intended for use in spontaneous resize,
not drag resize, but the only time these functions are called is for
drag resize.
Depends on D6119

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6120
2018-05-08 13:26:12 -05:00
Derek Foreman 77f946a92c elm_win: Remove move stop callback
Summary:
This is only fired to trigger a cursor set under wayland, but that cursor
set should be done unconditionally on mouse in.

However, mouse in was being discarded because mouse out was being deferred
when the window was "grabbed" for moving.

If instead we just let the mouse out occur as it should, the cursor
is properly updated on mouse in.
Depends on D6118

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6119
2018-05-08 13:25:54 -05:00
Derek Foreman cad847cf13 edje: Send seat name to all seat emitted events
Summary:
We now send the name of the seat (if available) to legacy and seat events
so the callbacks can query them via the new seat data api.

This isn't quite what I wanted, but it's enough to fix the ecore_wl2
input problems for now.  When multi-seat is a usable thing we can rework
these bits.
Depends on D6117

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6118
2018-05-08 13:25:46 -05:00
Derek Foreman ad5db090ab edje: Add beta api for seat_data_get
Summary:
Currently this is only to help wayland CSD function correctly, so the
opaque pointer is very poorly defined.
Depends on D6116

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6117
2018-05-08 12:26:36 -05:00
Derek Foreman be7f692ea5 edje: Emit extra/seat data from programmed signal emits
Summary:
Now if we generate an event in response to an event with seat data we
automatically carry the seat data with the emitted event.

This allows something like elm,action,move,start to have seat data
attached.

NB: Since extra and seat data share the same structs, extra data such as
the data from edje_entry is similarly propagated as a side effect.
Depends on D6115

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6116
2018-05-08 12:26:20 -05:00
Derek Foreman 1982046315 edje: Pass extra signal data to program_run
Summary: Depends on D6114

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6115
2018-05-08 12:26:13 -05:00
Derek Foreman 6d4f78d676 edje: Add edje_emit_full_data
Summary:
This is an even fuller emit_full, that takes a pre-made signal data
struct.  The original edje_emit_full is now implemented as a call to it.
Depends on D6113

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6114
2018-05-08 12:26:08 -05:00
Derek Foreman e12498f4d4 edje: Add seat data to extra data struct
Summary:
Since the extra data struct is already nicely refcounted, it's easy to
add the seat data to it instead of making a new struct with almost
identical code.
Depends on D6112

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6113
2018-05-08 12:26:02 -05:00
Derek Foreman da8127e1f8 edje: Create signal extra data before calling _edje_emit_send
Summary:
Steps towards recursively sending these.
Depends on D6111

Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6112
2018-05-08 12:25:56 -05:00
Derek Foreman d21ff733df edje: Factor out signal extra data setup code
Reviewers: zmike, cedric

Reviewed By: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6111
2018-05-08 12:25:51 -05:00
Marcel Hollerbach 03c20cc758 elm_toolbar: flush out the items once one is hidden
ref T6806
2018-05-08 12:07:31 +02:00
Marcel Hollerbach 69c2e6f0e6 efl_ui_focus_manager: unset redirect instead of wrefing it
so focus is restored correctly
2018-05-08 11:50:04 +02:00
Marcel Hollerbach fa9aff8f70 efl_ui_focus_manager_calc: do not restore focus when redirect is set
When there is a redirect there is no need to adjust the focus property
based on a unregister, so just continue and cleanup the history. When
the redirect is unset the focus is restored.

fix T6908
2018-05-08 11:50:04 +02:00
Cedric BAIL 790b17673f eio: delay tests until we have started listing some files. 2018-05-07 09:55:55 -07:00
Cedric BAIL b8cf656bd3 eina: actually it make more sense to do the check for EINA_VALUE_EMPTY inside eina_value_type_get. 2018-05-07 09:46:42 -07:00
Cedric BAIL 2b489d5627 eina: allow EINA_VALUE_EMPTY for Eina_Future as Eina_Value. 2018-05-07 09:34:04 -07:00
Youngbok Shin fa8aa7c9c8 evas textblock: remove NULL checking after dereferencing
Summary:
c->paragraphs couldn't be NULL if it is created by
_layout_paragraph_new() well. So, NULL checking should be
moved to after _layout_paragraph_new().

Test Plan: N/A

Reviewers: jpeg, tasn, raster, herdsman, cedric

Subscribers: zmike, stefan_schmidt, jpeg

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D4300
2018-05-06 12:01:41 +03:00
Youngbok Shin 73c39bcf12 Evas textblock: fix wrong hyphenation issues with non UTF8 encoded dictionary
Summary:
hnj_hyphen_hyphenate2() needs properly encoded text based on the given
dictionary. Each dictionary contains its encoding information at the head
of file. So, text will be converted to proper encoding before calling
the function. It fixes T3221.
@fix

Test Plan: Included in Evas test suite.

Reviewers: z-wony, tasn, woohyun, herdsman, Blackmole, minudf

Subscribers: zmike, stefan_schmidt, raster, cedric, jpeg

Tags: #efl

Maniphest Tasks: T3221

Differential Revision: https://phab.enlightenment.org/D3863
2018-05-06 12:01:41 +03:00
Youngbok Shin c33ef15d5d evas textblock: fix double free issue from user style push/pop and free
Summary: The Textblock Style which is created for user style was managed
application side.  It is created and free'd from application - outside
of Evas Textblock.  Recently, evas_object_textblock_style_user_push/pop
start to call efl_canvas_text_style_set() instead of legacy code. The
problem is efl_canvas_text_style_set() is always going to call free()
when a style is going to be deleted.  It makes conflicts(double free
issue) with application which is used to call
evas_textblock_style_free().  So, the issue will be fixed by this patch.

The patch also revise push/pop/peek code to make clean and avoid
meaningless calculation/events.

@fix

Test Plan:
A test case is Included in this patch.
The test case try to trigger double free.

Reviewers: herdsman, raster, cedric

Subscribers: zmike, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D5812

Committer's note: formatted commit summary (80 width).
2018-05-06 12:01:41 +03:00
Cedric BAIL 380c45722b elementary: unreak non tree mode for fileselector.
The model can outlive the item which resulted in keeping a dead reference in the model.
2018-05-05 21:27:31 -07:00
Cedric BAIL e8df3515d7 eio: on error/cancel properly destroy weak reference. 2018-05-05 21:15:55 -07:00
Cedric BAIL 382079bccd eio: cancel idler on Eio.Model destruction properly. 2018-05-05 21:15:24 -07:00
Cedric BAIL 90c2e05788 eina: Eina_Future as Eina_Value can also be cancelled. 2018-05-05 21:04:20 -07:00
Myoungwoon Roy, Kim 2733277b2a evas_main: fix structually dead code
Summary: Fix structually dead code in evas_main owing to wrong #ifdef EVAS_CSERVE2 definition

Test Plan: Execute test suite

Reviewers: raster, Hermet, cedric, jpeg, stefan_schmidt, Jaehyun_Cho

Reviewed By: raster

Subscribers: zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6053
2018-05-05 12:02:34 +09:00
Cedric BAIL d84a268a71 eio: do not call efl_model_child_del at the end of build_st as that might result in the destruction of files. 2018-05-04 16:23:01 -07:00
Mike Blumenkrantz 2951473a59 tests: optimize eio tests
Summary:
by removing the sleep() calls and reducing timeout time, tests remain
as accurate while taking less than 5% of the required time to run

fix T6914

Reviewers: stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: cedric

Tags: #efl

Maniphest Tasks: T6914

Differential Revision: https://phab.enlightenment.org/D6047
2018-05-04 14:39:23 +02:00
junsu choi c1f5d64511 elm_object : Support to translatable_part_text of legacy widget
Summary:
this commit supports aliasing of legacy widget
about translatable_part_text_set/get.

Test Plan:
elm_object_domain_translatable_part_text_set(btn, "default", NULL, "sample_text");
const char* text = elm_object_translatable_part_text_get(btn, "default");

Reviewers: cedric, herb, id213sin, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6056
2018-05-04 20:34:29 +09:00
Chris Michael 3920247ff6 elementary: Fix eina_safety return val
The function that this is used in returns Eina_Bool, but the safety
check was returning NULL
2018-05-04 07:07:41 -04:00
Lauro Moura fe7106d460 efl_mono: Update tests and examples after rename
Summary:
Separated from the generator and libs for easier review
Depends on D6050

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6051
2018-05-03 18:04:41 -03:00
Lauro Moura 4636d6e0eb efl_mono: Change generated classes naming scheme
Summary:
Now the generated classes use an approach more familiar to C#
developers:

Interfaces: efl.Object -> efl.IObject

Concrete (implementation) classes: efl.ObjectConcrete -> efl.Object.

During this change, some methods that could clash with the
implementation class name (CS0542) had the prefix "Do" added (like in
efl.Duplicate.Duplicate() and efl.Pack.Pack()).
Depends on D6049

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6050
2018-05-03 18:04:41 -03:00
Lauro Moura c9dd86579f efl_mono: More uniformization of the handling of names
Summary:
Uses a common helper to open and close namespaces, to get the managed
and unmanaged name of things, the interface, concrete and inherit class
names, etc.

eolian_cxx: Add namespace information to func_def, as it'll avoid
eolian-cxx clients dealing with the eolian C api directly when trying
to access a function pointer namespace.
Depends on D6048

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6049
2018-05-03 18:04:41 -03:00
Lauro Moura f39baf1e82 elm: Use ck_assert_str_eq for better error logging
Summary: It was introduced in libcheck 0.9.6, before our minimum 0.9.10.

Reviewers: felipealmeida, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6048
2018-05-03 18:04:41 -03:00
Mike Blumenkrantz da13878cc2 efl_ui_focus_manager_calc: resolve shadow warning
Summary:
lib/elementary/efl_ui_focus_manager_calc.c: In function ‘node_item_free’:
lib/elementary/efl_ui_focus_manager_calc.c:208:20: warning: declaration of ‘n’ shadows a previous local [-Wshadow]
         Eina_List *n;
                    ^
lib/elementary/efl_ui_focus_manager_calc.c:197:10: note: shadowed declaration is here
    Node *n;
          ^

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6020
2018-05-03 16:13:30 -04:00
Daniel Kolesa f58bdbf23a eolian: switch Eina.Future instances to future<T> 2018-05-03 17:14:39 +02:00
Daniel Kolesa 3a55fe0bbf eolian: allow void and non-ownable types in future 2018-05-03 17:14:39 +02:00
Daniel Kolesa c116695311 eolian: add builtin type for Eina_Future 2018-05-03 17:14:39 +02:00
Daniel Kolesa cc744596b3 eolian gen: remove unused promise variables 2018-05-03 17:14:39 +02:00
Daniel Kolesa 0a399be7b0 eolian: add source file for the future static checker 2018-05-03 17:14:39 +02:00
Daniel Kolesa f5c85daca7 eolian: add API that will allow for additional static analysis
Currently this API does nothing.
2018-05-03 17:14:39 +02:00
Mike Blumenkrantz 35a600c2d0 tests: parallelize evas mesh tests
Summary:
ref T6857
Depends on D5912

Reviewers: stefan_schmidt

Subscribers: cedric

Maniphest Tasks: T6857

Differential Revision: https://phab.enlightenment.org/D5913
2018-05-03 15:04:57 +02:00
Stefan Schmidt 7c24975015 build: include newly created blacklist.hpp in dist
Added in 473d5b79c5, the build systemw as
never made aware of this file. make sure we do, so it can land in dist.
2018-05-03 14:43:38 +02:00
Stefan Schmidt 9ad14a190b build: include newly created efl_ui_focus_graph.h file in dist
This header file was newly created in 258b96be35
Autotools need to made aware of it so it will actually land in the dist
or a distcheck run will break with:
../../../src/lib/elementary/efl_ui_focus_graph.c:9:10: fatal error: efl_ui_focus_graph.h: No such file or directory
2018-05-03 14:43:37 +02:00
Stefan Schmidt 99864df317 build: fix indent in elm makefile 2018-05-03 14:43:37 +02:00
Jaeun Choi 473755fd66 efl_ui_image: add NULL check in elm_image_memfile_set() function
return EINA_FALSE if the data source is NULL elm_image_memfile_set()

@fix
2018-05-03 20:46:56 +09:00
Carsten Haitzler be770d37fb efl ui fmt - make strbuf simpler and dont use printf to avoid warnings
if someone turns on a lot of warning flags this is a warning (fals as
the string is checked already for having a static format - no fmt
flags, thus printf is valid).
2018-05-03 14:22:23 +09:00
Bryce Harrington 16fd04cc94 eina: Revise documentation for eina_hash_foreach
Summary: Reword description to clarify what it does.

Reviewers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6022
2018-05-02 19:46:00 -04:00
Bryce Harrington 43aac2f7de eina: Clarify bezier documentation
Summary:
Adds documentation about internals of a couple functions and cleans up
some stray doxygen tags.

Reviewers: cedric

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6039
2018-05-02 19:45:35 -04:00
Bryce Harrington ea52774fbd eina: Improve documentation for Eina Matrix functions
Summary:
Adds documentation for several routines, fixes some incorrect
documentation, cleans up grammar throughout, corrects a few remaining
spelling errors.

Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D6021
2018-05-02 19:44:56 -04:00
Bryce Harrington cefd8018a5 eina: Move include file to top
Reviewers: cedric

Differential Revision: https://phab.enlightenment.org/D6038
2018-05-02 19:44:25 -04:00
Godly T.Alias e72cf7b0a4 Genlist: Test Cases for Genlist Item Show on Launch
Summary:
This includes test cases for the Genlist Item Show Changes ( D5428 )

Signed-off-by: Godly T.Alias <godlytalias@yahoo.co.in>

Test Plan: Elementary Test -> Genlist Item Show

Reviewers: SanghyeonLee, cedric, raster, prince.dubey

Subscribers: shilpasingh, rajeshps, jpeg

Differential Revision: https://phab.enlightenment.org/D5499
2018-05-02 19:16:50 -04:00
Mike Blumenkrantz 4d62d59978 ecore-evas-win32: set draw_block until the window receives a configure event
Summary:
drawing a window before receiving a configure event results
in an unsized window, breaking spec. it also prevents ecore-evas resize
callbacks from triggering, yielding undefined returns from functions which
attempt to get the geometry of the ecore-evas

ref T6907

@fix

Depends on D6033

Reviewers: vtorri

Reviewed By: vtorri

Subscribers: cedric

Maniphest Tasks: T6907

Differential Revision: https://phab.enlightenment.org/D6034
2018-05-02 15:57:26 -04:00
Mike Blumenkrantz 061d665e50 ecore-win32: propagate WM_SIZE event
Summary:
this is the event which informs an app of its current size

also use the HWND from the msg pointer to avoid invalid access in
the WM_SIZE event which passes different message data

Reviewers: vtorri

Reviewed By: vtorri

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6033
2018-05-02 15:57:22 -04:00
Mike Blumenkrantz 78c2f1e659 efl_ui_win: ignore attempts to resize window to 0x0 during frame sizing
Summary:
in many cases, a 0x0 size is found here as a result of various quirks at
different states of window initialization. passing 0x0 will clamp the size
to 1x1 and, for some engines, create a race condition during initial
sizing which causes the window not to render

ref T6907

Reviewers: cedric, ManMower, vtorri

Reviewed By: vtorri

Subscribers: raster, stefan_schmidt

Tags: #efl

Maniphest Tasks: T6907

Differential Revision: https://phab.enlightenment.org/D6016
2018-05-02 15:57:21 -04:00
Cedric Bail 94d9a0fd24 elementary: fix fileselector tree mode to properly nest files into directory. 2018-05-02 10:46:34 -07:00
Xavi Artigas 5d1e1bf3ae Update docs for efl_add() and efl_add_ref()
Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6023

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-05-02 10:46:34 -07:00
Cedric Bail 9c23ffb675 Revert "edje_cc: fix default color_class colors"
This reverts commit d83ebb6980.

Had to revert this as it break backward compatibility with what theme
expect to be the default value. We could reintroduce this with a version
check if necessary.

T6885
2018-05-02 10:46:34 -07:00
Cedric Bail c3072e77e6 eio: prevent asynchronous destruction of object while thread is still running. 2018-05-02 10:46:34 -07:00
Marcel Hollerbach b2437c0339 efl_ui_focus_graph: add a new way for calculating relations
this fixes the testsuite, and brings better relations back.
2018-05-02 19:20:23 +02:00
Youngbok Shin cd0bd865eb edje: fix backward compatibility issue caused by legacy cursor funcs
Summary:
edje_object_part_text_cursor_prev/next/up/down has return value.
It has to return EINA_TRUE when only it successed.
But, when these funcs moved to legacy, it changed to return EINA_TRUE
whenever it fails or success. It must return EINA_FALSE when it fails.
@fix

Test Plan:
- Run test suite
  make check

Reviewers: herdsman, raster, cedric, woohyun

Subscribers: zmike

Differential Revision: https://phab.enlightenment.org/D5972
2018-05-02 19:48:46 +03:00
Mike Blumenkrantz f1d411db2f eio: fix windows build
Summary: S_ISSOCK does not exist because sockets do not exist

Reviewers: vtorri, cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6035
2018-05-02 12:26:24 -04:00
Bowon Ryu 67045ea28a efl_ui_tab_pager: add Efl.Ui.Tab_Pager and related classes
Summary:
the basic concept of Efl.Ui.Tab_Pager is similar to elm_toolbar.
user can attach Efl.Ui.Tab_Bar to the tab_pager.
user can create an Efl.Ui.Tab_Page to add tab label, tab icon and set the content of the page.
user can pack Efl.Ui.Tab_Page into tab_pager.
The tab and page match one to one.
user can controls tab and page through tab_pager.

See T5317

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: cedric, woohyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: eunue

Differential Revision: https://phab.enlightenment.org/D5988
2018-05-02 21:11:41 +09:00
Jaehyun Cho b8de04d77f efl_ui_tags: Change part names based on proper namespace 2018-05-02 19:35:14 +09:00
Woochan Lee 8c6ae23c86 Introduce Efl.Ui.Tags(changed from elm_multibuttonentry)
Summary:
https://phab.enlightenment.org/T5358

Create new concept of adding items and rename widget to tags.

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6008
2018-05-02 17:23:46 +09:00
YeongJong Lee fe94d2c106 elm_entry: remove legacy docs for "validate" signal
Summary:
"validate" singal is not supported in legacy.
only ELM_ENTRY_EVENT_VALIDATE is working.

Reviewers: herdsman

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5854
2018-05-01 17:18:48 -04:00
Marcel Hollerbach d1a89cfd9d efl_ui_focus_manager_calc: partly revert 3571b35a30
And document why this must be, so the same error is not done again :)

fix T6908
2018-05-01 20:27:07 +02:00
Marcel Hollerbach dc57abfafd efl_ui_focus_manager: remove partners field 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 258b96be35 efl_ui_focus: move graph calculation to seperated file 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 9669ca9ab9 efl_ui_focus_manager_calc: prepare the tree when we attempt to move 2018-05-01 20:27:07 +02:00
Marcel Hollerbach 7c9afc6d7b elm: remove unused vars 2018-05-01 20:27:07 +02:00
Marcel Hollerbach b5baa68c88 elm_focus_legacy: fix cycling in legacy windows 2018-05-01 20:26:41 +02:00
Marcel Hollerbach ad3d741fa0 elm_focus_legacy: remove useless function
it was only used in one place and had a wrong name.
2018-05-01 20:26:41 +02:00
Marcel Hollerbach f75bce9597 elm_focus_legacy: only search widget mapping on elm_widgets
fix T6909
2018-05-01 20:26:41 +02:00
Chris Michael 66a5126d97 elementary: Remove unused variable 2018-05-01 13:50:41 -04:00
Chris Michael 0d34987438 elementary: Remove unused variable 2018-05-01 13:49:42 -04:00
Chris Michael 25835c6c5c elementary: Remove unused variable 2018-05-01 13:49:01 -04:00
Cedric BAIL cdbbaede7e efl: remove old Efl_Future, Efl_Promise. 2018-05-01 10:39:01 -07:00
Cedric BAIL a34a733b7b eio: remove last remnant of Efl_Promise. 2018-05-01 10:39:01 -07:00
Cedric BAIL 52bd0be9b7 eolian_js: remove reference to Efl_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL 894c2e6c8c ecore: remove BETA thread API integration with old Efl_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL 042de32421 eolian: remove old support for Efl_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL e8e6fe1d8d eio: xattr eio manager tests to allocate for Eina_Future*. 2018-05-01 10:39:01 -07:00
Cedric BAIL ea7d33e7bd eo: remove tests for old Efl_Future, but leave infra in place for testing later new Eina_Future.x 2018-05-01 10:39:01 -07:00
Lauro Moura 473d5b79c5 efl_cxx: remove eolized promises from the CXX bindings
Summary:
Also added a blacklist header to temporarily disable generation of eo
methods with futures as arguments or return type.

Once the models branch lands, we should enable future support again with
eina_futures.

Reviewers: cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D6018
2018-05-01 10:39:01 -07:00
Cedric BAIL e43d72710b eo_cxx: remove tests related to old Efl_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL 544eecb203 autotools: fix make distcheck. 2018-05-01 10:39:01 -07:00
Cedric BAIL 1128dd8e7b elementary: quick fix for filemvc example. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2afe201fff eldbus: update dbus efl.model example. 2018-05-01 10:39:01 -07:00
Cedric BAIL 90df5c2bc9 ecore_con: update efl_net_ip_address_example after migration to new Eina_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL 6645743f79 eio: update efl_io_manager_ls example. 2018-05-01 10:39:01 -07:00
Cedric BAIL 33fd77e9e4 ecore: move close_on_destructor to close_on_invalidate as that describe the behavior best.
Fix all use to correctly behave on invalidate.
2018-05-01 10:39:01 -07:00
Cedric BAIL 193149deb8 ecore: apply the same rules as set on the inner_io on the read and write pipe. 2018-05-01 10:39:01 -07:00
Cedric BAIL ec44120e93 ecore_con: migrate efl_net_ip_address_resolve to use Eina_Future. 2018-05-01 10:39:01 -07:00
Cedric BAIL b1883c7989 eina: make eina_value_pget on an EINA_VALUE_TYPE_STRINGSHARE return a new reference to a stringshare. 2018-05-01 10:39:01 -07:00
Cedric Bail 994448edc4 eio: fix tests to properly process things as array not accessor. 2018-05-01 10:39:01 -07:00
Cedric Bail db589dd630 eio: fix efl.io.manager test after API const change. 2018-05-01 10:39:01 -07:00
Cedric Bail e7d5d34158 eo: invalidate before setting the parent to NULL. 2018-05-01 10:39:01 -07:00
Cedric Bail 473ed10c02 eina: add an EINA_VALUE_TYPE_BOOL. 2018-05-01 10:39:01 -07:00
Cedric BAIL 550b14261e efl: refactor model error creation. 2018-05-01 10:39:01 -07:00
Cedric BAIL b30587f5b0 eo: linking a future lifecycle with an object lifecycle doesn't change the object. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8bad7028ae eldbus: disable efl.model.child_del test as the behavior for eldbus.model.proxy is not defined yet. 2018-05-01 10:39:01 -07:00
Cedric BAIL d9ce6fac15 eldbus: disable efl.model.child_del test as the behavior for eldbus.model.object is not defined yet. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8e107c991c efl: update Efl.Model to properly propagate EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED. 2018-05-01 10:39:01 -07:00
Cedric BAIL af9b5f2f85 ecore: efl_model_list_value_get will throw error when asked for out of range value. 2018-05-01 10:39:01 -07:00
Cedric BAIL 67d9c0c11e eo: implement a copy function.
we do not rely on copying the object, but on refcounting it. This seems
to match the usage we have with object.
2018-05-01 10:39:01 -07:00
Cedric BAIL 0c3508c2a2 eldbus: make sure we do not destroy our log domain until we shutoff eina. 2018-05-01 10:39:01 -07:00
Cedric BAIL 119cba7d1c ecore: make sure that we only install and expose EFL unified API we intend to. 2018-05-01 10:39:01 -07:00
Cedric BAIL 57953e953b ecore: ecore_event_message is not an Efl unified API. 2018-05-01 10:39:01 -07:00
Cedric BAIL eee46bc257 ecore: efl.loop.timer should be part of Efl unified API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 7058312809 ecore: ecore_exe.eo is no longer a Eo unified API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 57320c190f ecore_con: if we rely on parent lifecycle for automatic destruction, do not call efl_del in the destructor. 2018-05-01 10:39:01 -07:00
Cedric BAIL a327a0e7c7 ecore_con: expose proper DBG macro with ecore_con log domain. 2018-05-01 10:39:01 -07:00
Cedric BAIL 407c53e280 ecore_con: legacy API do not expect object to be destroyed under our feet in any circumstances. 2018-05-01 10:39:01 -07:00
Cedric BAIL 67cbc0d8af ecore_con: make the ecore_con log domain available during ecore_shutdown. 2018-05-01 10:39:01 -07:00
Cedric BAIL 3e648c475f ecore: when relying on parent relationship for lifecycle, we should not use efl_del in the destructor. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2306a3b090 ecore: logically do the disconnection from the main loop API during invalidate. 2018-05-01 10:39:01 -07:00
Cedric BAIL 79afb51626 eo: if the pointer is incorrect, goto to the error handler. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8f17ab22ac eio: handle future cancellation properly for Efl.Io.Manager. 2018-05-01 10:39:01 -07:00
Cedric Bail c0bcd32591 eina: allow EINA_VALUE_EMPTY to be propagated with eina_future_as_value. 2018-05-01 10:39:01 -07:00
Cedric Bail 135a39dd14 evas: keep the devices around until full destruction of the canvas. 2018-05-01 10:39:01 -07:00
Cedric Bail 0e5aa8dccd evas: do not link the life cycle of the device with the parent. 2018-05-01 10:39:01 -07:00
Cedric Bail 356e37564a eo: handle NULL nicely in efl_replace. 2018-05-01 10:39:01 -07:00
Cedric Bail e22e433d38 efl: Efl_Model can decide to optionnaly provide a child if it has it at hand. 2018-05-01 10:39:01 -07:00
Cedric BAIL 700bdb4dcc ecore: Efl.Ui.Model.State doesn't have to be public yet. 2018-05-01 10:39:01 -07:00
Cedric Bail f3ceaebeb4 elementary: fix elementary fileselector tests to exit main loop. 2018-05-01 10:39:01 -07:00
Cedric BAIL 70c6f6db00 elementary: fix layout test to handle asynchronous information properly. 2018-05-01 10:39:01 -07:00
Cedric BAIL ff0f0109d5 eio: fix example to use the new EINA_VALUE_ARRAY_FOREACH. 2018-05-01 10:39:01 -07:00
Cedric BAIL 7712f04070 eio: update test to use the new EINA_VALUE_ARRAY_FOREACH. 2018-05-01 10:39:01 -07:00
Cedric BAIL d895527bd5 ecore: optimize efl_model_list_value_get by using eina_list_nth_list. 2018-05-01 10:39:01 -07:00
Cedric BAIL 5bfdc435c7 eina: improve EINA_VALUE_ARRAY_FOREACH to not systematically require &. 2018-05-01 10:39:01 -07:00
Cedric BAIL 5b4d64ac13 eio: migrate tests to use new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 702bcd7de9 eldbus: migrate tests to use new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 37374c8da6 ecore: fix compilation of the C++ bindings with the new Efl.Model 2018-05-01 10:39:01 -07:00
Cedric BAIL 5351720b66 ecore: update Ecore Efl.Model tests. 2018-05-01 10:39:01 -07:00
Cedric BAIL bf2e65a38d elementary: converting Efl.Ui.List to the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL c51a425ee5 ecore_evas: fix vnc_server build. 2018-05-01 10:39:01 -07:00
Cedric BAIL 16d5caa2ee elementary: remove Efl_Future reference from efl_ui_layout. 2018-05-01 10:39:01 -07:00
Cedric BAIL 2c2df5b18b elementary: migrate elm_view_list to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 90e0190161 elementary: migrate Elm.View.Form to use Efl.Model new interface.
Elm.View.Form is not done and require more work to be released.
2018-05-01 10:39:01 -07:00
Cedric BAIL 756f4cee0e elementary: migrate Efl.Ui.Layout to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL 8093eca7f3 elementary: migrate filesector to use the new Efl.Model API. 2018-05-01 10:39:01 -07:00
Cedric BAIL a408c145e9 elementary: migrate Efl.Ui.Image to use the new Efl.Model API. 2018-04-30 14:21:12 -07:00
Cedric BAIL be9b50cf80 eina: make the function created by EINA_VALUE_STRUCT_DESC_DEFINE inline to avoid unused warning. 2018-04-30 14:21:12 -07:00
Cedric Bail 46ac187bd8 elementary: add an Efl.Ui.Model.State in charge of visibility, selection and enable state. 2018-04-30 14:21:12 -07:00
Cedric Bail 4a54ae0b0a eio: migrate to the new efl.model API. 2018-04-30 14:21:12 -07:00
Cedric BAIL bba8fbe449 eio: improve efl.io.manager API by being const when not touching the object. 2018-04-30 14:21:12 -07:00
Cedric Bail 202f433476 eio: remove unecessary helper function Efl.Io.Manager. 2018-04-30 14:21:12 -07:00
Cedric Bail 9882a28736 eio: fix efl_io_manager_stat after conversion to Eina_Future. 2018-04-30 14:21:12 -07:00
Cedric Bail 6de16678b9 eio: convert efl_io_manager_stat_ls to use Eina_Future. 2018-04-30 14:21:12 -07:00
Cedric Bail 51776fb94a eio: convert efl_io_manager_direct_ls to Eina_Future. 2018-04-30 14:21:12 -07:00
Cedric Bail da45eb54a8 eio: switch Efl.Io.Manager to actually use Array instead of Accessor (to avoid unecessary callback). 2018-04-30 14:21:12 -07:00
Cedric BAIL 44dceade11 eio: share _efl_io_manager_future_cancel with all of eio. 2018-04-30 14:21:12 -07:00
Cedric BAIL afb18198bb eio: allow access to Eina_Value Eina_Stat description from all part of the library. 2018-04-30 14:21:12 -07:00
Cedric BAIL 9e2493760b ecore: move efl_model_list_value_get to be an internal function. 2018-04-30 14:21:12 -07:00
Cedric Bail 3edb4ca697 eldbus: migrate and refactor eldbus.model to new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail ddcf8d8b97 eldbus: refactor model code. 2018-04-30 14:21:11 -07:00
Cedric BAIL 7019b8857b ecore: don't artificially block fonctionnality for nested loop.
We do have nested loop when manually calling iterate and was used
in legacy code that got broken with this change.
2018-04-30 14:21:11 -07:00
Cedric BAIL 725c8add86 ecore: move efl_loop_message_process to ecore_internal.h to allow other EFL component to use it. 2018-04-30 14:21:11 -07:00
Cedric Bail d7fe2d5608 ecore: refactor and migrate efl.model.container to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 741a6c4126 ecore: refactor and migrate efl.model.composite.selection to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 9211fd73a7 ecore: refactor and migrate efl.model.composite.boolean to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 2049c44c78 ecore: convert efl.model.item to the new efl.model API. 2018-04-30 14:21:11 -07:00
Cedric Bail 0ce9fc5db0 ecore: add a class to factorize efl.model.composite. 2018-04-30 14:21:11 -07:00
Cedric Bail 8f00bf5681 efl: make efl.model use of eina_value and eina_future instead of efl_future. 2018-04-30 14:21:11 -07:00
Marcel Hollerbach 04c63cb489 elm_focus_legacy: set custom chain
fix T6182
2018-04-30 19:26:06 +02:00
Marcel Hollerbach e3049e4a16 efl_ui_widget: do not register if the child is missing in a custom chain 2018-04-30 19:24:47 +02:00
Marcel Hollerbach d8a0ee9021 efl_ui_focus_composition: legacy compatibility 2018-04-30 19:24:47 +02:00
Marcel Hollerbach fdfcae968b elm_widget: Introduce elm_focus_legacy
Code located here is meant for a legacy tree and legacy widgets.
This is checked on the entry of the function
2018-04-30 19:24:47 +02:00
Marcel Hollerbach 27d6f3a65d efl_ui_focus_util: add new function for complementing the direction 2018-04-30 19:24:47 +02:00
Jaehyun Cho 81f94f5a09 efl_canvas_object: Add event info to animation events in eo 2018-05-01 00:40:34 +09:00
Jaehyun Cho e9b61a8969 efl_canvas_object: Change name of animation event info
Change name of animation event info to synchronize with other event
info names.

Change data name in animation event info to synchronize with data type
name, Efl.Event.Description.
2018-05-01 00:13:56 +09:00
Jaehyun Cho 485fe6cd61 efl_canvas_object: Remove unnecessary import 2018-04-30 23:52:31 +09:00
Marcel Hollerbach 33b9577013 elm_widget_item_static_focus: do not call prepare on all realized items
we should spare out the group and disabled items
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 8b2a6a0b4d elm_widget_item_static_focus: a other element could also hide behind the
adapter
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3571b35a30 efl_ui_focus_manager_calc: drop redirect if there is no candidate 2018-04-30 15:22:52 +02:00
Marcel Hollerbach 139efaaba3 elm_interface_scrollable: rework filtering
A item might be in the middle of the viewport and still miss relations.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 5815ba52ec elm_****: do not make group items focusable 2018-04-30 15:22:52 +02:00
Marcel Hollerbach bd9b112094 efl_ui_focus_manager_calc: make the preparation call tree style
So we make sure that all children are prepared.
2018-04-30 15:22:52 +02:00
Marcel Hollerbach 3b17135d5b elm_widget_item_static_focus: prepare the item not the widget
fix T6894
2018-04-30 15:17:24 +02:00
Jaehyun Cho ec59f8053a elm_multibuttonentry: Fix make check fail
Fix make check fail of elm_multibuttonentry caused by
939690a8a9
2018-04-30 19:53:26 +09:00
SangHyeon Lee 8718e2995e efl.ui.layout_factory : use interface layout theme set for now
interface object need to use efl.ui.layout_object theme set
instead of legacy one, for applying proper theme naming rules.
2018-04-30 19:27:13 +09:00
SangHyeon Lee ae2610bedc efl.ui.view_list : update example text/content name on legacy to efl
update examples and edc as our new naming rule changes.
2018-04-30 19:25:06 +09:00
Jaeun Choi 9fa1c8a2e3 evas: fix default return value of image-related legacy functions
In commit 8367f497b8,
type checking code was added for legacy image functions
in order to reduce failing calls of efl_xxx function.
The default return values of some functions for none-legacy
objects (including NULL), however, were not equal to eo-based
default return value, which broke compatibility.
This commit fixes it.

@fix
2018-04-30 17:55:24 +09:00
Carsten Haitzler 5b08611a9e ecore animator, x, vsync ecore evas restore x vsync to work again
so i found the work with wayland and having animator sources broke
that same source from ecore_x that was there from long ago, so i've
put in an exception if there are x based engines from restting to a
timer animator because ecore_x would have switched toa custom ticker
already, and this just resets it. also just set the source after
setting the tick callbacks and ensure tick cb's are null before going
to timer source as well. this cleans up this little but of animaatior
vsync modification to properly vsync in both x and wayland too now.

@fix
2018-04-30 15:32:10 +09:00
Davide Andreoli d8bfcd511e Genlist: a sane test for genlist item iteration
This is much more extensive than before and we are now
testing both tree and group items.

This test has been run in 9 stable releases down to 1.12
the only one that fail is 1.18 that is know to be broken
wrt item iteration.

Hopefully definitly close T5938
2018-04-28 12:22:51 +02:00
Davide Andreoli 93e9259d6f Genlist: fix doc for item_next/prev_get()
See T5938 for details
2018-04-28 10:31:23 +02:00
Davide Andreoli 69cf5754b5 Revert "genlist: fix "insane" order [BUG COMPATIBILITY]"
This reverts commit fd82c2521e.

This was based on a wrong assumption, see T5938 fro details
2018-04-28 10:21:57 +02:00
SangHyeon Lee b64522e848 efl.ui.view_list : fix signal prefix elm to efl
by the patch 6e49db0739
efl.ui interface change signal prefix legacy elm to efl.
this patch is fixing efl.ui.view.list scroller issue
2018-04-28 14:03:54 +09:00
SangHyeon Lee 75f21087f5 efl_ui_list : introduce new list widget for simple usage
Summary:
most usage of simple list, items are very limited and loading performance is not serious.
to support those requirement, this efl.ui.list will create scrollable box with efl.pack.

user can create list by packing an pre-loaded item object, Efl.Ui.List.Item class.

Test Plan: tested in efl_ui_list_example_1.c in examples.

Reviewers: cedric, felipealmeida

Subscribers: woohyun, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5861
2018-04-28 13:41:41 +09:00
Mike Blumenkrantz bbbd05148a tests: disable ecore system modules in elm_suite
Summary:
ref T6864

Depends on D5967

Reviewers: stefan_schmidt

Subscribers: cedric

Maniphest Tasks: T6864

Differential Revision: https://phab.enlightenment.org/D5968
2018-04-27 21:43:31 +02:00
Mike Blumenkrantz 54ca34c15d tests: disable efreetd for elm tests
Summary:
this is especially problematic for elm tests as the fork reset callback
in efreet will cause a huge number of server connections to be created

ref T6864

Depends on D5966

Reviewers: stefan_schmidt

Reviewed By: stefan_schmidt

Subscribers: cedric

Maniphest Tasks: T6864

Differential Revision: https://phab.enlightenment.org/D5967
2018-04-27 21:42:38 +02:00
Xavi Artigas bf8ce8ff7a eina: Provide actual len (after possible truncation) to eina_stringshare_add_length
Summary:
vsnprintf() returns "The number of characters that would have been written if n had been sufficiently large",
so if this is larger than the requested length, we pass the requested length to eina_stringshare_add_length,
to avoid reading uninitialised memory.

Fix T6903

Reviewers: zmike

Subscribers: cedric

Maniphest Tasks: T6903

Differential Revision: https://phab.enlightenment.org/D6011
2018-04-27 13:43:12 -04:00
Mike Blumenkrantz 0cf63649c7 tests: use a global win object in fork mode when using buffer engine
Summary:
this avoids the creation of a new win object for each test

ref T6864

Reviewers: stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: cedric

Maniphest Tasks: T6864

Differential Revision: https://phab.enlightenment.org/D5965
2018-04-27 15:01:39 +02:00
Mike Blumenkrantz 18b6b1248d efreet: add method for disabling efreetd connection
Summary:
some minimal applications, such as test suites, may want to
disable this if they are not in need of any of the
functionality that is provided

@feature

Depends on D5965

Reviewers: cedric, stefan_schmidt

Reviewed By: cedric

Subscribers: stefan_schmidt, cedric

Differential Revision: https://phab.enlightenment.org/D5966
2018-04-27 14:35:13 +02:00
Stefan Schmidt 51f5419292 eolian_mono: remove non existing file references for distcheck
These three files do no longer exist in tree and are failing distcheck
when preparing the dist tarball.
2018-04-27 11:22:19 +02:00
JongMin Lee 4092c3a554 evas: resolve possible memory leak. 2018-04-27 14:14:37 +09:00
JongMin Lee 296d117f2a elm efl_selection_manager: resolve possible memory leak. 2018-04-27 14:04:02 +09:00
Mike Blumenkrantz e0f8e65d20 eina: provide full string length to vsnprintf to allow for null character
Summary: fix T6903

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric

Maniphest Tasks: T6903

Differential Revision: https://phab.enlightenment.org/D6009
2018-04-26 12:24:16 -04:00
Daniel Kolesa bef66f507d eolian: check event vs function/part conflicts as well
Still behind the env var, because there would be a lot of failures
otherwise.
2018-04-26 16:41:32 +02:00
Daniel Kolesa d810c1e71d eolian: use pointer hashes in validation for performance
We can use pointer hashes because the keys will have the same
addresses during validation. This should be faster, so do that.
2018-04-26 16:23:13 +02:00
Daniel Kolesa a0e7564836 eolian: stricter function/part redef checks
Now we also check part redefinitions and function redefinitions
are checked against parts as well.
2018-04-26 16:15:04 +02:00
Daniel Kolesa f796a21d72 eolian: add event redefinition checks
As EFL fails build with this enabled, hide these behind the
EOLIAN_EVENT_REDEF_WARN environment variable for the time being.
2018-04-26 16:15:04 +02:00
Daniel Kolesa 6f69a8c56d eolian: clear chash on each iteration during validation
This is necessary because inheritance trees need to be validated
individually for proper name conflict checks. It also prevents
eina_hash_add related errors.
2018-04-26 16:15:04 +02:00
Lauro Moura edf05278ed efl_mono: Names fixes after the big rename
Summary: Depends on D5997

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5998
2018-04-26 10:55:18 -03:00
Lauro Moura 1837e2de10 efl_mono: Fix support for event arguments.
Summary:
Using a type visitor scheme similar to type and marshall_type, to ease
increasing coverage for other types if needed.

Also, changed the filter functions for those selections to check for the
full name of the regular_type_def, allowing a better specificity of the
name selections. This fixes things like "Eina.Error", which was
conflicting with Efl.Image.Load.Error when we compared only the last
name. It didn't appear before as Load.Error only appears in a
Efl.Image.Load event.
Depends on D5996

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5997
2018-04-26 10:55:18 -03:00
Lauro Moura ff1fda829d efl_mono: Actually test events by passing things by value and structs
Summary:
While the test events were declared as by value, the support code passed
by reference, which was - wrongly - the only implementation supported in
event code.

Also added test with Eina_Bool and structs (passed by pointer to events,
while not having the ptr modifier explicitly.
Depends on D5995

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5996
2018-04-26 10:55:18 -03:00
Lauro Moura a413914c18 efl_mono: Move event generators to its own header.
Summary:
Making it easier to share code between self and inherited events.

During this move, the namespace and keyword headers were merged into the
name_helpers header.

Also added the first seed of a generic namespace reducer function,
to be used by other functions in later commits.
Depends on D5994

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: segfaultxavi, cedric

Differential Revision: https://phab.enlightenment.org/D5995
2018-04-26 10:55:18 -03:00
Lauro Moura 8e151023b9 efl_mono: Instantiate parts in constructor in test
Summary:
Don't try to lazily create the parts when getting them, as it would
modify the owner inside its @const Efl.Part.part.
Depends on D5993

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5994
2018-04-26 10:55:18 -03:00
Lauro Moura 429d7510b0 efl_mono: Reorganize utility functions.
Summary:
Blacklist functions are all in the header/namespace blacklist.

Helper functions returning strings (names) are in the name_helpers
header. They act somewhat like "mini-generators".

Helpers.hh was left with other kind of helper functions (checks, etc)
that do not return strings.
Depends on D5992

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5993
2018-04-26 10:55:18 -03:00
Lauro Moura 628e5ab950 efl_mono: Use PascalCase in events
Summary:
To deal with events with the same name as some methods (Del, Invalidate,
etc), the suffix Evt was added.

Thus, now we use

obj.ButtonClickedEvt += callback;

Instead of

obj.BUTTON_CLICKED += cal

The argument classes use the same scheme, being called <Evt name>_Args.
Depends on D5991

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5992
2018-04-26 10:55:18 -03:00
Lauro Moura e59e8f0a15 eolian_mono: Register is not a kw in C#
Summary: It was a reminiscing bit from the c++ generator.

Reviewers: felipealmeida

Reviewed By: felipealmeida

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5991
2018-04-26 10:55:18 -03:00
Jaehyun Cho 08a11dcbf9 efl theme: Replace legacy signal names with efl ui signal names
Replace legacy signal/source names with efl ui signal/source names.
e.g. From "elm,state,content,set" "elm" to "efl,state,content,set" "efl"
2018-04-26 22:45:59 +09:00
Taehyub Kim c83895b144 efl_ui_win: fix the wrong bracket
Summary: efl_ui_win: fix the wrong bracket

Reviewers: Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, stefan

Differential Revision: https://phab.enlightenment.org/D6007
2018-04-26 21:00:35 +09:00
Taehyub Kim 6e49db0739 efl theme: remove the elm legacy name of efl ui theme
Summary: remove the elm legacy name of efl ui theme

Test Plan: run elementary_test and test efl ui widget cases

Reviewers: Jaehyun_Cho, woohyun, cedric, raster, jpeg

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5934
2018-04-26 19:41:03 +09:00
Mike Blumenkrantz 473e657120 efl_ui_win: remove references to removed functions
Reviewers: ManMower

Reviewed By: ManMower

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D6004
2018-04-25 12:22:40 -04:00
Mike Blumenkrantz f37b96a1de efl_ui_win: simplify checking theme version when adding frame
Summary:
the win has no theme set, so this would always return null
Depends on D5956

Reviewers: cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D5957
2018-04-25 12:09:32 -04:00
Mike Blumenkrantz 99fca5b01d elm_theme: use themes and extensions lists for _elm_theme_data_find
Differential Revision: https://phab.enlightenment.org/D5956
2018-04-25 12:09:32 -04:00
Mike Blumenkrantz 7afd83569b elm_win: remove useless function
Summary: Depends on D5961

Reviewers: ManMower, cedric

Reviewed By: ManMower, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5945
2018-04-25 12:07:28 -04:00
Mike Blumenkrantz d033d747ff efl_ui_win: resolve race conditions with csd sizing on first show
there were some cases where frame geometry was being calculated/applied
strangely as a result of moving all of the layout calcs to pre-render.
enforcing a frame calc+resize resolves these issues

Differential Revision: https://phab.enlightenment.org/D5961
2018-04-25 12:07:28 -04:00
Mike Blumenkrantz fa02f16a3f efl_ui_win: remove show intercept function
this should just be handled in the pre-render callback where the rest
of the calc for the window is done

also removes an unnecessary smart calc

Differential Revision: https://phab.enlightenment.org/D5960
2018-04-25 12:06:33 -04:00
Mike Blumenkrantz 34be51e105 elm_win: freeze frame object edje until first pre-render
this avoids a substantial number of unnecessary recalcs and halves the calltime
for elm_win_add

ref T6884

Differential Revision: https://phab.enlightenment.org/D5944
2018-04-25 12:06:33 -04:00
Mike Blumenkrantz a1f649fa9d eet: add counter for number of frees needed in each directory
Summary:
further optimize the eet_shutdown case of closing files and avoid
endlessly looping over empty nodes
Depends on D5950

Reviewers: cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D5951
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz e917be8831 eet: simplify shutdown file closing
no need to free mempool memory when the mempool is about to be freed,
and eet_clearcache duplicates existing shutdown functionality

Differential Revision: https://phab.enlightenment.org/D5950
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz e28c76e244 elm_win: set manual render and freeze frame object during deferred free
ensure no recalcs of any kind occur on a deleted window

Differential Revision: https://phab.enlightenment.org/D5949
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz 08fe88cb2d els_cursor: avoid forcing a recursive canvas layout recalc when adding cursor
use deferred size hints to avoid unnecessary recalcs

Differential Revision: https://phab.enlightenment.org/D5948
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz 668d68cdf4 edje: remove recalc from content_get and text_get
neither of these functions should force a recalc under any circumstance
as they are simply returning pointers

@fix

Differential Revision: https://phab.enlightenment.org/D5947
2018-04-25 12:00:11 -04:00
Mike Blumenkrantz e1036aff40 edje: make most edje_util.c functions obey freeze
a number of these functions have implicit recalcs, which is bad because
it's a pretty significant perf bottleneck, but it can't be improved
without breaking existing behavior expectations so this is probably the
best that can be done

ref T6884

Differential Revision: https://phab.enlightenment.org/D5946
2018-04-25 12:00:11 -04:00
Stefan Schmidt 054424af51 tests: eio: fix filename naming in two tests
The file names are derived from the test case names. These two seem to
have been overlooked when copying one test case to another.
I hoped this would fix my problems I have with the eio test suite
recently, but sadly it does not. Time to go on a git bisect tour.
2018-04-25 15:34:35 +02:00
Woochan Lee ef2e6afd1f Intrudoce Efl Ui Date, Time interface and picker.
Summary: Create datepicker, timepicker with one manager class(efl_datetime).

Test Plan: datepicker, timepicker sample.

Reviewers: herb, Jaehyun_Cho, woohyun, SanghyeonLee

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5871
2018-04-25 16:48:21 +09:00
Myoungwoon Roy, Kim e62b97814d evas_main: Add null exception handling
Summary: Need to check whether Evas_Public_Data is null or not before dereferencing it.

Test Plan: Execute test suite

Reviewers: raster, Hermet, cedric, jpeg, stefan_schmidt, Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5987

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 17:41:47 -07:00
Marcel Hollerbach ac4d75a1ae efl_ui_focus_composition: permit anything but adapters and widgets
a wildcard gfx object could bring focus to a evas object that has no
smart parent, and thus keyboard events are left at a place where they
cannot come away from.

clock was using this to give focus to the edit buttons. The edit buttons
are now wrapped into theire own adapter objects which makes them
focusable like before. However, the no keybindings or anything are taken
to react on the value.
2018-04-25 00:21:26 +02:00
Marcel Hollerbach fa02849193 gen****: just set focus to genlist / gengrid if no item is available
Additional move requests are still redirected to the gen**** widget.

ref T6805
2018-04-25 00:17:58 +02:00
Marcel Hollerbach 94b7d53c3b elm_genlist: do not not right left top down in action_move
the internal movement logic was resulting in wrong movements skipping
children items.
2018-04-25 00:16:50 +02:00
Marcel Hollerbach d7011b52e7 efl_ui_focus_composition: add fields for manager and parent
the manager objects are build on the assertion that registered elements
are returning the manager they are registered on if
efl_ui_focus_object_manager_get is called.
2018-04-25 00:16:50 +02:00
Derek Foreman a61f254f19 ee_wayland: Remove pointless ack_configure
If we don't ack_configure here, it'll just automatically happen in
ecore_wl2_commit() next time we render anyway.

If we do ack_configure here, we can totally screw up E's internal window
handling.

Removing it seems like a win.
2018-04-24 15:44:09 -05:00
Xavi Artigas 5a6486ea9f Efl.Page.*_* (From Efl.Page.*.*)
Including Efl.Page.Indicator.* and Efl.Page.Transition.*

Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:59 -07:00
Xavi Artigas 92f176fea1 Efl.Ui.Navigation_Bar_Part* (From Efl.Ui.Navigation_Bar.Part*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:58 -07:00
Xavi Artigas a1cf343d9b Elm.Toolbar_* (from Elm.Toolbar.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:57 -07:00
Xavi Artigas 98251d40e8 Efl.Ui.Focus.Manager_Window_Root (from Efl.Ui.Focus.Manager.Window_Root)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:57 -07:00
Xavi Artigas dc3336536d Efl.Ui.Dnd_Container (from Efl.Ui.Dnd.Container)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:56 -07:00
Xavi Artigas f1c92cfcf3 Efl.Ui.Win_* (from Efl.Ui.Win.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:55 -07:00
Xavi Artigas 147403d56b Efl.Ui.Widget_* (from Efl.Ui.Widget.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:55 -07:00
Xavi Artigas 3ba0b394b5 Efl.Ui.View_List_* (from Efl.Ui.View.List.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:54 -07:00
Xavi Artigas 2c995fbac4 Efl.Ui.Focus.Parent_Provider_* (from Efl.Ui.Focus.Parent_Provider.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:53 -07:00
Xavi Artigas 189fbd335b Efl.Ui.Focus.Manager_* (from Efl.Ui.Focus.Manager.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:52 -07:00
Xavi Artigas 734a48a1bd Efl.Net.Socket_* (from Efl.Net.Socket.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:52 -07:00
Xavi Artigas 383f51feaa Efl.Net.Server_* (from Efl.Net.Server.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:51 -07:00
Xavi Artigas a785ba5495 Efl.Net.Dialer_* (from Efl.Net.Dialer.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:50 -07:00
Xavi Artigas 566a36dc99 Efl.Model_* (from Efl.Model.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:05:49 -07:00
Xavi Artigas 23c303f87b Efl.Loop_* (from Efl.Loop.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:03 -07:00
Xavi Artigas a907523545 Efl.Interpolator_* (from Efl.Interpolator.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:02 -07:00
Xavi Artigas c94befd3ca Efl.Canvas.Gesture_* (from Efl.Canvas.Gesture.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:02 -07:00
Xavi Artigas faff72e6ad Efl.Access.Text_* (from Efl.Access.Text.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:01 -07:00
Xavi Artigas 3b489a71e2 Efl.Ui.Textpath_* (from Efl.Ui.Textpath.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:00 -07:00
Xavi Artigas 9ded795830 Efl.Ui.Slider_Part_Indicator (from Efl.Ui.Slider.Part_Indicator)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:04:00 -07:00
Xavi Artigas 0b6a0fdc97 Efl.Ui.Scrollable_Interactive (from Efl.Ui.Scrollable.Interactive)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:59 -07:00
Xavi Artigas d61f3fbb1d Efl.Ui.Progressbar_Part (from Efl.Ui.Progressbar.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:58 -07:00
Xavi Artigas f01b82cf51 Efl.Ui.Popup_* (from Efl.Ui.Popup.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:57 -07:00
Xavi Artigas bf4156b1c7 Efl.Ui.Panes_Part (from Efl.Ui.Panes.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:56 -07:00
Xavi Artigas 08e93f8df8 Efl.Ui.Multibuttonentry_Part (from Efl.Ui.Multibuttonentry.Part)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:55 -07:00
Xavi Artigas b2d25a6e10 Efl.Ui.Layout.Part_* (from Efl.Ui.Layout.Part.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00
Xavi Artigas 6a98b84cd7 Efl.Ui.Layout.Object (from Efl.Ui.Layout)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:54 -07:00
Xavi Artigas 8da98a47f0 Efl.Ui.Image_* (from Efl.Ui.Image.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:53 -07:00
Xavi Artigas 8f3dc5d0ba Efl.Ui.Flip_* (from Efl.Ui.Flip.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:52 -07:00
Xavi Artigas 7e34e100d2 Efl.Ui.Clock_Type (from Efl.Ui.Clock.Type)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:50 -07:00
Xavi Artigas 5c258c238e Efl.Ui.Calendar_* (from Efl.Ui.Calendar.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:50 -07:00
Xavi Artigas 6b5ac687c1 Efl.Text_* (from Efl.Text.*)
Including:
Efl.Text.Cursor_* (from Efl.Text.Cursor.Cursor_*)
Efl.Text.Font_* (from Efl.Text.Font.*)
Efl.Text.Format_* (from Efl.Text.Format.*)
Efl.Text.Style_* (from Efl.Text.Style.*)
Efl.Ui.Text_* (from Efl.Ui.Text.*)

Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:49 -07:00
Xavi Artigas b693b06339 Efl.Selection_Manager (from Efl.Selection.Manager)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:48 -07:00
Xavi Artigas 42ed558fd5 Efl.Pack_* (from Efl.Pack.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:48 -07:00
Xavi Artigas eaa4a3b10d Efl.Object_Override (from Efl.Object.Override)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:47 -07:00
Xavi Artigas de70ff93ea Efl.Net.Socket.Ssl_Error.* (from Efl.Net.Socket.Ssl.Error.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:47 -07:00
Xavi Artigas 56183edb96 Efl.Net.Server.Udp_Client (from Efl.Net.Server.Udp.Client)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:46 -07:00
Xavi Artigas ad9c582af7 Efl.Net.Dialer_*_ (from Efl.Net.Dialer_*.)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:45 -07:00
Xavi Artigas ce6abdbcd6 Efl.Net.Control.Technology_Type (from Efl.Net.Control.Technology.Type)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:44 -07:00
Xavi Artigas 4a7e915615 Efl.Net.Control.Agent_Request_Input_* (from Efl.Net.Control.Agent_Request_Input.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:43 -07:00
Xavi Artigas 26ad8d7768 Efl.Net.Control.Access_Point_* (from Efl.Net.Control.Access_Point.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:42 -07:00
Xavi Artigas df75462a64 Efl.Net.Control.Manager (from Efl.Net.Control)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:42 -07:00
Xavi Artigas 196fdaa48c Efl.Io.*_Fd (from Efl.Io.*.Fd)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:41 -07:00
Xavi Artigas 5697f6e94b Efl.Gfx.Image* (From Efl.Image*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:40 -07:00
Xavi Artigas 6073833b90 Efl.Image_* (from Efl.Image.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:39 -07:00
Xavi Artigas c837b321bf Efl.Image_Load_Controller* (From Efl.Image.Load*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:39 -07:00
Xavi Artigas a28b2ff1d3 Efl.Image_Animation_Controller* (from Efl.Image.Animated*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:38 -07:00
Xavi Artigas e477532dd4 Efl.Canvas.Layout_Part* (from Efl.Canvas.Layout.Part*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:37 -07:00
Xavi Artigas 7be849c63e Efl.Gfx.Size_Hint* (from Efl.Gfx.Size.Hint*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:36 -07:00
Xavi Artigas 4404649ced Efl.Gfx.Stack_Layer_* (from Efl.Gfx.Stack.Layer.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:35 -07:00
Xavi Artigas 0f355f257d Efl.Gfx.Gradient_* (from Efl.Gfx.Gradient.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:34 -07:00
Xavi Artigas c7a3e0ba6a Efl.Gfx.Buffer_Access_Mode (from Efl.Gfx.Buffer.Access_Mode)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:33 -07:00
Xavi Artigas 55bd097a3d Efl.Gfx.Entity (from Efl.Gfx)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:32 -07:00
Xavi Artigas 7934d152dd Efl.Config_Global (from Efl.Config.Global)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:31 -07:00
Xavi Artigas a217d4b455 Efl.Canvas.Vg.Object (from Efl.Canvas.Vg)
Also, Efl.Canvas.Vg.* (from Efl.Canvas.VG.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:30 -07:00
Xavi Artigas a26fbbbc66 Efl.Canvas.Text_* (from Efl.Canvas.Text.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:29 -07:00
Xavi Artigas 8e02f3137c Efl.Canvas.Surface_* (from Efl.Canvas.Surface.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:29 -07:00
Xavi Artigas 80db4c0c22 Efl.Canvas.Event_Grabber (from Efl.Canvas.Object.Event.Grabber)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:28 -07:00
Xavi Artigas 5d81ae9dfb Efl.Canvas.Image_Internal (from Efl.Canvas.Image.Internal)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:27 -07:00
Xavi Artigas 6be604e965 Update elementary examples .gitignore
Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:26 -07:00
Xavi Artigas 5374512383 Efl.Canvas.Animation_* (from Efl.Canvas.Animation.*)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:25 -07:00
Xavi Artigas 9dcc31ed4a Efl.Access.Object (from Efl.Access)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:24 -07:00
Xavi Artigas 65ee277a66 Efl.Canvas.Scene (from Efl.Canvas)
Ref https://phab.enlightenment.org/T6847

Reviewed-by: Cedric Bail <cedric@osg.samsung.com>
2018-04-24 09:03:23 -07:00
JongMin Lee f6fc78119b elm test: resolve possible integer overflow 2018-04-24 19:57:51 +09:00
Jaehyun Cho 454cc48841 efl_page_transition_scroll: Fix warning of uninitialized variable 2018-04-24 17:19:47 +09:00
Myoungwoon Roy, Kim 83f326009e evas_map: Fix a bug about wrong map point colors
Summary: evas_map_point_color_get returns wrong rgbs values always because of error label.

Test Plan: Execute test suite

Reviewers: raster, Hermet, cedric, jpeg, stefan_schmidt, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5983
2018-04-24 16:25:24 +09:00
Carsten Haitzler 4917910b49 ecore pipe - fix windows to not segv on zero data in pipe there 2018-04-24 15:13:57 +09:00
Carsten Haitzler 3e3462f0d3 elm - sel manager - build on windows AND x11 now 2018-04-24 13:45:45 +09:00
Hermet Park 81bc0122ca elementary: update progressbar doc.
update doc in up-to-dated efl_ui_progressbar APIs.
2018-04-24 13:29:20 +09:00
YeongJong Lee 43c3e68d2f edje_lua2: add null check
Summary: It need to check memory allocation failures

Reviewers: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5971

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-23 13:39:36 -07:00
Benjamin Jacobs 96ff273449 elementary: Spurious EINA_UNUSED.
Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5976

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
2018-04-23 13:38:00 -07:00
Cedric BAIL 39c87e6c99 ecore_evas: forgotten refactoring of the buffer engine.
Thanks @jackdanielz for the report.
2018-04-23 13:02:46 -07:00
Alastair Poole bbd4247d6a elementary: fix build on X11.
@fix
2018-04-23 20:41:38 +01:00
Carsten Haitzler 73c04ecb4b ecore con - fix constness in eo api to match eo/eolian changes 2018-04-24 01:37:05 +09:00
Carsten Haitzler f805cc2be9 elm - sel manager - fix windows build with selection vars 2018-04-24 01:36:44 +09:00
Youngbok Shin f7826ea1af elementary bg: allow NULL pointers in legacy usage
Summary:
It should not cause crash with NULL parameters.
@fix

Reviewers: woohyun, raster, cedric

Reviewed By: woohyun, raster

Differential Revision: https://phab.enlightenment.org/D5979
2018-04-23 21:25:15 +09:00
Jaeun Choi e74ebca670 efl_ui_pager: Add Efl.Ui.Pager class and related classes
Efl.Ui.Pager is a widget which contains many pages in a linear fashion
and allows users to scroll through them.
Users can attach Efl.Page.Transition and Efl.Page.Indicator to a pager.
2018-04-23 20:33:04 +09:00
Daniel Zaoui 9cbba2d0b4 Fix exit code setting for legacy applications
The value must be given to eina_value_set and not a pointer to a
Eina_Value.
This bug results in always getting wrong exit code when the application
terminates.
2018-04-22 15:44:41 +03:00
Davide Andreoli 558f4c36ac Genlist: visual test for item next/prev/first/last
Added 4 buttons to the "genlist group tree" to perform
item next/prev/first/last.

This test works correctly by reverting fd82c2521e but it
still in contrast with the item_next() docs, that say item_next
should not descend in item childs.

I think that the docs is also wrong, as I never saw the behaviour
that is explained there.
2018-04-21 11:46:29 +02:00
Derek Foreman 8bd47cf83c ecore_wl2: reduce wayland display flushes
Clean up various places where we do flushes that we don't need to
because some immediately following action is going to cause a flush.
Also fix places where we flush without actually doing anything.
2018-04-20 13:00:28 -05:00
Derek Foreman 4837f32443 ecore_wl2: Share same region between input and opaque when possible
If input and opaque region are the same (they usually are) we can use
the same region for both.
2018-04-20 13:00:28 -05:00
Derek Foreman 0ca813dbd0 ecore_wl2: Refactor region create
Trivial refactor
2018-04-20 13:00:28 -05:00
Derek Foreman 486bd23ca1 ecore_wl2: Make ecore_wl2_window_false_commit more robust
False commit when a commit is already pending is an error, but for safety
it should be a nop.

Currently it would overwrite the existing frame callback which could
cause problems on window destruction.
2018-04-20 13:00:28 -05:00
Derek Foreman a297f17ac3 ee_wayland: Add some NULL checks
These just protect against caller stupidity.  Double register or double
unregister shouldn't happen anyway.
2018-04-20 13:00:28 -05:00
Derek Foreman f53bc90c62 ecore_wl2: Don't unmap buffers at unlock
We should be using dmabuf sync ioctls instead of mmap/munmap every draw,
this makes that happen.  The surface code continues to do what its always
done, and map/unlock.
2018-04-20 13:00:28 -05:00
Derek Foreman 324c4ede00 ecore_wl2: Add ERR for buffer lock errors
Should never double lock or double unlock, this isn't refcounted, and
probably doesn't need to be.
2018-04-20 13:00:28 -05:00
Derek Foreman 6b3f999cf4 ecore_wl2: Add dma_buf lock/unlock ioctls
These should help with coherency later when we don't unmap for every
surface post.
2018-04-20 13:00:28 -05:00
Derek Foreman 1fddfdfaae ecore_wl2: Add lock/unlock function pointers to buffers
For backend specific lock/unlock behaviour
2018-04-20 13:00:28 -05:00
Derek Foreman 52e2ef8b22 ecore_wl2: Add ecore_wl2_buffer_lock
Currently we're making mapping implicitly take a lock.
2018-04-20 13:00:28 -05:00
Derek Foreman 3acd8cdf80 efl_ui_win: Remove _elm_win_opaque_update
This stuff is all in the wayland ecore_evas now, so elm no longer needs
to handle it.
2018-04-20 13:00:28 -05:00
Derek Foreman 36f015cda1 efl_ui_win: Remove special wayland opaque_dirty stuff
This isn't necessary anymore as ecore_evas handles it internally now.
2018-04-20 13:00:28 -05:00
Derek Foreman f73bc10201 ecore_wl2: Don't do anything but update alpha in alpha_set
This is now done in ecore_evas where it should be.  alpha_set now does
only what its name claims it does - sets whether a surface has an alpha
channel or not.
2018-04-20 13:00:28 -05:00
Derek Foreman dbf65eb96a ecore_evas_wayland: Handle region updates and alpha setting in engine
Instead of having elm handle all this stuff, handle it in ee.  This fixes
a loooong standing bug where we would always use an alpha enabled surface
because CSD needs shadows - even if we aren't drawing CSD.
2018-04-20 13:00:28 -05:00
Derek Foreman a9fd904a6e efl_ui_win: Explicitly set alpha for wayland cursors
Instead of depending on the backend figuring it out.
2018-04-20 13:00:28 -05:00
Derek Foreman ab7419908c ecore_wl2: Reconfigure window on alpha set
This allows software renderers to reconfigure their buffers to actually
change whether alpha is present.
2018-04-20 13:00:27 -05:00
Derek Foreman fc973b9640 ecore_wl2: Remove window_transparent_set
This is exactly the same as alpha_set, so it really doesn't have much
reason to exist.
2018-04-20 13:00:27 -05:00
Derek Foreman 5af84afced ecore_evas_wayland: Replace transparent_set with alpha_set
transparent_set is a legacy path that should do exactly what alpha_set
does these days, so squash them into the same function.
2018-04-20 13:00:27 -05:00
Derek Foreman d20c0bf964 ecore_evas_wayland: Remove content rectangle from engine data
It's no longer used.
2018-04-20 13:00:27 -05:00
Derek Foreman 3d2f5b1fd8 efl_ui_win: stop updating wdata->content
We don't need this because we calculate it in ecore_evas from the shadow
value and framespace.
2018-04-20 13:00:27 -05:00
Derek Foreman 541ab76e45 ecore_evas_wayland: Calculate content size from shadow and framespace
Instead of using wdata->content, calculate these values.
2018-04-20 13:00:27 -05:00
Derek Foreman 8b5b9989af ecore_wl2_dmabuf: Properly reconfigure on surface alpha change
When alpha changes we need to blow away all our buffers in reconfigure,
even if they're still the right dimensions.  Otherwise we can end up
rendering to an XRGB buffer when we wanted to use ARGB and we won't have
proper transparency.
2018-04-20 13:00:27 -05:00
Derek Foreman a10feaed0c ecore_wl2: Add ecore_wl2_surface_alpha_get query
We'll need this for some surface modules to properly handle alpha changes
2018-04-20 13:00:27 -05:00
Derek Foreman 6da0933d60 ecore_wl2: Add alpha to reconfigure
Currently we only ever make wayland windows with alpha, this is a step
towards changing that.
2018-04-20 13:00:27 -05:00
Derek Foreman d85e960060 wayland_egl: Fix color depth when not using alpha
Since we don't actually set the color depth at all we can end up with
an RGB565 buffer.  We don't ask for depths because apparently the N900
had a problem with this under X.

I'm not aware of any efforts to bring wayland to the N900, so let's do
this normally.
2018-04-20 13:00:27 -05:00
Daniel Kolesa dd90488b69 eolian: add capturing of variables/typedecls in expr eval
This will be used from validation to properly count actual
dependencies of a unit.
2018-04-20 16:10:55 +02:00
Daniel Kolesa 591567a6ac eolian: add 'parse' directive
This is much like 'import' but doesn't add the imported file into
the dependency list for the current file. This is to enable doc
reference validation to remain functional without needlessly
introducing file dependencies just to satisfy it.
2018-04-20 16:10:55 +02:00
Mike Blumenkrantz b9d3347a48 tests: flush stdout before beginning a test suite
Summary:
avoid having lines from the main pid repeated in forks
Depends on D5963

Reviewers: stefan_schmidt

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5964
2018-04-20 14:31:11 +02:00
Mike Blumenkrantz ea3803e6fb tests: add test to verify genlist item deletion
Reviewers: stefan_schmidt

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5963
2018-04-20 14:31:11 +02:00
Bowon Ryu f176aece65 evas_engine: remove logically dead code
Summary:
"plane" exception value is already filtered at line 1791.
execution cannot reach this statement.

Reviewers: cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5973
2018-04-20 19:07:39 +09:00
Bowon Ryu f5479c19ff ecore_con: remove unused code
Test Plan: N/A

Reviewers: cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Differential Revision: https://phab.enlightenment.org/D5975
2018-04-20 18:28:23 +09:00
Bowon Ryu 90135320d1 efl_ui_progressbar: add null check
Summary: a segmentation fault occurs once the argument is not valid.

Test Plan: N/A

Reviewers: cedric, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5974
2018-04-20 17:49:44 +09:00
Jaehyun Cho 57cfa21836 efl_net_control_access_point-connman: Fix build warning 2018-04-20 17:34:00 +09:00
Carsten Haitzler dd1e6fbf9a elm - fix build break (against efl - missing header)
cant build against efl after 939690a8a9.
this fixes that.
2018-04-20 17:30:54 +09:00
JongMin Lee 47caa0115a elm: resolve possible memory leak.
@fix
2018-04-20 16:45:50 +09:00
JongMin Lee c21ffd8735 elm: resolve possible memory leak.
@fix
2018-04-20 15:59:49 +09:00
Hermet Park 7048cc6259 ector cairo: fix a memory leak.
Here don't need to use heap memory.

@fix
2018-04-20 15:47:40 +09:00
JongMin Lee a07d729b2f elm: resolve possible memory leak.
@fix
2018-04-20 15:41:32 +09:00
JongMin Lee a42451d688 elm: resolve possible memory leak.
@fix
2018-04-20 15:36:32 +09:00
JongMin Lee b1caf014ef ecore_wl_dnd: correct wrong variable assignment
@fix
2018-04-20 15:29:44 +09:00
Jaehyun Cho fcffd58223 efl_net_control_access_point-connman: Remove unused code
if the method is EFL_NET_CONTROL_ACCESS_POINT_PROXY_METHOD_UNSET, then
the function is returned before.
2018-04-20 14:28:41 +09:00
Jaehyun Cho 0bebd097b5 elc_multibuttonentry: Fix to make multibuttonentry to be legacy only
To make multibuttonentry to be legacy only, inappropriate efl ui
interface usages are removed in multibuttonentry.
2018-04-20 14:07:35 +09:00
Hermet Park fd85423ae3 ecore: fix a potential memory leak.
if the func argument is null, allocated memory won't be freed properly.
return it as soon as possible.

@fix
2018-04-20 13:29:46 +09:00
Hermet Park 215b854b54 edje edje_cc: fix memory leak.
This token has temporary alloc'd memory.
We should free it before loosing its ptr address.

@fix
2018-04-20 13:12:22 +09:00
Hermet Park 5ea2f94ffb edje: Don't access a garbage pointer.
set null to avoid multiple access.
At 221 line, it tries to free tmp again.
2018-04-20 11:44:43 +09:00
Lauro Moura 1179058017 efl_mono: Fix after prop get const change 2018-04-19 14:06:02 -03:00
Stephen 'Okra' Houston cf359629a5 Focus: If tree focus is set to not allow focus on the object - don't give it focus.
Patch from Marcel 'bu5hm4n' Hollerbach
2018-04-19 11:19:51 -05:00
Lauro Moura 90f7144e81 elementary: Fix multibuttonentry legacy build.
Summary:
The legacy header was still referencing the eo class removed in
939690a8a9.

Reviewers: cedric, Jaehyun_Cho, vitor.sousa

Reviewed By: vitor.sousa

Differential Revision: https://phab.enlightenment.org/D5970
2018-04-19 12:38:19 -03:00
Jaehyun Cho d767c31a57 test_ui_stack: Add test using Efl.Ui.Stack class
Add test using Efl.Ui.Stack, Efl.Ui.Navigation_Layout, and
Efl.Ui.Navigation_Bar classes.

Navigation_Bar widget is set into Navigation_Layout widget and
Navigation_Layout widget is pushed into Stack widget.
2018-04-19 23:40:10 +09:00
Jaehyun Cho 6c65b6368a efl_ui_navigation_bar: Add Efl.Ui.Navigation_Bar class
Efl.Ui.Navigation_Bar is a widget which provides a bar form useful for
navigation.
2018-04-19 23:40:06 +09:00
Jaehyun Cho 7e8722be00 efl_ui_navigation_layout: Add Efl.Ui.Navigation_Layout class
Efl.Ui.Navigation_Layout is a widget which provides a layout form useful
for navigation.
2018-04-19 23:40:01 +09:00
Jaehyun Cho ab4fa83f62 efl_ui_stack: Add Efl.Ui.Stack class
Efl.Ui.Stack is a container arranges objects in stack structure by
pushing and popping them.
2018-04-19 23:39:57 +09:00
Jaehyun Cho e3315baaa3 efl_canvas_object: Add events for state changes of object's animation
Add events to notice the state changes of canvas object's animation.
anim_started, anim_running, and anim_ended events are added.
2018-04-19 23:39:32 +09:00
Woochan Lee 939690a8a9 Revert Efl.Ui.Multibuttonentry to create new one.
Summary:
Revert e02b2f04c2945ad60fab5612af1e02b0838b7ff5.

I couldnt make a revert commit for many commit has been related with above commit.

I will create a new MBE eo class ASAP. (https://phab.enlightenment.org/T5358)

Reviewers: cedric, woohyun, Jaehyun_Cho, SanghyeonLee, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5954
2018-04-19 22:22:01 +09:00
Daniel Kolesa a2ccdb7b21 eolian: re-enable non-dependencied parsing
The issue was that standalone-parsed files (outside of dependencies
of some other unit) were not being included in that dependency tree
(obviously) which resulted in their own dependency tree being
excluded from merging, causing the database hashes to lack the
necessary elements.

To fix this, I trigger merging of the "standalone" dependency trees
separately, by calling _merge_units from defer parsing cb.
2018-04-19 13:44:14 +02:00
Daniel Kolesa 974fa323a1 eolian: disable non-dependencied parsing for the time being
As 543902f2ba breaks build,
disable parsing with state as a parent for now, until the issue
is figured out.
2018-04-18 21:17:31 +02:00