Daniel Kolesa
3ae67b24b3
eolian: validate staging unit when parsing all
2018-03-22 16:27:35 +01:00
Daniel Kolesa
93a64c5eab
eolian: clean rollback support
...
Previously, when an error happened in Eolian, the state was left
in a presumably unusable and inconsistent condition. This work
aims to change that, as all changes are committed into a staging
area before being validated and merged back into main state.
This is not yet complete, as units and by-file lookups are not
currently involved in the rollback. This will change in the
subsequent commits.
@feature
2018-03-22 15:37:25 +01:00
Daniel Kolesa
d9a8fe0fca
eolian: add state staging area
...
This will be used for clean rollbacks on errors.
2018-03-22 15:37:25 +01:00
Daniel Kolesa
bc182e69d7
eolian: flush defer table before parsing
2018-03-22 15:37:25 +01:00
Cedric BAIL
bc18b7e7ad
efl: replace efl_del with efl_unref for cases where no parent exists
...
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
168849e8a0
eo: use unref instead of del when constructor fails without parent
...
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
db92072338
edje: implement invalidate method and unset device callbacks here
...
prevent crashing in dangling callbacks
ref d26124a6d818f62d892e178d92098f5159a8c9e0
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
cd8952cc6c
efl_ui_win: match return value to function type in elm_win_window_id_get
...
ref 08c9f99134
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
21f96c2a71
edje: remove device callbacks on canvas del
...
avoid some race conditions when devices change during destructor
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
de667f889e
tests: fix misuse of eina_file in evas mesh tests
...
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
6b2923c8de
edje: avoid triggering errors when deleting edje file if canvas is deleted
...
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:57 -07:00
Cedric BAIL
4c4177ac20
efl: use efl_add_ref to create objects which have no parent
...
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-20 17:20:56 -07:00
Cedric Bail
a1bf513920
eo: start reporting abuse of efl_del
2018-03-20 17:20:56 -07:00
Lauro Moura
f9586a831b
csharp: Add support for efl parts as Properties
...
Instead of
var bg = efl.ui.Background.static_cast(myobj.Part("background"));
Now do
var bg = myobj.Background;
Also a couple helper functions were added.
2018-03-20 16:50:30 -03:00
Lauro Moura
9a6dd32cb1
eolian_cxx: Fill documentation of part_def.
2018-03-20 16:50:30 -03:00
Lauro Moura
38bf8cc923
eolian-cxx: Add helper method to get all parts
...
Line get_all_methods, gets everything from the inherits too.
2018-03-20 16:50:30 -03:00
Lauro Moura
7fc20c08ee
csharp: Use the library mapping on linux too.
...
Now the generated DllImport call will have the actual library name
instead of placeholders on Linux. Before we relied on dlsym being able
to search for the symbols on all loaded so's while Windows needed you to
specify the correct library to call GetProcAddress.
This fixes the case when someone call an function from an efl interface
defined in efl.so (e.g. efl_part) and the library is not loaded yet.
2018-03-20 16:50:30 -03:00
Derek Foreman
94ddefc6fb
ecore_wl2: Send a mouse-up event on reentry after client initiated resize
...
Apparently when we initiate a client side move in ecore_wl2 we flag that
and send a mouse-up immediately on the next pointer enter.
Do the same for resize.
At some point this might need to be revisited, we should probably be
sending a "cancel" at the start of client initiated move/resize instead
of an up at the end?
Fix T6422
2018-03-20 14:30:39 -05:00
Daniel Kolesa
2db8e8e914
eolian: make use of panics for certain alloc errors
2018-03-20 17:34:51 +01:00
Daniel Kolesa
7c6d8010a8
eolian: no need for printf-style for internal log funcs
2018-03-20 17:34:51 +01:00
Daniel Kolesa
a1ae5cd918
eolian: use new error logging for all recoverable errors
2018-03-20 17:34:51 +01:00
Woochan Lee
008d990181
efl_ui_clock: Fix wrong target to compare with.
...
Summary:
It breaks API action.
It missed when implement efl_ui_clock i think.
@fix
Test Plan: elementary_test -> efl_ui_clock sample.
Reviewers: cedric, woohyun, Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D5826
2018-03-20 21:09:30 +09:00
Carsten Haitzler
6391a13558
efl.task - move to returning future insead of bool + exit event
...
title says it all...
2018-03-20 20:56:46 +09:00
Cedric Bail
2a14a283e8
eo: slight improvement of invalidate code as parent_set(NULL) will be valid on an invalidated object.
2018-03-19 16:47:28 -07:00
Cedric Bail
21164b5a56
eo: automatically cancel a future that is attached to an invalidated object.
2018-03-19 16:38:07 -07:00
Cedric Bail
08c9f99134
elementary: make sure windows are not born orfan and properly have at least a main loop as parent.
2018-03-19 15:39:14 -07:00
Cedric Bail
1fcb33f422
elementary: make global object lifecycle depends on the main loop.
2018-03-19 15:38:26 -07:00
Cedric Bail
2c336d3063
evas: use efl_add_ref for the container, might consider using a parent later on.
2018-03-19 15:36:58 -07:00
Cedric Bail
90bae9b271
evas: technically the evas canvas is using the main loop, so let's make canvas depend on it for their lifecycle.
2018-03-19 15:36:18 -07:00
Cedric Bail
2d973475ee
edje: global class should actually be bound to the main loop.
2018-03-19 15:33:44 -07:00
Cedric Bail
c3c5620c1c
ecore: the main loop has no parent and only one ref, let's properly create it.
2018-03-19 15:33:11 -07:00
Cedric Bail
fccaeb182e
eo: update tests to also use efl_add_ref correctly.
2018-03-19 14:27:01 -07:00
Cedric BAIL
a5bb8bf3df
eo: check return in efl_add before performing more operations
...
this fixes a crash on objects which fail to be created using efl_add_ref
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-19 13:04:45 -07:00
Cedric BAIL
e1a53fe125
eo: start printing warning when instanciating object with efl_add and no parent.
2018-03-19 13:04:45 -07:00
Cedric BAIL
3f5ac71ad6
eldbus: ensure the lifetime of the eldbus object path is monitored for proxies
...
the object is instantly destroyed when connection is lost
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-19 13:00:25 -07:00
Cedric BAIL
67b135ab87
eldbus: use efl_del when clearing the model connection child list
...
it is an error to delete an object with an existing parent
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-19 13:00:25 -07:00
Cedric BAIL
46992cbed5
tests: do not call unref on eldbus message objects after sending them
...
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2018-03-19 13:00:25 -07:00
Davide Andreoli
97289953ec
Pyolian: fix __repr__ for Documentation
2018-03-17 12:06:34 +01:00
Davide Andreoli
2cb896dfab
Pyolian doc generator: update wrt name API changes
...
Argh, this has been difficult... hopefully I have done
this right
2018-03-17 11:37:13 +01:00
Davide Andreoli
35316db2f0
Pyolian: let ctypes automatically convert types
...
Not a big improvement and not so much automatically...
but for sure a bit less to type :)
2018-03-17 10:49:42 +01:00
Davide Andreoli
ef3e487b0c
Pyolian: use tuple instead of list in declarations
...
This is a bit more correct and (maybe) a bit more faster
2018-03-17 10:31:33 +01:00
Davide Andreoli
6ef5f30a85
Pyolian: new API eolian_unit_state_get
2018-03-17 10:19:28 +01:00
Davide Andreoli
0a00e4cca1
Pyolian: new API eolian_object_unit_get
...
Also implemented __repr__ for Unit and State
2018-03-17 10:01:24 +01:00
Davide Andreoli
1ab22e4f00
Pyolian: fix tests wrt name/short_name/full_name API changes
2018-03-17 09:46:17 +01:00
Davide Andreoli
81d15b7cd8
Pyolian: add support EOLIAN_SO_DIR env var
...
Thanks goes to @lauromoura for proposing this in D5840
2018-03-16 20:00:49 +01:00
Derek Foreman
7784405ad9
ecore_wl2: Silence a commit ERR on window hide
...
Cosmetic fix, should be functionally identical. Hide can be called
asynchronously, so it's ok, and the ERR can be silenced.
2018-03-16 12:48:41 -05:00
Daniel Kolesa
9610459502
eolian: add APIs to get unit from object and state from unit
2018-03-16 16:16:16 +01:00
Daniel Kolesa
60c733670d
eolian: intial API for a new error mechanism
...
Unlike panic, this will be used to handle regular errors
such as parse errors. There will be no jumps and you
will be able to pass in a pointer to get the error
data into some local memory. That way you will be
able to override printing error messages.
2018-03-16 16:07:12 +01:00
Daniel Kolesa
927bcfd60a
eolian: initial API for a new panic mechanism
...
This will be used to handle unrecoverable errors.
For robustness, you will be able to set a custom
panic callback, jump and try to recover manually.
2018-03-16 15:41:57 +01:00
Lauro Moura
2705ea8531
csharp: Fix support for ptr(structs)
...
In general, ptr(struct) parameters behavior depends whether the
parameter has the @owned modifier or not.
If there is no @owned parameter (meaning no transfer of ownership
happens) and it is a "complex" struct, with reference type fields
(like strings), the struct is converted to the respective
<Struct>Internal struct and passed with "ref" to the DllImport'd
function. For @in parameters, after the function it returns, this
intermediate struct is converted to the public struct type and
assigned to the original parameter, updating it to the external
world.
When we have ownership transfers, the structure is copied to unmanaged
memory and given to the callee. We can't send managed memory directly as
the callee may try to free it. On the managed side, the original struct
is left to be garbage collected normally.
2018-03-16 11:12:49 -03:00