JunsuChoi [Fri, 26 Apr 2019 08:44:30 +0000 (17:44 +0900)]
efl_ui_animation_view: Fix current frame calc.
Summary:
pd-> progress is always 0 to 1, even if min/max_frame/progress_set is set.
Because it follow the progress of transit.
Therefore, if min/max_frame/progress is set, frame_get returns an invalid value.
Modify it to return frame with min/max_frame/progress applied.
Test Plan: N/A
Reviewers: Hermet, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8716
Change-Id: Id197cd88f02e200ca4f581fa46a06a38311fe38e
JunsuChoi [Fri, 26 Apr 2019 08:42:40 +0000 (17:42 +0900)]
efl_ui_animation_view: Update callback is called only actual change time.
Summary:
The transit_cb is called from 0 to 1 depending on the duration.
Since the update callback is called even if there is no actual change,
we change it to call when there is a change in the frame.
Test Plan: N/A
Reviewers: Hermet, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8715
Change-Id: I3afb40e59261d4d76e8c44ed75c6f87287adfbed
Joogab Yun [Tue, 12 Mar 2019 06:03:04 +0000 (15:03 +0900)]
add evgl_eng_native_win_surface_config_get()
This is for wayland_egl backend.
refer : https://review.tizen.org/gerrit/#/c/platform/upstream/efl/+/52462/
Change-Id: I4cc07a4ee849141aec447c759ea96a82fb9d4a00
Wonki Kim [Tue, 30 Apr 2019 15:27:25 +0000 (11:27 -0400)]
wl2_input: fix a problem that occurs in case of using both pointer/touch input devices
Summary:
if wl2_input logic gets a 'touch down' event from touch device,
input->focus.touch has set and it cause the logic handles every input as touch input
from that moment at _ecore_wl2_input_mouse_move_send function.
that is the reason why the patch(
410c1f95879e46a5e52132662d4c43b74e95a251) has written for.
however, if there are multiple touch input devices,
clearing focus.touch variable without checking any conditions causes another problem.
I mean a case such as 'touch 1 down' -> 'touch 2 down' -> 'touch 1 up' -> 'touch 2 up'
at the moment 'touch 1 up' event executed, focus.touch would be cleared,
and 'touch 2 up' and following touch events will not be executed properly at the moment.
this patch counts a number of touch devices which are grabbing to clear focus.touch at proper time.
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8787
Change-Id: I95b64df82f17069762aa93a60b0eb048805e5bac
Signed-off-by: Wonki Kim <wonki_.kim@samsung.com>
Hermet Park [Tue, 30 Apr 2019 08:13:32 +0000 (17:13 +0900)]
evas engine: convert data without any possible loss.
Change-Id: I74237a280a8e0cae8ecb235dd720f3a352990ffd
Jaehyun Cho [Tue, 30 Apr 2019 02:16:06 +0000 (11:16 +0900)]
Revert "efl.ui.widget: disable parts{} block for now"
This reverts commit
06aabbf8529edd5f09a1ce7c3c59237b2857e98a.
The original commit is reverted after release.
Change-Id: Ibea550439ffe0b6fb37fa7c80d3af12f98b5adc4
Woochanlee [Tue, 30 Apr 2019 01:39:16 +0000 (10:39 +0900)]
evas_engine: Delete duplicated values during migration.
Christopher Michael [Mon, 29 Apr 2019 13:59:17 +0000 (09:59 -0400)]
ecore-wl2: Minor formatting fixes
NB: No functional changes
Christopher Michael [Mon, 29 Apr 2019 13:58:05 +0000 (09:58 -0400)]
ecore-wl2: Minor formatting fixes
NB: No functional changes
Xavi Artigas [Mon, 29 Apr 2019 11:16:51 +0000 (13:16 +0200)]
docs: Minor adjustments to Efl.Ui.Progressbar
Hermet Park [Mon, 29 Apr 2019 10:55:38 +0000 (19:55 +0900)]
evas png loader: optimize scale down logic.
Previously, mannual scale down logic was too primitive,
it copied pixel data each channels. Obviously, it's ineffective.
We know the general case - 4 bytes channel which is the most usage,
If loader copies data per four bytes, instructions could be reduced.
When I load scale-downed image(original 8k), about 0.02 secs was reduced by this.
Shilpa Singh [Tue, 23 Apr 2019 11:39:50 +0000 (11:39 +0000)]
elm_scroller: make loop_set/get as generic API
elm_scroller_loop_set cannot be used for other widgets except scroller,
the API should be generic as this functionality can be implemented by other widgets as well.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8686
Christopher Michael [Sat, 27 Apr 2019 18:21:43 +0000 (14:21 -0400)]
elc_hoversel: Fix crash when no sd->last_location
As we cannot pass NULL to strcmp (crashes when we do), we should check
for a valid sd->last_location here in order to avoid crashing. This
was detected in Enlightenment Screen Settings dialog by selecting a
monitor in the hoversel drop down.
@fix
Cedric BAIL [Tue, 23 Apr 2019 16:56:09 +0000 (09:56 -0700)]
eio: do not fail when the future has been cancelled properly.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8691
Marcel Hollerbach [Sat, 27 Apr 2019 09:57:50 +0000 (11:57 +0200)]
eina_vpath do not pass things through snprintf when not expected.
lets assume a user passes in a string like "blabla%dehydra" then %d will
be resolved by snprintf. Which is probebly not what we want. This
resolves this case and ensures that eina_vpath_resolve does not get
piped through snprintf
Reviewed-by: Dave Andreoli <dave@gurumeditation.it>
Differential Revision: https://phab.enlightenment.org/D8753
Cedric BAIL [Thu, 18 Apr 2019 20:37:28 +0000 (13:37 -0700)]
ecore: properly handle CHILD_ADDED and CHILD_REMOVED from source for Efl.CompositeModel
Before this patch we were directly sending this event on the Efl.CompositeModel, but they
actually might contain an Efl.Model in the event child field. That Efl.Model wouldn't have
been converted before to an Efl.CompositeModel exposing incoherence from the user of
the object point of view. This patch fix that behavior.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8661
Cedric BAIL [Thu, 18 Apr 2019 16:57:53 +0000 (09:57 -0700)]
ecore: use new infrastructure for Efl.CompositeModel to only have one Model object represent its data at any point in time.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8660
Cedric BAIL [Thu, 18 Apr 2019 16:42:37 +0000 (09:42 -0700)]
ecore: protect efl_model_properties_get from accesing NULL pointer when Model parent is not a Efl.BooleanModel.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8659
Cedric BAIL [Thu, 18 Apr 2019 16:35:48 +0000 (09:35 -0700)]
ecore: fix efl_model_property_ready_get to actually return the right future when the data is not ready.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8658
Cedric BAIL [Thu, 18 Apr 2019 16:34:46 +0000 (09:34 -0700)]
ecore: allow multiple Efl.ViewModel of the same source thanks to new infrastructure.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8657
Cedric BAIL [Thu, 18 Apr 2019 16:31:14 +0000 (09:31 -0700)]
ecore: add infrastructure to create children Model once and avoid duplicated view of the same data.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8656
Cedric BAIL [Thu, 18 Apr 2019 16:28:31 +0000 (09:28 -0700)]
eina: allow copy of EINA_VALUE_EMPTY type.
This is usefule to allow timeout future to be propagated through eina_future_all
or eina_future_race for example.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8655
Marcel Hollerbach [Fri, 26 Apr 2019 14:19:20 +0000 (16:19 +0200)]
meson: lets add cxx examples
Summary:
it appears they have not been part of this before. Now they are, and two
broken examples are fixed.
Reviewers: segfaultxavi
Reviewed By: segfaultxavi
Subscribers: segfaultxavi, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8735
Xavi Artigas [Fri, 26 Apr 2019 11:01:41 +0000 (13:01 +0200)]
docs: Reword Efl.Container and family
Summary:
Avoid using "Item" since this is used by Grid and List items, or "Child" since
this is what Efl.Object uses.
Also clarify what each container does.
Test Plan: Only changes in docs. Everything still builds and passes tests.
Reviewers: bu5hm4n, cedric, zmike
Reviewed By: bu5hm4n
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8720
Marcel Hollerbach [Fri, 26 Apr 2019 12:13:43 +0000 (14:13 +0200)]
autotools: fix build
Summary:
i forgot this before. efl_gfx_arrangement.eo needs to be in the list of
files here.
Reviewers: segfaultxavi, cedric, zmike
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8721
Marcel Hollerbach [Thu, 25 Apr 2019 11:44:10 +0000 (13:44 +0200)]
efl_ui_spec: lets add a README
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8713
Marcel Hollerbach [Wed, 24 Apr 2019 17:18:30 +0000 (19:18 +0200)]
efl_ui_suite_spec: add efl_ui_grid to test suite
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8707
Marcel Hollerbach [Wed, 24 Apr 2019 17:16:57 +0000 (19:16 +0200)]
efl_ui_grid: do not delete a item that is not part of this container
otherwise we start to delete callbacks etc. on a widget that we do not
have.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8706
Marcel Hollerbach [Wed, 24 Apr 2019 17:15:49 +0000 (19:15 +0200)]
efl_ui_grid: reparent deleted children
if a child is removed from grid, the parent should not be grid anymore.
Additionally, group members should also be removed, or random deletions
of widgets could happen.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8705
Marcel Hollerbach [Wed, 24 Apr 2019 17:12:15 +0000 (19:12 +0200)]
efl_ui_grid: add an error to grid
grid only accepts grid items, not general widgets. If a wrong type is
passed in, a error should be printed.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8704
Marcel Hollerbach [Wed, 24 Apr 2019 17:10:12 +0000 (19:10 +0200)]
efl_ui_grid: implement index behaviour of efl_pack
efl_pack defines behaviour for indexes greater and smaller than 0 and
the actaul size of items. With this commit the defined lange -count <->
count -1 now works as expected.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8703
Marcel Hollerbach [Wed, 24 Apr 2019 15:56:35 +0000 (17:56 +0200)]
efl_ui_grid: fixup pack APIs
the APIs in pack should only allow a single registeration of a item.
And when this item is registered, the parent should be set accordingly.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8702
Marcel Hollerbach [Wed, 24 Apr 2019 15:35:45 +0000 (17:35 +0200)]
efl_ui_spec_suite: support custom widgets
sooo, this test suite is testing interfaces. And when a content needs to
be passed into the API, a lightweight version of a widget will be passed
in. But sometimes implementations *do* requires special classes, they
can now be specified with a custom-mapping in json.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8701
Marcel Hollerbach [Wed, 24 Apr 2019 13:41:39 +0000 (15:41 +0200)]
efl_pack: split algin and padding property
the pack interface is a general interface for how we pack things into a
container. the align and padding property has less to nothing to do with
this. Hence this commit splits the two properties into theire own
interface.
fix T7825
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8699
Jaehyun Cho [Fri, 26 Apr 2019 08:57:24 +0000 (17:57 +0900)]
efl_ui: fix not to call _on_child_del() after container is deleted
If efl_ref() is called to child, then child may not be deleted when
container is deleted.
This causes _on_child_del() is called after container is deleted and it
causes crash if container data is accessed in _on_child_del().
To resolve the above issue, all callbacks of child are deleted not to
call _on_child_del() after container is deleted.
Hermet Park [Fri, 26 Apr 2019 07:58:52 +0000 (16:58 +0900)]
evas waylang_egl: flag on msaa to optimize map drawing.
This msaa flag could help map drawing by avoiding unnecessary framebuffer mapping.
Yeongjong Lee [Fri, 26 Apr 2019 05:55:37 +0000 (14:55 +0900)]
edje_calc: replace eina_stringshare_ref with eina_stringshare_add
Summary:
When there is circular dependency in edc, a bunch of CRI log is printed.
This patch fixes it.
```
ERR<10159>:edje lib/edje/edje_calc.c:3919 _edje_part_recalc() Circular dependency in the group 'test' : longpartname -> longpartname -> longpartname2
ERR<10159>:edje lib/edje/edje_calc.c:3896 _edje_part_recalc() Circular dependency when calculating part "longpartname". Already calculating XY [03] axes. Need to calculate Y [02] axes
CRI<10159>: lib/eina/eina_share_common.c:559 _eina_share_common_node_from_str() *** Eina Magic Check Failed at 0x7fb7c93ebf60 !!!
Input handle is wrong type.
Expected:
98761254 - Eina Stringshare Node
Supplied:
2f736e6f - (unknown)
CRI<10159>: lib/eina/eina_share_common.c:559 _eina_share_common_node_from_str() *** Eina Magic Check Failed at 0x7fb7c93ec5d1 !!!
Input handle is wrong type.
Expected:
98761254 - Eina Stringshare Node
Supplied:
5f747261 - (unknown)
```
If string is already stored, `eina_stringshare_add` increase its reference count.
Test Plan:
test.c
```
//edje_cc test.edc && gcc -o test test.c `pkg-config --libs --cflags elementary`
int main(int argc, char **argv)
{
elm_init(argc, argv);
Evas_Object *win = elm_win_util_standard_add("test", "test");
Evas_Object *layout = elm_layout_add(win);
elm_layout_file_set(layout, "./test.edj", "test");
elm_win_resize_object_add(win, layout);
evas_object_show(layout);
evas_object_resize(win, 200, 200);
evas_object_show(win);
elm_run();
elm_shutdown();
return 0;
}
```
test.edc
```
collections {
group { name: "test";
parts {
rect { name: "longpartname";
desc { "default";
rel1.to: "longpartname2";
}
}
rect { name: "longpartname2";
type: RECT;
desc { "default";
rel2.to: "longpartname";
}
}
}
}
}
```
Reviewers: SanghyeonLee, zmike
Reviewed By: SanghyeonLee
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8717
Hosang Kim [Fri, 26 Apr 2019 04:24:01 +0000 (13:24 +0900)]
evas_events: fix grab count does not become 0 with proxy object.
Summary:
1. src_event_in should not be initialized when grabbed object exists.
2. when object of pointer grab is deleted and if object has proxy,
proxy object of pointer grab should be deleted together.
Reviewers: Hermet
Reviewed By: Hermet
Subscribers: zmike, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8698
Woochanlee [Thu, 25 Apr 2019 12:24:42 +0000 (21:24 +0900)]
elm_theme: Check the ref count to delete or unref.
Summary:
In case of the ref count bigger than 1.
That means the eo_theme ref count is 2.
In that case we need to call efl_unref when theme freed.
other case we can delete eo_theme.
@fix
Reviewers: Jaehyun_Cho, woohyun, Hermet
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8714
Ali Alzyod [Tue, 23 Apr 2019 16:52:55 +0000 (16:52 +0000)]
evas: change way of searching for Escape strings/values in textblock
Instead of using old way for linear search for Escape Strings or Escape values, we will sort these values and string in compile time then binary search them.
In simple words:
Instead of having one array with pair of {escapeChar,escapeValue} and linear search it.
We will have two arrays with pair of {escapeChar,escapeValue}, one with escapeChar Sorted, and one with escapeValue sorted.
and we will use one of the array to binary search escape chars, and use the other to binary search escape values,
1- This will increase the speed for the search a lot for both Escape characters and Escape values.
2- Make code more easy to understand and trace
3- This will also fix bug for
```
int value;
const char * value = evas_textblock_string_escape_get("",&value)
//because of some unhanded case in previous code, this will return "&qout;" , which is first element in predefined escape character array
```
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8610
Hermet Park [Thu, 25 Apr 2019 09:55:55 +0000 (18:55 +0900)]
ecore_evas wayland: fix a build break.
Summary: missed changing here.
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8712
Hermet Park [Thu, 25 Apr 2019 09:41:43 +0000 (18:41 +0900)]
evas wayland_egl: set up config depth/stencil/msaa properly.
JunsuChoi [Thu, 25 Apr 2019 09:02:14 +0000 (11:02 +0200)]
README, doc : Fix typo
Reviewers: Hermet, kimcinoo, segfaultxavi
Reviewed By: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8710
Hermet Park [Thu, 25 Apr 2019 08:25:52 +0000 (17:25 +0900)]
elementry win: support msaa, stencil and depth bits for wayland.
Hermet Park [Thu, 25 Apr 2019 08:08:37 +0000 (17:08 +0900)]
ecore_evas: generalize option defines.
There some engine option defines could be generalized from the window system
since those options could be used through wayland, x11 both, and probably so on.
Marcel Hollerbach [Tue, 23 Apr 2019 08:21:43 +0000 (10:21 +0200)]
efl_ui_spec_suite: move the information about tests to the test files
for now the widgets which are tested are encoded in the test files where
the tests are implemented. This is for now done in a simple json format,
just for the sake of simplicity.
ref T7815
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8685
Marcel Hollerbach [Tue, 23 Apr 2019 15:28:58 +0000 (17:28 +0200)]
meson: do not use the variable name env in mono
env is used for the program env, and should not be used in any other
form here.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8690
Christopher Michael [Wed, 24 Apr 2019 13:35:30 +0000 (09:35 -0400)]
Revert "static_libs/vg_common: Fix resource leak"
Revert this as it causes edje_cc to segfault.
This reverts commit
2a4c87bb1172f017523fdda0d1de9ca2cd0e0493.
Lauro Moura [Wed, 24 Apr 2019 02:31:46 +0000 (02:31 +0000)]
meson: Fix evas engine install directory.
Evas module loading code assumes engines are installed in
evas/modules/engines.
As part of the fixes building evas with meson, the engines are under a
subproject named evas/engines, causing the modules to be installed in
libdir/evas/engines/modules by default.
This commit adds a override of the directory the engine modules are
installed to use the correct location.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8693
Christopher Michael [Wed, 24 Apr 2019 12:58:57 +0000 (08:58 -0400)]
static_libs/vg_common: Remove extra blank lines
NB: No functional changes
Christopher Michael [Wed, 24 Apr 2019 12:56:00 +0000 (08:56 -0400)]
static_libs/vg_common: Fix resource leak
Coverity reports a resource leak here. The function _create_node
returns allocated storage which should be freed when we are finished
with it.
Fixes CID1382215
@fix
Christopher Michael [Wed, 24 Apr 2019 12:52:02 +0000 (08:52 -0400)]
ecore-evas-x: Fix double free
Coverity reports, and reading the code confirms, that the variable
'out' has already been freed (or is NULL) when reaching this line of
execution.
Fixes CID1382851
@fix
Yeongjong Lee [Wed, 24 Apr 2019 12:09:53 +0000 (21:09 +0900)]
ui.relative_layout: fix incorrect type casting
Summary: `temph` can be double type.
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8695
Yeongjong Lee [Wed, 24 Apr 2019 11:33:20 +0000 (20:33 +0900)]
ui.relative_layout: enhance relation_xxx_set,get apis
Summary:
I forgot `efl_pack_layout_request` after relation_xxx is changed.
Unnecessary register function in `relation_xxx_get` will return unexpected result.
if a object is not child of relative_layout, `relation_xxx_get` should return
`target = NULL` and `relative = 0.0` with error message.
Test Plan: make check
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8627
Yeongjong Lee [Wed, 24 Apr 2019 11:32:45 +0000 (20:32 +0900)]
ui.relative_layout: add callbacks to update layout
Summary:
If the size or hints of a child changes, relative_layout need to update layout.
And, if a child is deleted, it should be unregisterd from relative_layout.
Depends on D8625
Test Plan: elementary_test -to 'efl.ui.relative_layout'
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8626
Taehyub Kim [Wed, 24 Apr 2019 09:56:32 +0000 (11:56 +0200)]
eo_parser: fix unreachable code
Summary: fix unreachable code for kw_enum case in parse_unit function
Reviewers: q66, Jaehyun_Cho, woohyun
Reviewed By: q66
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8696
Xavi Artigas [Wed, 24 Apr 2019 08:52:31 +0000 (10:52 +0200)]
docs: Fix genlist widget preview generation
Summary:
This was making "ninja doc" segfault for me.
If these function tables are not initialized they contain garbage, which leads
to the worst kind of undefined behavior.
Test Plan: Apply D8561 and try `ninja doc`. It was dumping core for me, and it does not do it anymore after this patch.
Reviewers: bu5hm4n, zmike, cedric
Reviewed By: bu5hm4n
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8697
Hermet Park [Wed, 24 Apr 2019 07:39:23 +0000 (16:39 +0900)]
evas x: code refactoring.
keep simple code as possible.
Marcel Hollerbach [Tue, 23 Apr 2019 19:54:50 +0000 (21:54 +0200)]
meson: ensure that buffer header is installed correctly
the directory it was installed to was <prefix>/include/evas/engine-1/
instead of <prefix>/include/evas-1/ which is wrong. This fixes
enlightenment building.
Reviewed-by: Lauro Neto <lauromauro_>
Differential Revision: https://phab.enlightenment.org/D8692
Wonki Kim [Mon, 29 Apr 2019 07:00:11 +0000 (16:00 +0900)]
software_generic: fix a logic to handle the missed type.
XRGB8888 looks not existing as a pair within getter/setter.
this patch modifies it
Change-Id: Ia8808a4826dedd20fad942f06ba18345ea5c4bf8
Signed-off-by: Wonki Kim <wonki_.kim@samsung.com>
Yeongjong Lee [Fri, 26 Apr 2019 05:55:37 +0000 (14:55 +0900)]
edje_calc: replace eina_stringshare_ref with eina_stringshare_add
Summary:
When there is circular dependency in edc, a bunch of CRI log is printed.
This patch fixes it.
```
ERR<10159>:edje lib/edje/edje_calc.c:3919 _edje_part_recalc() Circular dependency in the group 'test' : longpartname -> longpartname -> longpartname2
ERR<10159>:edje lib/edje/edje_calc.c:3896 _edje_part_recalc() Circular dependency when calculating part "longpartname". Already calculating XY [03] axes. Need to calculate Y [02] axes
CRI<10159>: lib/eina/eina_share_common.c:559 _eina_share_common_node_from_str() *** Eina Magic Check Failed at 0x7fb7c93ebf60 !!!
Input handle is wrong type.
Expected:
98761254 - Eina Stringshare Node
Supplied:
2f736e6f - (unknown)
CRI<10159>: lib/eina/eina_share_common.c:559 _eina_share_common_node_from_str() *** Eina Magic Check Failed at 0x7fb7c93ec5d1 !!!
Input handle is wrong type.
Expected:
98761254 - Eina Stringshare Node
Supplied:
5f747261 - (unknown)
```
If string is already stored, `eina_stringshare_add` increase its reference count.
Test Plan:
test.c
```
//edje_cc test.edc && gcc -o test test.c `pkg-config --libs --cflags elementary`
int main(int argc, char **argv)
{
elm_init(argc, argv);
Evas_Object *win = elm_win_util_standard_add("test", "test");
Evas_Object *layout = elm_layout_add(win);
elm_layout_file_set(layout, "./test.edj", "test");
elm_win_resize_object_add(win, layout);
evas_object_show(layout);
evas_object_resize(win, 200, 200);
evas_object_show(win);
elm_run();
elm_shutdown();
return 0;
}
```
test.edc
```
collections {
group { name: "test";
parts {
rect { name: "longpartname";
desc { "default";
rel1.to: "longpartname2";
}
}
rect { name: "longpartname2";
type: RECT;
desc { "default";
rel2.to: "longpartname";
}
}
}
}
}
```
Reviewers: SanghyeonLee, zmike
Reviewed By: SanghyeonLee
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8717
Change-Id: I60a00da735f4e65b176badcb1219798b5aeff016
Yeongjong Lee [Wed, 24 Apr 2019 11:33:20 +0000 (20:33 +0900)]
ui.relative_layout: enhance relation_xxx_set,get apis
Summary:
I forgot `efl_pack_layout_request` after relation_xxx is changed.
Unnecessary register function in `relation_xxx_get` will return unexpected result.
if a object is not child of relative_layout, `relation_xxx_get` should return
`target = NULL` and `relative = 0.0` with error message.
Test Plan: make check
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8627
Change-Id: Ifc3fd0f64bb337758bfb1766cf1b334cc2376832
Yeongjong Lee [Wed, 24 Apr 2019 11:32:45 +0000 (20:32 +0900)]
ui.relative_layout: add callbacks to update layout
Summary:
If the size or hints of a child changes, relative_layout need to update layout.
And, if a child is deleted, it should be unregisterd from relative_layout.
Depends on D8625
Test Plan: elementary_test -to 'efl.ui.relative_layout'
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8626
Change-Id: I591ffef693eee563e9a7d266b7e122936aa7aa7b
Hermet Park [Fri, 26 Apr 2019 07:58:52 +0000 (16:58 +0900)]
evas waylang_egl: flag on msaa to optimize map drawing.
This msaa flag could help map drawing by avoiding unnecessary framebuffer mapping.
Change-Id: Ib2f9bde97ba98b7d386e9505926579ef524f2338
Yeongjong Lee [Wed, 24 Apr 2019 11:23:52 +0000 (20:23 +0900)]
ui.relative_layout: add internal clipper
Summary: If there is no clipper of container, color_set and clipper_set api won't work.
Test Plan:
1. elementary_test -to 'efl.ui.relative_layout'
2. Click button1
3. check that buttons color are changed.
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8625
Change-Id: I2d69eb9dd42b3b415f70d09a0365b8002d54da15
Taehyub Kim [Wed, 24 Apr 2019 09:56:32 +0000 (11:56 +0200)]
eo_parser: fix unreachable code
Summary: fix unreachable code for kw_enum case in parse_unit function
Reviewers: q66, Jaehyun_Cho, woohyun
Reviewed By: q66
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8696
Change-Id: Ia15e245c6a87c9d4c7b0a0785cf31ba8f5690342
JunsuChoi [Fri, 26 Apr 2019 08:04:05 +0000 (17:04 +0900)]
efl_ui_animation_view: Add since_tizen docs
Change-Id: I08527a484fbe62061d03ffadb56756c4856df6d6
Hermet Park [Thu, 25 Apr 2019 09:55:55 +0000 (18:55 +0900)]
ecore_evas wayland: fix a build break.
Summary: missed changing here.
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8712
Change-Id: Ib63e1681ef5d370ea38d3c400efa3d6936661aa4
Hermet Park [Thu, 25 Apr 2019 09:41:43 +0000 (18:41 +0900)]
evas wayland_egl: set up config depth/stencil/msaa properly.
Change-Id: I8c1c0af0efa10f1536f292609e6266ff892e4544
Hermet Park [Thu, 25 Apr 2019 08:25:52 +0000 (17:25 +0900)]
elementry win: support msaa, stencil and depth bits for wayland.
Change-Id: I1a6bb202769bce41075513954c551c83b035bb31
Hermet Park [Thu, 25 Apr 2019 08:08:37 +0000 (17:08 +0900)]
ecore_evas: generalize option defines.
There some engine option defines could be generalized from the window system
since those options could be used through wayland, x11 both, and probably so on.
Change-Id: I1dfef761f7024b573a35038e1acb10d619dc61ad
Hermet Park [Thu, 25 Apr 2019 07:56:40 +0000 (16:56 +0900)]
ecore wayland: expand internal interface to pass engine option list.
This is a prepartion patch to support msaa in wayland.
ui window needs to deliver engine options (stencil, depth, msaa bits)
to evas engine side, ecore_evas_wayland_egl should have the argument to pass.
Change-Id: I7f529f0e0ae2f1f46062dfc7d6a4dd7beaed8382
Woochanlee [Thu, 25 Apr 2019 09:46:47 +0000 (18:46 +0900)]
edje_load: Delete unnecessary style update function call.
https://phab.enlightenment.org/D8560
I tried to push this commit on upstream.
But We has diffrent logic for style update.
@tizen_fix
Change-Id: I1da315768cfe117029372717a86f0d5242c21d91
JunsuChoi [Fri, 26 Apr 2019 01:46:06 +0000 (10:46 +0900)]
vg_common_json: Support mask with matte case.
Summary:
The layer can have both a mask node and a matte node.
In this case, one of them may be missing because it uses one mask_set api.
If there is a matte, the mask is to be child of the matte.
Test Plan:
.._mask_set(layer, matte);
.._mask_set(layer, mask);
Reviewers: Hermet, kimcinoo
Reviewed By: Hermet
Subscribers: cedric, #reviewers, smohanty, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8709
Change-Id: I2a617cbaf087ae9839befa40b94d6e40e2d859ce
Wonki Kim [Fri, 26 Apr 2019 01:42:43 +0000 (10:42 +0900)]
entry: revert a single line
Summary:
the line this patch is reverting was not I intended.
at D8362, I just wanted to accept what zmike proposed.
this patch make the previous patch what It was supposed to be.
Reviewers: zmike
Subscribers: bowonryu, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8694
Change-Id: I5ffcf88e2c8b6ec73b16e603f922f754e05bdb7d
Signed-off-by: Bowon Ryu <bowon.ryu@samsung.com>
JunsuChoi [Thu, 25 Apr 2019 08:32:48 +0000 (17:32 +0900)]
efl_ui_animation_view: Remove docs in set/get.
Summary:
it is not used. and not generated at docs of C# and python languages.
Test Plan: N/A
Reviewers: kimcinoo, Hermet
Reviewed By: kimcinoo
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8711
Change-Id: Ic711cfd77c9f84f925e586d20a7284cf5db986bd
Woochanlee [Thu, 25 Apr 2019 12:19:35 +0000 (21:19 +0900)]
elm_theme: Check the ref count to delete or unref.
In case of the ref count bigger than 1.
That means the eo_theme ref count is 2.
In that case we need to call efl_unref when theme freed.
other case we can delete eo_theme.
@fix
https://phab.enlightenment.org/D8714
e25f00c2d5d98854b1ddab5d9d3b34ce63766db3
Change-Id: Ifcbcd40ece56f8b466fbb3e00b1344a000f55ca8
Jaehyun Cho [Thu, 25 Apr 2019 10:28:37 +0000 (19:28 +0900)]
efl_mono: EflSharp application uses efl_sharp theme
efl_sharp theme is overlaid to be used by EflSharp application.
i.e. /usr/share/efl-sharp/efl-sharp-theme.edj
Change-Id: Ied26f2d0bd55dd98d199f0fa9894bb4294df98b8
Taehyub Kim [Tue, 12 Feb 2019 06:48:11 +0000 (15:48 +0900)]
efl_ui_win: add new swallow part for circle object
Change-Id: Iba8fb5806187773d80ebf5a62f1e6116ba8c61f2
Yeongjong Lee [Wed, 24 Apr 2019 12:09:53 +0000 (21:09 +0900)]
ui.relative_layout: fix incorrect type casting
Summary: `temph` can be double type.
Reviewers: Jaehyun_Cho
Reviewed By: Jaehyun_Cho
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8695
JunsuChoi [Wed, 24 Apr 2019 07:17:48 +0000 (16:17 +0900)]
Efl.Ui.Animation_View: Enhance documentation of elm_animation_view.
Summary:
- Add "Animation View" item at elementary_main.
- Change EAPIs naming.
- Change version 1.22 to 1.23.
Test Plan:
make doc
firefox doc/html/widgetslist.html
Go "Animation View"
Reviewers: Hermet, kimcinoo, segfaultxavi
Subscribers: segfaultxavi, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8675
Change-Id: I1a570f8f8b73ab0e41d0b21dbe8fbde274118927
Wonsik Jung [Thu, 25 Apr 2019 06:44:43 +0000 (15:44 +0900)]
[EvasGL] Fix the partial rendering bug
Fix the partial rendering bug
Change-Id: Ide85ba49c4a32e198079d258ddf7876f0a6bb4a6
Wonki Kim [Wed, 24 Apr 2019 04:57:03 +0000 (13:57 +0900)]
meson: migrate upstream patches to tizen
regarding patches(93983e0, 6114570, 7273fbb, 3418659),
they have too many diff to cherry-pick on tizen
this patch migrate them
Change-Id: Id72ecf0e9acf5b1913967afff20ac008d7920c8e
Marcel Hollerbach [Fri, 19 Apr 2019 18:39:31 +0000 (14:39 -0400)]
meson: make it possible to link our engines against evas
Summary:
it FINALLY happend! With this python bindings should be able to work
again with a meson build, you can also enable b_lundef right now. And it
appears to work, with this we can also get another step closer to a
windows build.
Depends on D8669
Reviewers: zmike, stefan_schmidt, cedric, vtorri
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8670
Marcel Hollerbach [Fri, 19 Apr 2019 18:39:25 +0000 (14:39 -0400)]
meson: seperate the engine build file from the rest
Summary:
this is required later on, where we want to build the engines
undependend from image loaders etc.
Depends on D8668
Reviewers: zmike, stefan_schmidt, cedric, vtorri
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8669
Change-Id: Iad68a3932bdb10868f51f2f881737befb92f4b6a
Marcel Hollerbach [Fri, 19 Apr 2019 18:39:22 +0000 (14:39 -0400)]
meson: move build definitions of software_generic to libevas
Summary:
with this we don't have any static module anymore in the engine
directory. This means either *all* modules in the enignes directory are
static OR shared. There is no mixture anymore. This is a requirement for
the directory to be build whenever we want it to be build.
Depends on D8667
Reviewers: zmike, stefan_schmidt, cedric, vtorri
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8668
Change-Id: I973c4366b888d1d452b8b0e25340b6fc6dd5a5b5
Marcel Hollerbach [Fri, 19 Apr 2019 18:39:17 +0000 (14:39 -0400)]
meson: move gl_common to gl_generic
Summary:
sooo, gl_common stuff is only used by gl_generic, (and maybe others.
However, it is build static anyways and only linked into gl_generic).
This means, only software_generic is still in here and we can remove one
special case from the build instructions.
Reviewers: zmike, stefan_schmidt, cedric, vtorri
Reviewed By: zmike
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8667
Change-Id: Id7b2641c95d7581a43da4a07dc8531347f8b6caf
Jaehyun Cho [Wed, 24 Apr 2019 05:44:50 +0000 (14:44 +0900)]
efl_canvas_animation_player: fix to apply animation when player starts
Previously, animation was not applied immediately when player starts
animation because elapsed time is 0.
This caused flickering object if animation begins with alpha 0 because
the alpha 0 animation is not applied immediately.
Now, animation is applied immediately when player start animation.
Change-Id: I0656540589492d68b3fb61ef8eb25faadf3f4011
Jaehyun Cho [Wed, 24 Apr 2019 05:44:19 +0000 (14:44 +0900)]
efl_ui_stack: handle memory allocation fail
check if memory allocation succeeds and handle memory allocation fail.
Change-Id: Iebee55a63cef5c37f910aacef6067a1431ec9452
SangHyeon Jade Lee [Tue, 23 Apr 2019 07:34:32 +0000 (07:34 +0000)]
examples : update list_view examples to use item_class_set not layout_theme_config.
widget_factory support item_class_set for factory created child.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8684
Cedric BAIL [Fri, 29 Mar 2019 00:18:08 +0000 (17:18 -0700)]
ecore: rely on event instead of creating one Eo object per future that need resolving.
This was a terrible oversight, but the point of having a small native type for future was
for making them efficient. Still we were using one Eo object for dispatching per future
to dispatch new value. I could have gathered all the dispatch with just one object, but
at the end we do have one object that notify us of the loop iteration... the loop object!
And we have event on that object that we can rely to trigger the dispatching of future
without requiring any additional object. So let's do that instead.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8567
Marcel Hollerbach [Mon, 22 Apr 2019 20:10:19 +0000 (22:10 +0200)]
efl_ui_scroller: fix Efl.Content implementation
this commit ensures the following:
- Delete content when new content is set
- Content set input validation
- Correct parent setting
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8682
Marcel Hollerbach [Mon, 22 Apr 2019 19:52:45 +0000 (21:52 +0200)]
efl_ui_tab_page: implement content_set / unset correctly
This patchset ensures that the following features are supported:
- content-widget deletion on set content
- content-widget validation on set calls
- invalid cases return false
- event emission
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8681
Marcel Hollerbach [Mon, 22 Apr 2019 19:30:05 +0000 (21:30 +0200)]
efl_ui_popup: fix widget_parent inheritance
when you inherit from widget_parent, you MUST call the super function.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8680
Christopher Michael [Tue, 23 Apr 2019 13:26:13 +0000 (09:26 -0400)]
efl_core_command_line: Fix resource leak
Coverity reports that we leak the return from _escape(command) here,
so since we have to free the return from _escape, place it in it's own
variable that we can call free() on after we are done with it.
Fixes CID1399105
@fix
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8688
Lauro Moura [Tue, 23 Apr 2019 15:12:31 +0000 (12:12 -0300)]
csharp: Fix test code memory handling
Summary:
It was causing the test to crash when running in debug build.
Also some minor fixes cleaning up stuff when exiting.
Fixes T7792.
Reviewers: segfaultxavi, vitor.sousa
Reviewed By: segfaultxavi, vitor.sousa
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7792
Differential Revision: https://phab.enlightenment.org/D8679
Xavi Artigas [Tue, 23 Apr 2019 11:53:26 +0000 (11:53 +0000)]
mono-docs: Honor DESTDIR when installing XML docs
The DESTDIR envvar was not being taken into account and the XML doc file
ended up in a different place than the DLL.
Fix T7802
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D8687
Boris Faure [Tue, 23 Apr 2019 13:40:53 +0000 (09:40 -0400)]
fix compilation on alpine
Reviewers: zmike
Reviewed By: zmike
Subscribers: zmike, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8642
Christopher Michael [Tue, 23 Apr 2019 13:14:52 +0000 (09:14 -0400)]
elput: Remove useless call to eldbus_message_unref
If we are returning here due to a failure to create the eldbus
message, then there is no point in trying to free it as it is already
null.
@fix
Marcel Hollerbach [Tue, 23 Apr 2019 13:06:52 +0000 (09:06 -0400)]
meson: enable strict linking
Summary: with this commit you can compile efl with -Wl,-z,defs.
Reviewers: zmike
Reviewed By: zmike
Subscribers: simotek, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D8677