Commit Graph

28684 Commits

Author SHA1 Message Date
Marcel Hollerbach 759ac54e7f efl: split Efl.Ui.Factory.create stage into constructing and building
constructing is called during construction time, building is called
after finalize. This is usefull for theme related properties that can
only be set after the theme is applied, which happens during finalize.
Being event allow the user of the factory to add more initialization
without needing to implement any new class.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9952
2019-09-24 09:18:47 +02:00
Cedric BAIL 3c0b496ad3 elementary: Efl.Ui.Layout_Factory bind property during widget creation.
In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9951
2019-09-24 09:18:46 +02:00
Cedric BAIL af3f1b070f elementary: Efl.Ui.Image_Factory bind property also during widget creation.
In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9950
2019-09-24 09:18:45 +02:00
Cedric Bail 23c24b36a1 ecore: update Efl.Boolean_Model to handle children removal and shifting all necessary boolean and index.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10033
2019-09-24 09:18:43 +02:00
Cedric Bail 6e49752712 ecore: correctly handle children removal in Efl.Composite_Model by updating all required index.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10032
2019-09-24 09:18:42 +02:00
junsu choi 06d328ffd1 efl_gfx_path: Add optimized path command
Summary:
If 'L' is removed due to optimization, it should be supported like 3b1f7be
If the previous command is 'M', use 'L'.

Test Plan: N/A

Reviewers: Hermet, smohanty, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10104
2019-09-24 11:52:30 +09:00
Hermet Park 44d362e1ef evas vg: fix gradient stroke fill memory leaks.
There were continous creation of gradient objects,
We can stop it by caching it properly,

Also, fix mismatched ref/unref counts.
2019-09-24 11:49:10 +09:00
junsu choi 3b1f7bea75 efl_gfx_path: Support 'l' command for optimized path.
Summary:
If there is no 'l' command for path optimization, refer to the previous cmd.
If the previous command is 'm', use 'l'.

Test Plan:
[Example SVG]
'''
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 40 40">
<g fill="none" fill-rule="evenodd">
<rect width="40" height="40" fill="#f00" opacity="0"/>
<path d="m12 20 13-12-13 12zm0 0 13 12-13-12z" fill-rule="nonzero" opacity=".12" stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/>
</g>
</svg>
'''

Reviewers: Hermet, smohanty, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10074
2019-09-24 10:20:43 +09:00
Bruno da Silva Belo 15897cd9c3 efl-mono: Additional blank line between all methods.
Summary:
For better indentation, adding a blank line in the end of
methods.

Test Plan:
using efl_ui_layout.eo.cs, efl_access_object.eo.cs, efl_part.eo.cs and efl_ui_factory_bind.eo.cs as references,
apply changes to the code then check the diffs of after and before of the references files

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, felipealmeida, lauromoura

Tags: PHID-PROJ-uhnmnvlvunw6jgoqdnd4, #efl_language_bindings, #refactoring

Maniphest Tasks: T8167

Differential Revision: https://phab.enlightenment.org/D9712
2019-09-23 21:28:14 -03:00
Xavi Artigas 7dcce72eb7 docs: Add documentation for Efl.Ui.Scroller
Summary:
These docs were missing.
Ref T7891

Test Plan: Only docs changed

Reviewers: zmike, woohyun, bu5hm4n

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7891

Differential Revision: https://phab.enlightenment.org/D10019
2019-09-23 16:51:30 -04:00
Carsten Haitzler 88888a00a6 osx - require full opengl for gl support on osx
the default still is gl-es as documented. you need to explicitly turn
on full opengl to get gl support on osx because thats all the engine
does. document this exception for osx (having gl magically being full
on osx and gle-es elsewhere is another option but then we need
different os specific defaults for this which is kind of bad in other
ways).
2019-09-23 21:22:22 +01:00
Marcel Hollerbach 6714c821f7 efl_ui_pack: allow NULL as existing parameter in after and before
Summary:
with this commit all implementations of Efl.Pack_Linear to permit NULL
as existing parameter, this is verified with a spec test unit.

fixes T8210

Reviewers: zmike, segfaultxavi

Reviewed By: zmike

Subscribers: woohyun, Jaehyun_Cho, YOhoho, segfaultxavi, zmike, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8210

Differential Revision: https://phab.enlightenment.org/D10023
2019-09-23 16:15:44 -04:00
Lauro Moura 5f5f62d6bd tests: Initialize variables and quiet warning.
Summary: The switch does not cover all Align enum values.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10085
2019-09-23 15:50:28 -04:00
Cedric Bail 059e48ff0e efl: improve test in checking the return value during Eina_Value get operation.
Summary: Depends on D10061

Reviewers: zmike, bu5hm4n, SanghyeonLee, segfaultxavi, felipealmeida, lauromoura

Reviewed By: bu5hm4n

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10062
2019-09-23 15:50:28 -04:00
Xavi Artigas b5e5117992 docs: Clarify behavior of NULL in Efl.Pack_Linear.
Summary: Depends on D10023

Reviewers: zmike, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8210

Differential Revision: https://phab.enlightenment.org/D10024
2019-09-23 15:50:28 -04:00
Marcel Hollerbach 534021632c efl_ui_position_manager: review cache accesses
in position manager grid and list, there are caches for the sizes, so
the access within placing the item is faster. The cache sometimes is
invalidated, which means, it must be rebuild before accessing it.

This commit is the result of reviewing all the accesses, that the
correct item is available.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10065
2019-09-23 10:33:19 -07:00
Marcel Hollerbach 63ebd0e9cc efl_ui_focus_managr_sub: fix a err message
with this commit there are a few errors less, for the case a object is
destroyed while registered as a border element in the sub manager.
This adds a few more callbacks to the list of callbacks, however, i
could not messure a big performance impact.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10067
2019-09-23 10:33:17 -07:00
Woochanlee 802f414b25 ecore_thread: Fix arguments to match with the function call.
see the _eina_thread_internal() function

r = c->func((void*) c->data, eina_thread_self());

The second param has been missed in ecore_thread_worker, ecore_direct_worker functions.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10073
2019-09-23 10:33:15 -07:00
Mike Blumenkrantz 1260333ae5 build: fix EFL_VERSION_MICRO define
this was never pulled in from the build system and thus was never actually
defined

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10078
2019-09-23 10:33:13 -07:00
Mike Blumenkrantz 74cfe457c3 efl_ui/layout: move 'frozen' struct member to be a bool bitflag
this is already handled by edje, all we really want here is a flag
to avoid more eo lookups internally when calling canvas_group_change

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10079
2019-09-23 10:33:11 -07:00
Lauro Moura 03da60997e cxx: Fix some warnings from -Wextra
Summary:
- As we don't have C++17's [[fallthrough]], rely on GCC'd detection
  of fallthrough comments.

  See https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/

- Replaced some copy constructors with typecast operators.

  Previously, a constructor with remove_const/remove_cv were used
  to allow const iterators to be constructed from non-const iterators.
  This had the side effect of making these constructors actual copy
  constructors for non const lists. As we did not define other
  special constructors/operators, the rule of 5 were violated for these
  cases.

  This commit replaces these constructors with actual typecast operators
  that promote non const iterators to their const counterparts.

- Cast a Eina_Bool/bool narrowing conversion

- Add a missing break statement from D10050

Reviewers: zmike, brunobelo, felipealmeida

Reviewed By: brunobelo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9934
2019-09-23 13:58:01 -03:00
Xavi Artigas 883ef612b7 docs: Efl.Ui.Widget_Scroller_Content updated docs
Summary: Ref T8254

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8254

Differential Revision: https://phab.enlightenment.org/D10082
2019-09-23 18:30:21 +02:00
Vincent Torri e79d6bd0af eina_array: do not mix declaration and definition
fix warning when used in C90 code.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10077
2019-09-23 16:43:54 +02:00
Wonki Kim f18201749c gesture: fix it not to lose information by dividing
division of integer by integer results integer.
this patch fix the case to make a division result more precise.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10039
2019-09-23 15:52:30 +02:00
Marcel Hollerbach b6c713c937 eina_log: ensure that we do not spam journald with our intree binaries
EFL_RUN_IN_TREE is set for all binaries that are executed during build
time, and test suites. With this commit we are ensuring that we are not
sending messages during that time to journald, otherwise we would waste
a lot of time + we would create a lot of unneccessary log messages.

(eina test suite runtime with journald hook: 11.21s without journald
hook: 0.57s)

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10076
2019-09-23 15:52:27 +02:00
Daniel Kolesa 74becf76c0 eolian: allow read-only stringshare in events
While the type cannot be moved to the callee, it at least provides
a hint that it's a stringshare, leeting people ref it instead of
copying.
2019-09-23 15:26:23 +02:00
Jaehyun Cho 98c2a75bda elementary: unref objects when memory allocation fails in factory
The objects referenced are unreferenced when memory allocation fails in
elementary factory.

Differential Revision: https://phab.enlightenment.org/D9968
2019-09-23 14:15:41 +02:00
Hermet Park eb2c1311ae ector engine: +null checking.
Null pixels is allowed when drawing region is 0,

In that case, the pixel buffer can be destroyed earlier by vg.

@fix
2019-09-23 21:15:28 +09:00
Jaehyun Cho dd5e7c7019 efl_ui_tab_pager: fix infinite selected calls
Since tab_pager's _select() and tab_bar's _selection_change_cb() cause
calling each other infinitely.
2019-09-23 20:08:32 +09:00
Mike Blumenkrantz 696627ffcd elm_test: mark image_zoomable test as non-legacy
Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10053
2019-09-23 12:57:22 +02:00
Marcel Hollerbach 5ff0c3cc15 eina_log: do not fallback to INFO when we run with systemd support
INFO is a way too verbose log domain, this lead to the fact that we
spammed journald before the first frame with ~200-300 messages
(depending on the setup) which is quite a lot. Additionally, this also
lead to the fact that we often TIMEOUT our own tests.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10075
2019-09-23 11:50:43 +02:00
Stefan Schmidt a819a954bf elementary_codegen: check before use to avoid use after free
These might or might not have been freed already, depending on the
breaks form the above loop. Before we are having a use after free here
better check on it before free'ing another time.

Coverity IDs: 1402671, 1402701

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10047
2019-09-23 11:16:38 +02:00
Stefan Schmidt 885d5b5b68 efl_ui_exact_model: fix always true condition
The tbuf binbuffer has already been freed the line above, which means
this condition would always be true as !tbuf would always result in true.
As a result the rest of the function has never been executed.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10046
2019-09-23 11:16:37 +02:00
Stefan Schmidt 87c8e2718c efl_ui_selection_manager: free allocated memory after local use
This temporary allocation is only used in this block and goes out of
scope when leaving. Make sure we free the resource before this happens.

Coverity ID: 1402653

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10045
2019-09-23 11:16:36 +02:00
Stefan Schmidt c02dcf6966 efl_ui_textpath: make sure variables are not uses uninitialized
First and last could have been uninitialized for their first use in some
cases. Make sure we set the x y coordinates to 0 to begin with.

Coverity IDs: 1401458, 1404747

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10044
2019-09-23 11:16:35 +02:00
WooHyun Jung f7e183b851 efl_ui_scrollable: remove ui_scrollable_interactive and move all into ui_scrollable
Summary:
Based on the discussion T7883, there is no reason to keep those
interfaces separately. So, now, efl_ui_scrollable will support
the events and methods together.

@ref T7883

Reviewers: eagleeye, bu5hm4n, zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7883

Differential Revision: https://phab.enlightenment.org/D10072
2019-09-23 11:02:15 +02:00
Wonki Kim fe8715e9f6 test: Add a logic to check a size of Check
If I pack a check without any api calls into a box,
then it doesn't have the hint_min size which is defined on check edc.
I guess there are problems on sizing logic currently, so this patch helps people
to test the problem.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10038
2019-09-23 10:44:33 +02:00
Mike Blumenkrantz 654e783d28 elm/layout: remove check for finalize in efl_canvas_group_change impl
this used to be a thing in order to prevent widgets from spamming themselves
with recalcs during construction, but since that's no longer possible we
can remove this and also resolve an issue where legacy widgets failed
to correctly calculate their min size if no text was set

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10043
2019-09-23 10:44:32 +02:00
Xavi Artigas 3b53749149 docs: Typos in Efl.Object 2019-09-23 10:41:46 +02:00
SangHyeon Jade Lee 3d539c1131 efl_ui : fix possible memory leak on model compressing
Summary: fix memory leak of model compressing on binbuf and allocated data.

Reviewers: cedric, bu5hm4n, zmike

Reviewed By: cedric, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10037
2019-09-23 16:27:07 +09:00
Marcel Hollerbach 18e9a224be efl_ui_collection: protect against invalid access
i am not sure why this should ever happen. However, a error here is
better than a access out of the bounds of the array.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10066
2019-09-21 20:43:56 +02:00
Marcel Hollerbach 64be497e42 efl_ui_bg: implement load_controller and efl.gfx.image via composition
With this commit the API of load controller and efl.gfx.image is
implemented via composition, which makes eolians API checker happy

ref T7880

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10064
2019-09-21 18:22:47 +02:00
Marcel Hollerbach 625189d248 efl_gfx_image: remove ptr()
this is not needed here, and not permitted in a none beta context.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10069
2019-09-21 18:22:46 +02:00
Marcel Hollerbach b051cb52fa efl_ui_image: implement Efl.Gfx.Image and Efl.Gfx.Image_Load_Controller
at first i tried to implement that with composition, however, this does
not work, caused by the fact that the edje_object does not implement
efl.gfx.image nor load controller. which would mean i would have to
differentiate based on the type what kind of composition i would attach,
additionally, i would have to write an additional object which would
implement the correct behaviour.

To shortcut this overdone approach, this commit simply implements the
APIs in the image object.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10068
2019-09-21 18:22:45 +02:00
Marcel Hollerbach 0d7535071c elementary: make our tests work again
7321911468 moved the constructor to to
top, which leads to the fact that a few widgets cannot fetch the shared
data of the window. Which made the test suite fail.

With this commit we are just moving the sub_object_add after the
constructor, which fixes the flip crash.
This fixes the test suite
2019-09-21 15:04:42 +02:00
Carsten Haitzler 7321911468 efl ui widget - call parent constructor before doing more init
the object is not properly set up yet for child classes -0 parent like
the main evas object or smart obj havent been constructed yet so call
this really early, not in the middle of construction of an efl ui
widget...

this fixes a segv in elementary_test -to filp where it segv's on
object construction where evas object ->cur/prev are NULL (not set up
yet).
2019-09-21 10:26:46 +01:00
Lauro Moura 9e92b3d123 csharp: Guard hash usage behind EFL_BETA.
Summary: After 718f3cd495, hashes are currently beta-only.

Reviewers: zmike, brunobelo

Reviewed By: brunobelo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10060
2019-09-20 19:29:20 -03:00
Jaehyun Cho 01875756eb eolian_mono: add more verbs to generate C# method beginning with verb
Summary:
C# language binding generates C# method name beginning with verb by
checking verb list in name_helpers.hh.

Some verbs used in eo method are missing in the current verb list. So
they are added into the verb list.

In this scheme, there is a problem that some words can be used as a verb
in some methods but they also can be used as a noun in other methods.
(e.g. drag_start as a verb / cursor_word_start as a noun)

So "start" and "scroll" are not added to verb list in this patch.
To resolve the above problem, we may need a new eo syntax to rename or
reverse the name in language bindings.

Test Plan: Check C# method names in .eo.cs files if the name begins with verb.

Reviewers: felipealmeida, SanghyeonLee, woohyun, Jaehyun_Cho, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10001
2019-09-20 19:29:08 -03:00
Daniel Kolesa 53a3326ddc eolian: rename any_value_ptr -> any_value_ref for consistency 2019-09-20 18:03:39 +02:00
Daniel Kolesa 7cbd08ee8c eolian: string(share) is always const, allow in events out of box 2019-09-20 17:47:43 +02:00
Daniel Kolesa 718f3cd495 eolian: make hashes beta-only for now
They're not completely settled on and we don't even know if we want
them at all. So let's make them beta only for now.

Ref T8050.
2019-09-20 17:04:48 +02:00
Xavi Artigas 61ce4c79fd Use proper Eolian syntax for default values instead of docs
Summary:
Eolian supports reporting the defaults for parameters and return values, but in some
places we have been writing this information in the documentation instead.
This patch moves it to its proper place, where documentation generators can pick it up
and render it in a consistent manner.

Ref T8171

Reviewers: zmike, bu5hm4n, lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8171

Differential Revision: https://phab.enlightenment.org/D10051
2019-09-20 11:55:55 -03:00
Lauro Moura 32f92d3d86 csharp: Add support for default param references in documentation
Summary:
This also adds the information of default values in `parameter_def`.
This will help adding actual default parameter support in the C#
bindings.

Thanks to @segfaultxavi for improved formatting and escaping.

Fixes T8224

Reviewers: segfaultxavi, felipealmeida, brunobelo

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, segfaultxavi, #committers

Tags: #efl

Maniphest Tasks: T8224

Differential Revision: https://phab.enlightenment.org/D10050
2019-09-20 16:23:54 +02:00
Marcel Hollerbach 4672598b03 efl_ui_factory: improve docs
Summary:
and remove TAAABS
Depends on D10038

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10042
2019-09-20 15:29:20 +02:00
Hosang Kim 47ab7e1b83 efl.ui.scrollbar: fix event name for scrollbar
Summary: Event name is applied in the past tense.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10040
2019-09-20 12:51:48 +02:00
WooHyun Jung bc162b1253 efl_ui_scroll_util: add null check after calloc 2019-09-20 11:09:02 +09:00
Marcel Hollerbach 1eb24301fd efl_io_model: next try to fix this race condition
what is happening is that a file gets announced through eio_model
listing code, at this point of time, the monitor does not yet know about
the file. If the file now gets deleted between the annoncing and the
learning of the file from the monitor, then the file got an ADD event,
but no DEL event. Which is a bug.

With this commit there is a new API which asks the monitor if the file
already has the knowledge about the files existance, or not. A few
monitors like win32 inotify or cocoa do not have context about the file
directly, if the OS is now having the same bug, then we are again in
trouble, however, we canot do anything about that. In the case of kevent
or poll, this asks the context of the monitor if the file is already
there.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10006
2019-09-19 14:50:42 -07:00
Cedric BAIL 3e9f619b1d elementary: Efl.Ui.Widget_Factory bind widget property before finalizing the widget.
In the same vain as previous patch this will initialize more of the widget during its
creation and reduce unecessary recalc.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9949
2019-09-19 14:37:56 -07:00
Cedric BAIL cc49c8ac64 elementary: leverage sizing information from model if available to avoid unecessary calc.
With the new Efl unified infrastructure, we do delay a lot of the computation to finalize,
by filling the object information before finalize we reduce unecessary computation.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9948
2019-09-19 14:37:54 -07:00
Marcel Hollerbach fc935e99d9 efl_ui_position_manager: a way to announce new entities
there are situations where the entity is not ready yet when the initial
placing does happen. With this API you can tell the position manager
that the placing of the items can be reapplied at the entities are
availble now.

Differential Revision: https://phab.enlightenment.org/D9947
2019-09-19 14:37:52 -07:00
Cedric Bail 8128e3fea2 efl: improve Efl.Boolean_Model test to enforce Eina_Value type too.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10031
2019-09-19 14:37:51 -07:00
Cedric Bail 77ab3523cd ecore: remove unused piece of code.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10030
2019-09-19 14:37:49 -07:00
Cedric Bail f402efbba3 ecore: properly initialize all field in event generated by Efl.Generic_Model
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10029
2019-09-19 14:37:47 -07:00
Cedric Bail 6af8a70f37 ecore: properly initialize the event structure in Efl.Generic_Model.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10028
2019-09-19 14:37:45 -07:00
Cedric Bail 2fdad92948 eina: add code to help debug leaking Eina_Value.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9942
2019-09-19 14:37:43 -07:00
Cedric Bail 9382bfc0bc eina: add eina_mempool_iterator_new to slowly iterate every allocated pointer in a mempool.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9941
2019-09-19 14:37:41 -07:00
Marcel Hollerbach bf12fe241e efl_ui_layout_part_table: implement missing API
setting of these properties does not work, as they are not available in
legacy, but edje is still creating legacy objects.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10007
2019-09-19 14:37:39 -07:00
Marcel Hollerbach 2f48607e7c efl_ui_layout_part_*: declare stable
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9995
2019-09-19 14:37:37 -07:00
Marcel Hollerbach fc22a94d26 efl_ui_widget_*: declare parts stable
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9994
2019-09-19 14:37:35 -07:00
Marcel Hollerbach d8053bac96 efl_ui_layout_part_box/table: remove real_part_set
real part set was used to set the real part on the part, so the obj
pointer of Layout_Part_Data points to the correct evas object. With this
commit, this API is removed from the public .eo files, and is refactored
into the same API which is private.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9993
2019-09-19 14:37:33 -07:00
Marcel Hollerbach aecb3a4bb2 efl_ui_layout_part_table: implement Efl.Pack.pack API
this api was missing, the pack method here is behaving in the same
manner as Efl.Ui.Table.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9992
2019-09-19 14:37:31 -07:00
Marcel Hollerbach ccdec4ba68 efl_ui_widget_part: implement all the missing API
Efl.Color and Efl.File cannot be done due to composition. Efl.Gfx.Image
can, so we can solve this via composition, this also resolves all the
other cases for Efl.Gfx.Image.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9991
2019-09-19 14:37:29 -07:00
Marcel Hollerbach 422154c0de efl_test_multi_selectable: test for the correct event
EFL_UI_EVENT_ITEM_SELECTED / UNSELECTED is the wrong event here. We
should check of the selection changed event. ITEM_SELECTED is the legacy
event. this was not found based on the fact that we test for this event
to NOT be executed.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10011
2019-09-19 14:37:27 -07:00
Marcel Hollerbach 6960751c45 elm_test_widget_focus: cleanup callbacks correctly
we need to delete the callback here, otherwise the objects are deleted
later on, which:
- changes focus, which leads to
- callbacks executed with stacked addresses from a dead function

this fixes a testsuite failure on the release build.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10020
2019-09-19 14:37:25 -07:00
Yeongjong Lee e06e03f220 efl_ui_collection: fix null pointer dereferences
This will fix Coverity issue.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9986
2019-09-19 14:37:23 -07:00
Marcel Hollerbach 21fe2bdc41 eo: custom created legacy events should be unfreezable
a while back we have moved event submission from custom lists to eo
events. We also merged together the freeze and thaw functions, however,
this brought up one bug. smart_callbacks and the likes (those that used
custom lists before) are not effected by the legacy freeze and thaw
functions. This means, we should declare these legacy wrapper objects
unfreezable in order to obtain this behaviour.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D10016
2019-09-19 14:37:21 -07:00
Mike Blumenkrantz 393530b770 efl_ui: further unbreak headers
move more header includes around to fix building with Efl_Ui.h

ref T8228

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10022
2019-09-19 14:37:18 -07:00
Mike Blumenkrantz da5fcb8ea0 ecore/signal: increase maximum signal throughput
this adds 4 more signal handling fds and loops over them for reading/writing
signal info in order to handle more signals when the buffer of one (or more)
pipes is full

also update the unit test to verify that we are receiving all the events without
dropping any and bump the number of signals to 2000 since we should now be able to
handle that many

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10027
2019-09-19 14:37:16 -07:00
Mike Blumenkrantz af5abbe4bc tests/ecore: add stress test for main loop signal handling
this explodes after about 500 signals, so make it 1000 for a good test

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10026
2019-09-19 14:37:14 -07:00
Mike Blumenkrantz aae2e49744 ecore/signal: also use nonblock for writing side of signal pipe
if any efl-based process receives a bunch of signals in a short period of
time, it will deadlock in the signal handler. this is unavoidable given the
current signal handling architecture

by setting nonblock, we can at least avoid deadlocking even if it means we'll
be losing signal events

@fix

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D10025
2019-09-19 14:37:11 -07:00
Daniel Kolesa 539dc642e9 eolian: remove the composite keyword (replaced by composites) 2019-09-19 18:20:56 +02:00
Daniel Kolesa b74f98e8b7 efl: replace composite with composites and dedup implements
Since using 'composites' now automatically implements what has not
been implemented yet, remove the unnecessary duplicates.
2019-09-19 18:20:56 +02:00
Daniel Kolesa bc793753cb eolian: allow composites keyword in place of composite
Fixes T8218.
2019-09-19 18:20:56 +02:00
Daniel Kolesa 46a6949b2e eolian: auto-add composited interfaces into implements if needed
The condition here is that the composited interface does not
already appear in the inheritance tree of the given class. If
it does, don't add. If it doesn't, add it to the class that
specifies the composited block.
2019-09-19 18:20:56 +02:00
Xavi Artigas f8926697ff docs: Update documentation for Efl.Gfx.Color_Class 2019-09-19 16:51:04 +02:00
Daniel Kolesa 4de4995fa2 eolian: return NULL instead of EINA_FALSE on safety checks 2019-09-19 16:05:34 +02:00
Xavi Artigas 5428f26f7d docs: Update docs for Efl.Gfx.Image_Orientable 2019-09-19 13:11:00 +02:00
Marcel Hollerbach e3bc67257f efl_model: fix links
Summary: Depends on D10009

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10010
2019-09-19 12:45:03 +02:00
Marcel Hollerbach 71e8dc0e75 efl_model: improve docs
Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10009
2019-09-19 11:36:26 +02:00
Xavi Artigas ac531f881f docs: Update documentation on Gestures
We need to keep in mind that the Manager and the Recognizers are not visible to the user.
The user only sees the events and the different Efl.Canvas.Gesture_* payloads.
2019-09-19 11:17:49 +02:00
Hermet Park 8a66c2eaea doc: fix typo and indentation. 2019-09-19 15:30:19 +09:00
Myoungwoon Roy, Kim 81b94b5a20 doc: improves single line description of gesture class.
Summary: This patch improves single line descriptions described on T7717

Test Plan: NA

Reviewers: segfaultxavi, woohyun, Hermet, cedric

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10002
2019-09-19 15:23:07 +09:00
Hermet Park 6f3841e4b4 evas mask: refactoring code.
This clearly separate the condition cases clear so that
the analizyer tool doesn't bother us anymore.

No logical changes.
2019-09-19 14:01:31 +09:00
Hermet Park cdfe946358 evas gl: remove unnecessary null check.
If we check reference validation, the rest of other usage
should keep the reference check as well.

Remove it since gl prorgram must be valid always here
to shutdown the static analyzer reporting this suspicous logic.
2019-09-19 13:42:22 +09:00
Hermet Park aaa199e2d4 evas map: disable the anti_aliasing code which can't be reached.
This anti-aliasing is a little buggy, should be improved.

But just leaving to fix later when it's necessary.
2019-09-19 13:30:21 +09:00
Daniel Kolesa 1f19af7780 eolian: disallow void for out/inout for stable API 2019-09-18 21:09:15 +02:00
Mike Blumenkrantz e687805074 tests/elm: add eventing test for normal check widget, verify api compatibility
legacy check widgets should not emit a "changed" event when using the api to
change the widget's state

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9852
2019-09-18 18:18:57 +02:00
Mike Blumenkrantz 99174b10f6 tests/check: add unit test for elm_toggle (check) callback
verify that the "changed" callback is triggered as expected

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9832
2019-09-18 18:18:56 +02:00
Mike Blumenkrantz 7767ce884a elm/check: fix emission of legacy "changed" callback
legacy "check" and "toggle" widgets operate differently:
* check emits only the "toggle" event
* toggle emits "toggle", "on", "off"

legacy also must not emit events when the widget's state is changed
programmatically

to handle this effectively, check whether the event has been emitted for
each state when the signal is emitted from the theme, and track this
for subsequent uses to ensure that exactly one event is triggered
when it should be

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9831
2019-09-18 18:18:55 +02:00
Mike Blumenkrantz 011022ae1b efl/radio/box: handle non-radio-objects
this improves the usefulness of radio box by presenting it as a box widget
which has the additional feature of being able to manage radio widgets

also fix all the image cases in elm_test which relied on there being only
a single box in the window

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9998
2019-09-18 18:04:59 +02:00
Mike Blumenkrantz 3139371932 build: firmly split legacy and unified API into Efl_Ui.h and Elementary.h
these headers should be usable independently without having one secretly
pull in the other

fix T7667

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9981
2019-09-18 18:04:58 +02:00
Mike Blumenkrantz 9f301b1c9e build: remove efl_ui_calendar.h
this was somehow actually a legacy header which duplicated elm_calendar.h
...sort of

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9980
2019-09-18 18:04:57 +02:00
Mike Blumenkrantz 67b7cac72d build: use correct animation_view headers in Efl_Ui.h and Elementary.h
efl_ui_animation_view.h is the legacy header (but why?)
efl_ui_animation_view.eo.h is the unified header

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9979
2019-09-18 18:04:56 +02:00
Mike Blumenkrantz ca86b98e40 build: fix elm header usage
.c files in src/lib/elementary should only include elm_priv.h to ensure
that all the include ordering is correct and that all necessary headers
are pulled in

.c files outside of src/lib/elementary should include either/both
Efl_Ui.h, Elementary.h as needed

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9978
2019-09-18 18:04:55 +02:00
Mike Blumenkrantz 038b546414 elm/priv: fix this header
this should include emotion, since that component is used internally,
and it should not explicitly include api headers which should be in
public headers

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9977
2019-09-18 18:04:53 +02:00
Mike Blumenkrantz 2251865a30 elm/widget: make this header usable without elm_priv.h again
supposedly this header should be usable if someone wants to create an
elm widget, so ensure that it can be included without issues

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9976
2019-09-18 18:04:52 +02:00
Mike Blumenkrantz 43af39ac69 efl_ui/image_zoomable: include header for internal pan
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9975
2019-09-18 18:04:50 +02:00
Mike Blumenkrantz 304dac6570 elm/scrollable: unbreak this header
this is a legacy header, it can't include any unified api types

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9974
2019-09-18 18:04:49 +02:00
Mike Blumenkrantz 9ec38bff90 build: add include guards for a couple elm headers
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9973
2019-09-18 18:04:47 +02:00
Mike Blumenkrantz ffac7f076f efl_ui/win: fix prototype decls for eo api versions of autodel
this is still pretty broken, but at least the headers aren't

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9972
2019-09-18 18:04:46 +02:00
Mike Blumenkrantz b9b925fba5 build: use legacy api in places where legacy should be used
these seem to randomly have been changed when they shouldn't have

also install elm_clock_eo.h since this is required but we didn't install it

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9971
2019-09-18 18:04:45 +02:00
Xavi Artigas 6e3bfa6bb1 TABS 2019-09-18 16:05:17 +02:00
Hermet Park 8d910e7bee canvas vg: code refactoring.
remove unnecessary reference cooridnates.
2019-09-18 21:52:54 +09:00
Wonki Kim 726b0ee920 elm_config: fix to check if eet_open fails
Summary: this patch adds a guard block in case of failure of eet_open().

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9987
2019-09-18 08:21:02 -04:00
Marcel Hollerbach 5a7102a589 Revert "efl_io_model: remove custom counting logic"
Summary:
This reverts commit d794a0d3d9.

This breaks Efl_Io_Model.

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10003
2019-09-18 08:21:00 -04:00
Xavi Artigas f4290cb330 Efl.ThreadIO: replace empty implementations with @pure_virtual
The implementation for call and call_async are empty on this mixin.
I think removing them and marking them as @pure_virtual in the EO file is cleaner.
2019-09-18 13:43:30 +02:00
Xavi Artigas 214ced325f docs: Update Efl.Threadio and Efl.Appthread 2019-09-18 13:43:30 +02:00
Woochanlee 04df2327bd docs: Fill-in docs for Efl.Threadio, Efl.Appthread
Reviewers: myoungwoon, segfaultxavi

Subscribers: stefan_schmidt, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D10000
2019-09-18 13:43:30 +02:00
Mike Blumenkrantz fa03eb44f7 efl/image: merge preload and unload events into preload_state,changed
Summary:
this reduces the necessary event subscriptions for cases where someone
is likely to want to listen on these events

ref T7875
Depends on D9996

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7875

Differential Revision: https://phab.enlightenment.org/D9997
2019-09-18 10:08:58 +02:00
Mike Blumenkrantz 28f589d795 efl/image: rename "border" -> "border_insets"
Summary:
this is a clearer name which makes the intent of the API more obvious at
a glance

ref T7875

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7875

Differential Revision: https://phab.enlightenment.org/D9996
2019-09-18 10:08:56 +02:00
Bruno da Silva Belo 1f767c81e5 eolian-mono: add compiler's complaint methods.
Summary: New default checkers breaks mono's test.

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9999
2019-09-17 19:37:30 -03:00
Cedric Bail e448110439 elementary: properly shutdown and cleanup Efl.Ui.Position_Manager.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9946
2019-09-17 10:24:14 -07:00
Cedric Bail 3656996df4 elementary: fix double eina_value_free in Efl.Ui.Homogeneous_Model.property.set
Model do not own the Eina_Value when it is set on them. They can make a copy of it,
but shouldn't free it.

Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9945
2019-09-17 10:24:12 -07:00
Cedric Bail 9b618316c4 ecore: remove unused variable after code migration. Fix warning.
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D9944
2019-09-17 10:24:10 -07:00
Cedric Bail 94e9363649 eina: prevent leak of Eina_Value internal allocation.
eina_value_copy assume the given Eina_Value as target is not initialized
when it copy the source in it. In eina_value_reference_copy we were initialising
before calling eina_value_copy which would then override and leak the internal
pointer no fault of the users.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9943
2019-09-17 10:24:08 -07:00
Cedric Bail 93a382085b eina: turn on Eina_Mempool tests for OneBig too.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9940
2019-09-17 10:24:07 -07:00
Cedric Bail 4ab4b59757 eina: fix free support in eina OneBig mempool.
We use an Eina_Trash to store freed pointer, which require the item size
to be at least the size of a pointer. There wasn't any test suite enable
for OneBig mempool and we never used free on a small item size...

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9939
2019-09-17 10:24:05 -07:00
Cedric Bail 2064112684 eina: fix eina_mempool_from to not report pointer that have never been allocated as allocated.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9938
2019-09-17 10:24:03 -07:00
Marcel Hollerbach cce67afc38 efl_ui_widget_part_bg: improve docs
Reviewers: segfaultxavi, zmike

Reviewed By: segfaultxavi

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9990
2019-09-17 16:04:04 +02:00
Marcel Hollerbach 8a029d5c04 efl_ui_image: implement missing API
the API calls have not been implemented, this revision implements these
APIs as redirects to the image if those are a edje object.

Normally this should be a calling the legacy edje API. However, this is
here really hard as imitating the correct callback behaviour is hard.
And the correct behaviour with the eina value type is also just leading
to copying the implementation from edje. So in order to keep the amount
of code low here, this just uses the efl-api to redirect the requests.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9989
2019-09-17 15:45:26 +02:00
Chris Michael 2d9fd1a827 tests/ecore_wl2: Fix resource leak
Small patch to fix resource leak pointed out by Coverity

Fixes Coverity CID1403883
2019-09-17 09:35:43 -04:00
Chris Michael 21c7f95d08 efl_ui_caching_factory: Fix resource leaks
Small patch to fix resource leaks pointed out by Coverity

Fixes Coverity CID1404762
2019-09-17 09:23:46 -04:00
Chris Michael bb7353b450 efl_ui_widget_factory: Fix resource leaks
Small patch to fix resource leaks pointed out by Coverity

Fixes Coverity CID1404766
2019-09-17 09:21:15 -04:00
junsu choi 3932c68382 evas_vg_load_svg: Change strtod to eina_convert_strtod_c for locale issue
Summary:
Crash depending on LOCALE when using strtod.
So change to eina_convert_strtod_c which is made to prevent strtod problem.

Test Plan: N/A

Reviewers: Hermet, smohanty, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9988
2019-09-17 21:18:47 +09:00
Daniel Kolesa 4a60495d91 eolian: skip funcs from beta-classes when unimplemented-checking 2019-09-17 13:48:44 +02:00
Marcel Hollerbach ff0aabd345 efl_ui_multi_selectable: remove SINGLE_ALWAYS
this should get a better solution later on. There is also no real usage
for that.

ref T7922

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9985
2019-09-17 13:46:05 +02:00
Daniel Kolesa 81441638db eolian: enable unimplemented function errors for stable API 2019-09-17 12:36:50 +02:00
Carsten Haitzler f87ba12a76 evas - in case handle scope data being null
apbbb saw something that had this scope return null ... so handel -
but it shouldn't get this far... can't figure out why though.
2019-09-17 11:31:15 +01:00
Marcel Hollerbach b0f293d37c efl_ui_table: protect again negative tests
Summary:
these tests are checking for errors, which is fine, we should expect a
error here
Depends on D9983

Reviewers: SanghyeonLee, cedric, zmike, segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9984
2019-09-17 12:26:01 +02:00
Marcel Hollerbach 4452b921df efl_ui_box: make this test expect the errors it is triggering
Summary:
there are checks for testing that something is not possible, which is
fine. However, the errors should be expected

Reviewers: SanghyeonLee, cedric, zmike, segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9983
2019-09-17 12:25:59 +02:00
Xavi Artigas 4673120a19 mono-docs: Allow embedding examples in XML format
XML examples must provide their own <example> and <code> tags, and these
tags MUST be escaped: \< \> \" etc.
This is more inconvenient, but it allows adding explanatory text outside
the <code> and inside the <example>.
Examples are first looked for in XML format, and if not found, in CS format.
2019-09-17 12:02:19 +02:00
Hermet Park 24ed24a9db ector: refer exact stride size for jumping buffer lines.
Actual buffer and used width size could be different,
stride must be referred.
2019-09-17 12:03:25 +09:00
Mike Blumenkrantz 9dc7643f93 Revert "cxx: Fix some warnings from -Wextra"
This reverts commit bdb8505f3b.

more review pending on this
2019-09-16 14:19:43 -04:00
Lauro Moura bdb8505f3b cxx: Fix some warnings from -Wextra
Summary:
- As we don't have C++17's [[fallthrough]], rely on GCC'd detection
  of fallthrough comments.

See https://developers.redhat.com/blog/2017/03/10/wimplicit-fallthrough-in-gcc-7/

- Add some missing copy assignment operators as reported by
  -Wdeprecated-copy

- Cast a Eina_Bool/bool narrowing conversion

Reviewers: zmike, brunobelo, felipealmeida

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9934
2019-09-16 12:41:37 -04:00
Xavi Artigas 22b329d2f4 efl_ui_format: fix some more harmless Coverity warnings
1403023 Unchecked return value
1403024 Unchecked return value
1403026 Unchecked return value

If the eina value conversion fails the default value (0) will be used, which is already a good default.
ERRs have been added so the developer has a hint of what is happening.
2019-09-16 18:10:09 +02:00
Marcel Hollerbach 57c7e59850 efl_ui_focus_manager_calc: fix resource leaks
this fixes CIDs 1396965 & 1396984
2019-09-16 17:57:20 +02:00
Xavi Artigas 416b01ee74 docs: Update Efl.Ui.Box_Stack docs 2019-09-16 17:45:04 +02:00
Marcel Hollerbach b4976fdf2c efl_ui_*: fix dereferencing of possible NULL values
this fixes CID 1404763 & 1404751 & 1403904
2019-09-16 17:28:31 +02:00
Xavi Artigas 22f3cc0574 docs: Clarify event emission in Image.Gfx.Image_Load_Controller
And minor formatting.
2019-09-16 16:53:16 +02:00
Xavi Artigas b0c3062e24 elm/datepicker, timepicker: Fix uninitialized vars
Summary:
Should fix all timepicker and datepicker uninitializer variable usage detected by Coverity:
1396954 Uninitialized scalar variable: efl_ui_timepicker.c
1396978 Uninitialized scalar variable: efl_ui_timepicker.c
1397006 Uninitialized scalar variable: efl_ui_timepicker.c
1396979 Uninitialized scalar variable: efl_ui_datepicker.c
1404748 Uninitialized scalar variable: efl_ui_datepicker.c
1404757 Uninitialized scalar variable: efl_ui_datepicker.c

Test Plan: Everything builds and passes tests. Coverity should complain less.

Reviewers: stefan_schmidt, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9967
2019-09-16 10:14:53 -04:00
Wonki Kim f49535debb elm_config: fix a missing of free after using
Summary: safed_bindings will leak by going out the function without freeing.

Reviewers: bu5hm4n, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9966
2019-09-16 10:14:53 -04:00
Daniel Kolesa d9594dbc9d eolian: drop @ctor_param and the associated APIs
This has been unused for a while, and has been just lingering
around the code, so drop it so it doesn't make it into a release.
2019-09-16 15:37:04 +02:00
Marcel Hollerbach fc0f4e974e efl_ui_slider: improve docs
Summary: Depends on D9964

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9965
2019-09-16 13:12:59 +02:00
Marcel Hollerbach f829613925 efl_ui_check: improve docs
Summary: Depends on D9963

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9964
2019-09-16 13:12:59 +02:00
Marcel Hollerbach a7d3d4b333 efl_ui_button: improve docs
Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9963
2019-09-16 13:12:59 +02:00
Xavi Artigas 6065e7f141 efl_ui_widget: remove misleading comments
Summary:
We settled for the focus_allow name.
The other APIs are not internal, they are protected, and this is
noted, no need to say that again.
Additionally it is not helpfull to have commented out c_prefix
definitions.
Depends on D9936

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9937
2019-09-16 12:38:10 +02:00
Marcel Hollerbach 8b72f6364e efl_ui_widget: remove wrong docs
Summary:
this is not true anymore, this has been reverted due to how legacy
works. *yey*
Depends on D9935

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9936
2019-09-16 12:38:10 +02:00
Marcel Hollerbach b3b5028e2e efl_ui_widget: improve docs
Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9935
2019-09-16 12:38:10 +02:00
Xavi Artigas 48884aec87 docs: Update docs for Efl.Pack_Layout 2019-09-16 12:13:45 +02:00
Hosang Kim a6aa1b912e efl.ui.scrollable: fix event name for scrollable
Summary:
Event name is applied in the past tense.
Meaning of 'stop' is 'stop it early', so I changed it to 'finish'

Test Plan: elementary_test -> efl.ui.scroller

Reviewers: segfaultxavi, woohyun

Reviewed By: segfaultxavi

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9859
2019-09-16 12:04:27 +02:00
Stefan Schmidt 1d0a636953 eina: fix spelling in new eina_file_statgen API
Introduced in 9b294d6284 the new eina_file_statgen_* API has a typo in
its disable function. Fixing this before it gets out into a release.

Thanks goes to the https://abi-laboratory.pro service for offering their
great API/ABI reports to the open source communities to help finding such
things!

Differential Revision: https://phab.enlightenment.org/D9962
2019-09-16 12:02:42 +02:00
Mike Blumenkrantz 5daac17e99 efl/image: Efl.Gfx.Border_Fill_Mode -> Efl.Gfx.Center_Fill_Mode
Summary:
rename this to match its function

ref T7926, T7875
Depends on D9932

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7926, T7875

Differential Revision: https://phab.enlightenment.org/D9933
2019-09-16 11:08:23 +02:00
Xavi Artigas 944d5f37c7 efl/image: Efl.Gfx.Image_Scale_Type -> Efl.Gfx.Image_Scale_Method
ref T7927, T7875
Depends on D9931
2019-09-16 11:06:02 +02:00
Mike Blumenkrantz e18d07b297 efl/image: add size event info for image,resized event
Summary:
this saves a manual lookup

ref T7875
Depends on D9930

Reviewers: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7875

Differential Revision: https://phab.enlightenment.org/D9931
2019-09-16 11:01:01 +02:00
Mike Blumenkrantz 777a2a89e1 efl/image: image,resize -> image,resized
Summary:
events should always be past tense verbs

ref T7875
Depends on D9929

Reviewers: segfaultxavi

Subscribers: kimcinoo, cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7875

Differential Revision: https://phab.enlightenment.org/D9930
2019-09-16 10:58:24 +02:00
Mike Blumenkrantz 16a93a5374 efl/image: improve docs
Summary:
this adds more docs for the overall interface as well as improvements to
existing docs

ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9929
2019-09-16 10:56:05 +02:00
Carsten Haitzler f7a33a326d evas - rsvg loader - comment out deprecated func from rsvg we don't need
it seesm we don't need this. unref should shut down the rsvg obj
anyway, and rsvg_handle_close() has been deprecated since 2.46
2019-09-16 01:47:05 +01:00
Carsten Haitzler e3610b92b9 edje - physics - remove warning of unused arg if physics disabled
simple warning removal. no core changes.
2019-09-16 01:26:16 +01:00
Lauro Moura e973b87bf8 csharp: Fix Hash.DelByValue
Summary:
The C function `eina_hash_del_by_data` requires the same value that was
passed to the `add` function. As C# hashes store stuff through pointers
due to marshalling, this makes it hard to pass the same pointer for it.

So this functionality is implemented at C# level instead of relying on
the native function directly.

Fixes T8198

Thanks to @brunobelo and @singh.amitesh for the test case.

Reviewers: singh.amitesh, felipealmeida, brunobelo

Reviewed By: brunobelo

Subscribers: cedric, #reviewers, #committers, singh.amitesh, brunobelo

Tags: #efl

Maniphest Tasks: T8198

Differential Revision: https://phab.enlightenment.org/D9853
2019-09-13 19:22:39 -03:00
Mike Blumenkrantz cfae5ba285 tests/edje: handle file modifications properly on windows
Summary: we don't have access to utimensat and I'm too busy to figure out why

Reviewers: vtorri, bu5hm4n, devilhorns

Reviewed By: vtorri

Subscribers: cedric, #reviewers, #committers

Tags: #efl_build

Differential Revision: https://phab.enlightenment.org/D9914
2019-09-13 14:13:33 -04:00
Mike Blumenkrantz 51265dea6b efl_ui/scrollable_content: be more explicit about scrollable_content_get()
Summary:
always return NULL when an internal text object exists to avoid exposing
internal objects; this is an abstraction mechanism which should not be
extended or relied upon

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9910
2019-09-13 18:51:51 +02:00
Myoungwoon Roy, Kim c6dd9d2a64 doc: improve single line descriptions
Summary: this patch improves single line descriptions described on T7717

Reviewers: woohyun, Hermet, myoungwoon, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9795
2019-09-13 18:29:02 +02:00
Xavi Artigas 5f263e003e docs: nicer formatting for Efl.Pack_Linear 2019-09-13 17:57:44 +02:00
Boris Faure 511faf3cbf meson.build: allow to disable tiff evas loader
Summary:
@fix

eina benchmarks: ssize_t is defined in <sys/types.h>

Reviewers: #reviewers, bu5hm4n, zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: vtorri, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9927
2019-09-13 11:26:19 -04:00
Daniel Kolesa 266fd9bb36 eolian: support complex monospace syntax $[...]
This is to allow monospace bits with periods, commas and other
non-alphabetical characters. Newlines are not supported (they end
the block) and escapes are supported (for ]).

Fixes T8213.
2019-09-13 16:58:49 +02:00
Marcel Hollerbach bc8c432841 efl_ui_slider: correct to a multiple of step when drag is finished
Summary:
this is needed in order to support the value to be a multiple of the
step when drag has finished. The normal changed event is still emitted
with non-multiple of step, but the steady event only contains the
correct values now.

ref T8187

Reviewers: zmike, segfaultxavi, woohyun

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8187

Differential Revision: https://phab.enlightenment.org/D9928
2019-09-13 10:14:59 -04:00
Xavi Artigas 6bac60262e eolian_gen: add missing param doc for event raising 2019-09-13 14:26:21 +02:00
Xavi Artigas 4c018509c5 eolian: Remove the EOLIAN_PROPERTY_DOC_WARN envvar
This test is now always enabled, so ALL properties should have property-level
documentation. Setter and getter docs are optional.
2019-09-13 12:41:16 +02:00
Xavi Artigas 8c09c1cae8 docs: Move property docs to property level instead of set/get
Eolian @properties should be documented at the property level, and
documentation at the setter or getter level should be left to setter-
or getter-specific comments. There is usually no need at all to have
setter- or getter- specific comments.
Also, a property is not a method so descriptions should match that.

This patch removes lots of duplicated text, and will allow enabling
by default the eolian check that ensures that properties have proper
property-level docs.

No functional changes.
2019-09-13 12:30:03 +02:00
Vincent Torri 5e9b301533 efl_app_test_promise: fix warning (no returned value)
Test Plan: compilation

Reviewers: cedric, zmike, raster

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9926
2019-09-12 14:46:06 -04:00
Vincent Torri 1f24762fc4 eio: fix warning
Test Plan: compillation

Reviewers: raster, cedric, zmike

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9925
2019-09-12 14:45:58 -04:00
Marcel Hollerbach 2801b45d8f meson: make sure evas buffer engine is built before edje_cc
Summary:
ensure that the evas buffer engine is available.

fix T8220

Reviewers: zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T8220

Differential Revision: https://phab.enlightenment.org/D9918
2019-09-12 14:45:47 -04:00
Vincent Torri c00d70982f Evil: fix mmap() and define HAVE_MMAP
Summary: add size of file mapping to fix invalid parameter

Test Plan: compilation (edje succeeds) and elm_test

Reviewers: zmike, cedric, raster

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9913
2019-09-12 10:01:33 -04:00
Marcel Hollerbach 3307e55874 efl_ui_calendar_item: document this class a little bit more
Summary: Depends on D9923

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9924
2019-09-12 13:30:53 +02:00
Marcel Hollerbach 429b6c9c7e efl_ui_image: insert @ to link docs proberly
Summary: Depends on D9922

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9923
2019-09-12 13:26:39 +02:00
Marcel Hollerbach 7c1508cb43 efl_gfx_path: insert @ to link docs proberly
Summary: Depends on D9921

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9922
2019-09-12 13:26:33 +02:00
Marcel Hollerbach e18bce720d efl_ui_scrollable: insert @ to link docs proberly
Summary: Depends on D9920

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9921
2019-09-12 13:26:28 +02:00
Marcel Hollerbach 84487d8257 efl_object: insert @ to link docs proberly
Summary: Depends on D9919

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9920
2019-09-12 13:26:24 +02:00
Marcel Hollerbach 1f96530a1c efl_part: insert @ to link docs proberly
Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9919
2019-09-12 13:26:20 +02:00
Mike Blumenkrantz 7d727bbb26 efl/arrangement: improve docs
Summary:
this adds full docs for the class and properties

ref T7717
ref T7864

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7864, T7717

Differential Revision: https://phab.enlightenment.org/D9912
2019-09-12 11:02:29 +02:00
Mike Blumenkrantz 0dad9503c7 efl/hint: fix hint_align docs
Summary:
the docs should not assume that the current language is LTR and should
instead specify that the horizontal direction depends on the language
reading direction

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9911
2019-09-12 10:57:01 +02:00
WooHyun Jung 31d197b85b efl_ui_timepicker/datepicker : change event name properly
Summary:
This changes the event name from "changed" to "date(or time),changed"

@ref T7869 T7901

Reviewers: segfaultxavi, zmike, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7901, T7869

Differential Revision: https://phab.enlightenment.org/D9905
2019-09-12 10:33:12 +02:00
Bruno da Silva Belo edae55fc76 csharp: Minor change to D9692
Summary: Changing Evt to Event from some files that it wasn't catch on D9692

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, felipealmeida, #reviewers, lauromoura, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9904
2019-09-11 23:32:16 -03:00
Bruno da Silva Belo c681b3a1b3 csharp: Registering events when using Components.Basic.
Summary:
With `Components.Basic`, it isn't registering events,
while `Components.Ui` do with `elm_init`

Fixes T7770
Thanks @lauromoura

Test Plan: Look T7770

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, brunobelo, felipealmeida, #reviewers, lauromoura, #committers

Tags: #efl

Maniphest Tasks: T7770

Differential Revision: https://phab.enlightenment.org/D9909
2019-09-11 17:30:19 -03:00
Jaehyun Cho 993b337e67 eolian_mono: fix documentation warning by using "<" and ">"
Summary:
If type A: list<B>; is written in eo, then documentation warning
occurs because list<B> is written in the documentation without string
conversion.

To fix the warning, "<" and ">" are converted into "&lt;" and "&gt;".

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9891
2019-09-11 17:15:56 -03:00
Marcel Hollerbach 5d5128b226 efl_ui_collection: fix the insertion of the first element with pack_at
Summary:
before pack_at with no element failed because the list element has been
NULL.
This fixes the insertion, the codepath also works without the error.
Depends on D9871

Reviewers: zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9890
2019-09-11 13:38:48 -04:00
Mike Blumenkrantz ad6300aa48 efl_ui/scrollable_content: handle null cases for scrollable_*_get
Summary: these are valid calls and should be handled correctly

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9880
2019-09-11 13:38:41 -04:00
Mike Blumenkrantz 52e39f71fa tests/edje: reduce chances of cascading test failures in non-forked mode
Summary:
move evas_free() into the global shutdown fixture to ensure that edje_shutdown
actually does call internal shutdown methods since evas_free() will not be
reached if it is at the end of a failing test

Depends on D9878

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9879
2019-09-11 13:38:35 -04:00
Mike Blumenkrantz 599d7f80db tests/edje: add comprehensive edje reloading test
Summary:
this verifies:
* successfully loading a file
* emission of "load" signal when performing a file load
* swallowing an object
* no-op of file load operation on same file if mtime is unchanged
* successfully reloading the same file if the mtime has changed
* preserving user-defined data across file reloads

Depends on D9877

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9878
2019-09-11 13:38:28 -04:00
Mike Blumenkrantz 5489482484 efl: check file's mtime in efl.file::file_set to determine if file is the same
Summary:
historically, if the mtime of an edj file changes after being loaded,
the edje file should be reloaded. this needs to occur in a single call
with the previous user definitions intact, so verify that the mtime is
the same in efl.file::file_set when using the same file name

@fix

Reviewers: cedric

Reviewed By: cedric

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9877
2019-09-11 13:38:21 -04:00
Marcel Hollerbach 7f691b47fb introduce test file for Efl.Ui.Group_Item
Summary:
this tests that the tree structure which is defined by the group and
child item hirachy is correctly transformed into a linear list.
This also checks that the bug from the revision before is not happening.

Depends on D9890

Reviewers: segfaultxavi, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9872
2019-09-11 13:38:20 -04:00
Marcel Hollerbach d5bf69ff53 efl_ui_group_item: fix insertion of item at the end
Summary:
in this case here, eina list count already returns the count *including*
the subobject, the case in pack_at below (where also +1 is added) is
different to that, as count is the value *before* the list add.
Depends on D9870

Reviewers: segfaultxavi, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9871
2019-09-11 13:38:13 -04:00
Marcel Hollerbach 6088557233 efl_ui_test_list_collection: add test for item placement
Summary:
this test checks if the placement of the items is correct with and
without scrolling, with and without groups.
Depends on D9869

Reviewers: segfaultxavi, zmike, cedric

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9870
2019-09-11 13:38:07 -04:00
Ali Alzyod c9399b2154 evas_textblock: fix warning
Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9903
2019-09-11 11:07:51 -04:00
Marcel Hollerbach 6028952894 evas_callbacks: make the callback protection a little bit safer
the problem here is that we might subscribe to an event before
evas_object_callbacks_init has happened. This sounds like something
which might not happen. However, with the interfaces project this
definitly will start to happen because someone will some day overwrite
the evas object and do something before the constructor, which will not
raise a error or something but will simply just not work.

With this commit we are not listening to the event callbacks via event
emission but rather via inheritance. With this there is no "earlier than
we listend" point, and the issue in the task is solved by itself.

fix T8202

Reviewed-by: Jaehyun Cho <jae_hyun.cho@samsung.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9841
2019-09-11 10:37:21 +02:00
Hermet Park f684e85453 evas vg: optimize memory in layer blending.
Same method to 321035d1e7

By far, with previous memory optimization,

The memory usage is reduced to half of composition buffer size.
2019-09-11 15:15:32 +09:00
Hermet Park 27498629ed canvas vg: optimize memory usage in composition.
Ector buffer allocates memory in default,
We don't need to allocate buffer memory additionally to handle over outside.
We can map/unmap ector buffer for reusing this.
2019-09-11 14:30:16 +09:00
Hermet Park dc0056ca93 ector: removed cairo backend.
For reducing maintainability burden,
We drop supporting cairo backend.

The default backend is to software implementation from now.
It's well maintained so far and works good.x
2019-09-11 13:14:56 +09:00
Hermet Park 3d50083f41 ector: don't alloc memory if the size is 0. 2019-09-11 12:01:25 +09:00
Hermet Park 20abcba3b0 ector: code refactoring.
more neat and clean code, no logical changes.
2019-09-11 12:01:19 +09:00
Yeongjong Lee d7006f6a09 csharp: remove unused delegate and struct
Summary: cleanup workaround.cs

Test Plan: ninja test

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9895
2019-09-10 23:45:34 -03:00
Marcel Hollerbach 63fd44ef16 efl_ui_widget: refactor constructor
Summary:
first of all, in efl-ui we should probebly ensure that a widget is
always created in a window object. Otherwise we are looking for trouble.

Additionally, calling efl_ui_win_shared_data_get on anything else than a
window object will result in a returned NULL value.
If we are not having a widget parent, there is also not much point in
calling a API that is only defined on the widget base class, so we also
move that away

Reviewers: kimcinoo, raster

Reviewed By: kimcinoo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9762
2019-09-11 10:43:08 +09:00
Lauro Moura 09c3517d57 csharp: Add test for static interface members
For the checks added in D9893
2019-09-10 20:17:28 -03:00
Yeongjong Lee 4bacfe155f csharp: skip static members from interfaces
Summary:
Static methods of eo-interface are generated in c# interface-concrete. there are
4 methods
`efl_access_object_access_root_get`, `efl_access_object_event_emit`,
`efl_access_object_event_handler_add`, `efl_access_object_event_handler_del`

If a class that inherits that interface, static method can't be called via
classname.

This commit changes eolian_mono by removing those static members from the C#
interface-concretes. If a generated class implements the interface, the static
member is generated as static member of the class directly.

Depends on D9800

Test Plan: Check that `Efl.Ui.Widget` has `public static Efl.Object AccessRoot` property.

Reviewers: lauromoura, felipealmeida

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9893
2019-09-10 19:47:47 -03:00
Lauro Moura dfb856158c csharp: Skip non-public members from interfaces
Summary:
Eolian allows non-public members in interfaces and mixins (usually
@protected). As both kinds are converted to C# interfaces, this
causes problem as non-public members are forbidden in C# interfaces.

This commit changes eolian_mono by removing those members from the C#
interfaces. If a generated class implements the interface, the method is
generated as if it were a protected member of the class directly.

For mixed properties like `Efl.Io.Reader.CanRead { get; set @protected; }`,
the interface has only the public getter and the the implementing class has both
the public getter and the protected setter.

With this, C# devs won't be able to directly implement protected Eo
methods from interfaces. (But this really does not make sense from the
C# point of view).

ref T7494

Reviewers: segfaultxavi, felipealmeida, YOhoho

Reviewed By: YOhoho

Subscribers: cedric, brunobelo, Jaehyun_Cho, #reviewers, woohyun, #committers

Tags: #efl

Maniphest Tasks: T7494

Differential Revision: https://phab.enlightenment.org/D9800
2019-09-10 19:30:47 -03:00
Carsten Haitzler d1890f5eca efl task - change exit method to use normal event for multiple listeners
we couldn't have multilpe listeners before. now we can. better this
way. have to do this now because i can't mark efl task as @beta
without taking out massive wads of efl with it.
2019-09-10 23:09:30 +01:00
Felipe Magno de Almeida ad48272ffe CSharp: Cleanup test that inserts idle event and do not remove it
Summary: Remove idle event after running test so it doesn't impact with other tests that run after it

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9887
2019-09-10 18:58:31 -03:00
Bruno da Silva Belo 50a1572c09 csharp: Adding ToString methods to Strbuf and custommarshaler.
Summary:
WIN32 should use a allocator and deallocator different from EFL, sometimes, when
freeing a pointer, it should use win32_free. To stardardize, A custommarshaler
is used to fix this problem.

Fixes T8201

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, brunobelo, felipealmeida, #reviewers, lauromoura, #committers

Tags: #efl

Maniphest Tasks: T8201

Differential Revision: https://phab.enlightenment.org/D9842
2019-09-10 17:42:19 -03:00
Bruno da Silva Belo 6ce53b9c0f eolian-mono: Changing order of scope and modifier.
Summary: sealed public is now public sealed and virtual public is public virtual

Reviewers: lauromoura, felipealmeida

Reviewed By: lauromoura

Subscribers: cedric, brunobelo, felipealmeida, #reviewers, lauromoura, #committers

Tags: #refactoring, PHID-PROJ-uhnmnvlvunw6jgoqdnd4, #efl_language_bindings

Maniphest Tasks: T8172

Differential Revision: https://phab.enlightenment.org/D9725
2019-09-10 17:06:18 -03:00
Mike Blumenkrantz 2cb5dc33a1 build: unbreak destructors
Summary:
the following commits did not correctly add super calls to the destructor,
resulting in a massive number of build errors as well as some unit test failures

ref e51699afbc
ref 38be95b0b6

Reviewers: raster, lauromoura

Reviewed By: lauromoura

Subscribers: lauromoura, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9902
2019-09-10 15:11:24 -03:00
Carsten Haitzler 93b4571d69 efl task - go back to non beta... this breaks the world 2019-09-10 17:53:59 +01:00
Carsten Haitzler 5455a2dcf7 eo beta - mark task, io classes as beta because they are... 2019-09-10 17:44:51 +01:00
Carsten Haitzler e51699afbc efl core cmommand line - implement destructor and thus fix leak 2019-09-10 17:44:51 +01:00
Carsten Haitzler 38be95b0b6 efl gfx path - implement destructor and thus fix leak 2019-09-10 17:44:51 +01:00
Xavi Artigas e0ad216aee efl_ui/alert_popup: More documentation nitpicks 2019-09-10 17:14:33 +02:00
Mike Blumenkrantz 6d49eb7cc2 efl_ui/alert_popup: improve docs
Summary:
class and property docs

ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9883
2019-09-10 17:10:29 +02:00
Xavi Artigas 96d8b9bc3e docs: nicer formatting of the NULL keyword, everywhere 2019-09-10 16:05:44 +02:00
Mike Blumenkrantz 08e5b09d0a efl_ui/popup: improve docs
Summary:
this provides full documentation for the class and all properties

ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9882
2019-09-10 15:47:38 +02:00
Marcel Hollerbach 5bae833123 efl_ui_suite: resolve focus errors
Summary:
unregsiter shound never call unprotected eo API on the object,
unregister can be called with a object that is dead.

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9898
2019-09-10 09:21:56 -04:00
Yeongjong Lee 37a63fb1ee efl_ui_widget: make Efl_Ui_Scrollable_On_Show_Region legacy
Summary:
`Efl_Ui_Scrollable_On_Show_Region` is only used for legacy EAPI. it moved to
elm_widget.h from eo file. also, it renamed `Elm_Widget_On_Show_Region_Cb`.

Reviewers: Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9896
2019-09-10 09:16:48 -04:00
Daniel Kolesa afc011d893 eolian: hard ban usage of ptr() in stable API 2019-09-10 14:35:41 +02:00
Daniel Kolesa 31658e6e14 efl: replace usage of ptr() in all stable APIs 2019-09-10 14:29:06 +02:00
Daniel Kolesa a5c7f92a52 eolian: fix default value handling for @by_ref types
We must check all pointerness first, and append NULL as default
when that applies, because @by_ref is not carried in the typedecl
info. Therefore, it would result in a false positive and try to
make a zeroed struct, which we don't want.
2019-09-10 14:25:03 +02:00
Daniel Kolesa b6815a2f99 eolian: account for @by_ref when serializing return types
This fixes cases such as missing const when having a @by_ref
return type. The const should not be avoided there because it
is not returning the whole type as const, just what the pointer
dereferences to.
2019-09-10 14:17:53 +02:00
Daniel Kolesa 5cd851ea25 eolian: consider @by_ref marked elements ownable 2019-09-10 14:10:49 +02:00
Daniel Kolesa b880a1c7e8 eolian: add an optional warning for ptr() usage in stable API 2019-09-10 14:06:46 +02:00
junsu choi 6d465b0b1f evas_vg_cache: Hashkey in cache uses evas
Summary:
Vg_entry is shared by different child windows.
When two or more objects load the same file
When resizing, cache_vg_entry_render can delete an active entry
while creating a new entry and deleting an existing entry.
Therefore, use cache data added evas

Test Plan:
[enable json loader]
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -203,7 +203,7 @@ option('evas-loaders-disabler',
   type : 'array',
   description : 'List of modular image/vector load  .....
   choices : ['gst', 'pdf', 'ps', 'raw', 'svg', 'rs  .....
-  value : ['webp', 'json']
+  value : ['webp']

[Test]
elementary_test -> Animation View click -> play -> Animation View click again -> ...

Reviewers: Hermet, smohanty, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9740
2019-09-10 20:06:18 +09:00
Xavi Artigas f78b4861af efl_task/exe: Further update docs 2019-09-10 12:26:03 +02:00
Wonki Kim bc0eeeb1ec efl_exe: Enhance class description
Summary: This patch ehnance the description of efl_exe, regarding task T7717.

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9889
2019-09-10 12:13:40 +02:00
Xavi Artigas 5ebc5f53e7 efl_ui/box_flow: Improve docs a bit further 2019-09-10 11:34:50 +02:00
Mike Blumenkrantz 42abe377b5 efl_ui/flox_box: improve docs
Summary:
expand the description for the class a bit

ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9885
2019-09-10 11:26:48 +02:00
Mike Blumenkrantz 0867b51a1d efl_ui/popup: improve backwall docs
Summary: ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9884
2019-09-10 11:23:44 +02:00
Mike Blumenkrantz c10c9b21cc efl_ui/scrollable_content: improve docs
Summary:
this describes more behaviors of the mixin, various internal properties
used, and removes some incorrect references

ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9881
2019-09-10 10:11:43 +02:00
Marcel Hollerbach 6e23dfba62 efl_ui_position_manager: only fill as many items as we need
prior to this commit, we just passed the start_id and the end_id the
end_id was the start_id plus the size of the memory buffer. However,
making this depending on the size of the memory buffer is a bad idea, as
changing it based on our needs is rather painfull.

With this commit we have explicit passing of the start_id, end_id and
memory len. This is kind of redundant, however, its very convenient, and
easy to write. The buffer will be filled with the maximum size that is
possible with length of the buffer, however, the end_id will not be
filled anymore.

Differential Revision: https://phab.enlightenment.org/D9756
2019-09-10 09:10:11 +02:00
Marcel Hollerbach 7024e6f03f efl_ui_collection: update theme name
item_container was the wrong name here. this fixes this to use the
correct name in the theme. Additionally the file name in the file is
adjusted.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9849
2019-09-10 09:10:11 +02:00
Marcel Hollerbach 389dbd2524 efl_ui_position_manager_list: support odd even styles
this was simply forgotten, but was part of the previous widget, so this
fixes the missing widget.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D9846
2019-09-10 09:10:10 +02:00
Daniel Kolesa 267c57d0f1 eolian: remove second parameter for eolian_type_c_type_get
This has been replaced by newer APIs.
2019-09-09 18:26:49 +02:00
Lauro Moura 165921ec04 eolian_cxx: Add support for @by_ref
Summary:
It will coexist with `eolian_type_is_ptr` while we phase out the latter.

Fixes: T8211

Depends on D9866

Reviewers: q66, felipealmeida

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9867
2019-09-09 18:10:02 +02:00
Mike Blumenkrantz 1148ab3393 docs: fix invalid $class reference to use @class
Summary: ref T7717

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_docs

Maniphest Tasks: T7717

Differential Revision: https://phab.enlightenment.org/D9876
2019-09-09 16:03:05 +02:00
Marcel Hollerbach 3d03d4031d build: fix disabling of audio
Summary: this supports disabling audio building in efl.

Reviewers: tasn, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9873
2019-09-09 09:17:30 -04:00