Marcel Hollerbach [Mon, 23 Sep 2019 12:11:51 +0000 (14:11 +0200)]
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
Daniel Kolesa [Mon, 23 Sep 2019 13:26:23 +0000 (15:26 +0200)]
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.
Mike Blumenkrantz [Thu, 19 Sep 2019 13:28:57 +0000 (09:28 -0400)]
ci: add back target to do out-of-tree test build
this is necessary in order to ensure that our headers are usable
ref T8228
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D10036
Jaehyun Cho [Thu, 19 Sep 2019 09:49:39 +0000 (09:49 +0000)]
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
Hermet Park [Mon, 23 Sep 2019 12:12:07 +0000 (21:12 +0900)]
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
Jaehyun Cho [Mon, 23 Sep 2019 10:37:10 +0000 (19:37 +0900)]
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.
Mike Blumenkrantz [Mon, 23 Sep 2019 10:56:11 +0000 (12:56 +0200)]
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
Marcel Hollerbach [Mon, 23 Sep 2019 07:42:22 +0000 (09:42 +0200)]
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
Stefan Schmidt [Fri, 20 Sep 2019 10:11:39 +0000 (12:11 +0200)]
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
Stefan Schmidt [Fri, 20 Sep 2019 09:19:51 +0000 (11:19 +0200)]
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
Stefan Schmidt [Fri, 20 Sep 2019 08:46:02 +0000 (10:46 +0200)]
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
Stefan Schmidt [Fri, 20 Sep 2019 08:36:17 +0000 (10:36 +0200)]
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
WooHyun Jung [Mon, 23 Sep 2019 08:48:02 +0000 (10:48 +0200)]
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
Wonki Kim [Sat, 21 Sep 2019 04:28:24 +0000 (04:28 +0000)]
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
Mike Blumenkrantz [Fri, 20 Sep 2019 13:04:16 +0000 (09:04 -0400)]
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
Ross Vandegrift [Sun, 22 Sep 2019 23:30:25 +0000 (23:30 +0000)]
Use EFL version for doc tarball, not meson version
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10070
Xavi Artigas [Mon, 23 Sep 2019 08:41:46 +0000 (10:41 +0200)]
docs: Typos in Efl.Object
SangHyeon Jade Lee [Fri, 20 Sep 2019 01:40:01 +0000 (10:40 +0900)]
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
SangHyeon Jade Lee [Tue, 27 Aug 2019 01:21:36 +0000 (10:21 +0900)]
genlist: skip unnecessary process call while genlist clearing
item_process is calling while genlist clearing when
the item is relatvely added.
skiping unnecessary process calls improve deletion performances.
Change-Id: Ic12c4ea190799a79fb2f369569b453d5061f8019
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
SangHyeon Jade Lee [Fri, 20 Sep 2019 01:55:26 +0000 (10:55 +0900)]
elementary: fix derefrenced pointer accessing on adjusting item
Change-Id: I2392de287318168c1097aa6826e0a54190bb8b3a
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
SangHyeon Jade Lee [Fri, 20 Sep 2019 01:51:09 +0000 (10:51 +0900)]
elementary: prevent zero-division in gengrid internal circle patch position calculate
Change-Id: I130deac7a6b04d1bdb07aae1f51f10508162e4ee
Signed-off-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Jongmin Lee [Sun, 22 Sep 2019 21:22:39 +0000 (06:22 +0900)]
build: resolve build error during migration
Change-Id: Id3d2437e84e3dbbebc45ff784f7e4b6345be7dc3
Marcel Hollerbach [Sat, 21 Sep 2019 09:08:46 +0000 (11:08 +0200)]
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
Marcel Hollerbach [Sat, 21 Sep 2019 08:15:18 +0000 (10:15 +0200)]
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
Marcel Hollerbach [Sat, 21 Sep 2019 15:53:53 +0000 (17:53 +0200)]
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
Marcel Hollerbach [Sat, 21 Sep 2019 15:37:07 +0000 (17:37 +0200)]
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
Marcel Hollerbach [Sat, 21 Sep 2019 11:10:53 +0000 (13:10 +0200)]
elementary: make our tests work again
73219114682f64fdbfe0809be3f2d991016dd3f1 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
Carsten Haitzler (Rasterman) [Sat, 21 Sep 2019 09:26:46 +0000 (10:26 +0100)]
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).
Lauro Moura [Fri, 20 Sep 2019 22:22:22 +0000 (19:22 -0300)]
csharp: Guard hash usage behind EFL_BETA.
Summary: After
718f3cd49586, hashes are currently beta-only.
Reviewers: zmike, brunobelo
Reviewed By: brunobelo
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10060
Jaehyun Cho [Fri, 20 Sep 2019 22:14:02 +0000 (19:14 -0300)]
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
Jongmin Lee [Fri, 20 Sep 2019 21:26:32 +0000 (06:26 +0900)]
Revert "build: resolve build error"
This reverts commit
11d6f49658f44a2ad09a76fa28095077a1b438a1.
Daniel Kolesa [Fri, 20 Sep 2019 16:02:07 +0000 (18:02 +0200)]
eolian: rename any_value_ptr -> any_value_ref for consistency
Daniel Kolesa [Fri, 20 Sep 2019 15:46:56 +0000 (17:46 +0200)]
eolian: string(share) is always const, allow in events out of box
Daniel Kolesa [Fri, 20 Sep 2019 15:03:58 +0000 (17:03 +0200)]
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.
Xavi Artigas [Fri, 20 Sep 2019 14:38:18 +0000 (11:38 -0300)]
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
Lauro Moura [Fri, 20 Sep 2019 14:05:01 +0000 (16:05 +0200)]
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
Marcel Hollerbach [Fri, 20 Sep 2019 13:16:25 +0000 (15:16 +0200)]
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
Hosang Kim [Fri, 20 Sep 2019 10:42:50 +0000 (12:42 +0200)]
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
Stefan Schmidt [Fri, 20 Sep 2019 07:35:36 +0000 (09:35 +0200)]
build: switch build type to release for now
This should have been done with the first alpha, but there was a bug
preventing this. With commit
6960751c4580af9e902cd7719c1acafab4ce7bc5
the problem is fixed and we can finally enable it.
WooHyun Jung [Fri, 20 Sep 2019 02:09:02 +0000 (11:09 +0900)]
efl_ui_scroll_util: add null check after calloc
Marcel Hollerbach [Wed, 18 Sep 2019 09:32:08 +0000 (11:32 +0200)]
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
Cedric BAIL [Fri, 23 Aug 2019 21:29:55 +0000 (14:29 -0700)]
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
Cedric BAIL [Fri, 23 Aug 2019 19:48:16 +0000 (12:48 -0700)]
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
Marcel Hollerbach [Sun, 15 Sep 2019 09:54:51 +0000 (11:54 +0200)]
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
Cedric Bail [Thu, 19 Sep 2019 02:30:17 +0000 (19:30 -0700)]
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
Cedric Bail [Wed, 18 Sep 2019 17:33:23 +0000 (10:33 -0700)]
ecore: remove unused piece of code.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D10030
Cedric Bail [Wed, 18 Sep 2019 02:03:48 +0000 (19:03 -0700)]
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
Cedric Bail [Wed, 18 Sep 2019 01:42:51 +0000 (18:42 -0700)]
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
Cedric Bail [Sun, 15 Sep 2019 02:12:44 +0000 (19:12 -0700)]
eina: add code to help debug leaking Eina_Value.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9942
Cedric Bail [Sat, 14 Sep 2019 17:54:05 +0000 (10:54 -0700)]
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
Marcel Hollerbach [Wed, 18 Sep 2019 12:59:44 +0000 (14:59 +0200)]
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
Marcel Hollerbach [Tue, 17 Sep 2019 14:41:49 +0000 (16:41 +0200)]
efl_ui_layout_part_*: declare stable
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9995
Marcel Hollerbach [Tue, 17 Sep 2019 13:59:07 +0000 (15:59 +0200)]
efl_ui_widget_*: declare parts stable
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D9994
Marcel Hollerbach [Tue, 17 Sep 2019 14:39:55 +0000 (16:39 +0200)]
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
Marcel Hollerbach [Tue, 17 Sep 2019 14:25:37 +0000 (16:25 +0200)]
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
Marcel Hollerbach [Tue, 17 Sep 2019 13:51:54 +0000 (15:51 +0200)]
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
Marcel Hollerbach [Wed, 18 Sep 2019 15:42:28 +0000 (17:42 +0200)]
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
Marcel Hollerbach [Thu, 19 Sep 2019 12:43:31 +0000 (14:43 +0200)]
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
Yeongjong Lee [Tue, 17 Sep 2019 09:15:05 +0000 (09:15 +0000)]
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
Marcel Hollerbach [Thu, 19 Sep 2019 07:27:59 +0000 (09:27 +0200)]
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
Mike Blumenkrantz [Thu, 19 Sep 2019 14:54:47 +0000 (10:54 -0400)]
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
Mike Blumenkrantz [Thu, 19 Sep 2019 18:52:23 +0000 (14:52 -0400)]
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
Mike Blumenkrantz [Thu, 19 Sep 2019 18:15:45 +0000 (14:15 -0400)]
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
Mike Blumenkrantz [Thu, 19 Sep 2019 18:03:59 +0000 (14:03 -0400)]
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
Changyeon Lee [Mon, 16 Sep 2019 12:31:52 +0000 (21:31 +0900)]
ecore_evas_tbm: set tbm_surface_queue to ecore window
Change-Id: I598666204d347c84a7af233865addf94bb07a868
Jongmin Lee [Thu, 19 Sep 2019 22:48:18 +0000 (07:48 +0900)]
build: resolve build error
Efl_Ui.h include some private headers that are not installed, therefore
application that include Efl_Ui.h became failed to build due to missing
private headers. This patch install private headers to include directories
in order to avoid those build errors
@tizen_fix
Change-Id: I94323ff9a749cbe2014cacd2a09ab0eda75f5abd
Jongmin Lee [Thu, 19 Sep 2019 21:47:22 +0000 (06:47 +0900)]
build: resolve build error according to header cleaning up
@tizen_fix
Change-Id: I9d078a817c0d530423d35b60cd3cec5edb3a991e
Daniel Kolesa [Thu, 19 Sep 2019 16:17:37 +0000 (18:17 +0200)]
eolian: remove the composite keyword (replaced by composites)
Daniel Kolesa [Thu, 19 Sep 2019 15:32:56 +0000 (17:32 +0200)]
efl: replace composite with composites and dedup implements
Since using 'composites' now automatically implements what has not
been implemented yet, remove the unnecessary duplicates.
Daniel Kolesa [Thu, 19 Sep 2019 15:26:48 +0000 (17:26 +0200)]
eolian: allow composites keyword in place of composite
Fixes T8218.
Daniel Kolesa [Thu, 19 Sep 2019 14:49:31 +0000 (16:49 +0200)]
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.
Xavi Artigas [Thu, 19 Sep 2019 14:51:04 +0000 (16:51 +0200)]
docs: Update documentation for Efl.Gfx.Color_Class
Daniel Kolesa [Thu, 19 Sep 2019 14:04:56 +0000 (16:04 +0200)]
eolian: return NULL instead of EINA_FALSE on safety checks
Xavi Artigas [Thu, 19 Sep 2019 11:11:00 +0000 (13:11 +0200)]
docs: Update docs for Efl.Gfx.Image_Orientable
Marcel Hollerbach [Thu, 19 Sep 2019 09:36:27 +0000 (11:36 +0200)]
efl_model: fix links
Summary: Depends on D10009
Reviewers: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10010
Marcel Hollerbach [Thu, 19 Sep 2019 09:36:26 +0000 (11:36 +0200)]
efl_model: improve docs
Reviewers: segfaultxavi
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D10009
Xavi Artigas [Thu, 19 Sep 2019 09:17:49 +0000 (11:17 +0200)]
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.
Hermet Park [Thu, 19 Sep 2019 06:29:15 +0000 (15:29 +0900)]
doc: fix typo and indentation.
Myoungwoon Roy, Kim [Thu, 19 Sep 2019 06:23:07 +0000 (15:23 +0900)]
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
Hermet Park [Thu, 19 Sep 2019 04:59:05 +0000 (13:59 +0900)]
evas mask: refactoring code.
This clearly separate the condition cases clear so that
the analizyer tool doesn't bother us anymore.
No logical changes.
Change-Id: I8e543993bec16270b81031264c1ddb771a0c825f
Hermet Park [Thu, 19 Sep 2019 04:39:48 +0000 (13:39 +0900)]
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.
Change-Id: I26aea9b29756e36d36d5ea18415f07905849ffd9
Hermet Park [Thu, 19 Sep 2019 04:24:08 +0000 (13:24 +0900)]
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.
Change-Id: I00f4800e77562dc156b997a8206982f92fcc1d2d
Daniel Kolesa [Wed, 18 Sep 2019 17:46:58 +0000 (19:46 +0200)]
eolian: disallow void for out/inout for stable API
Mike Blumenkrantz [Thu, 5 Sep 2019 14:53:59 +0000 (10:53 -0400)]
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
Mike Blumenkrantz [Tue, 3 Sep 2019 18:56:24 +0000 (14:56 -0400)]
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
Mike Blumenkrantz [Wed, 18 Sep 2019 16:02:35 +0000 (12:02 -0400)]
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
Mike Blumenkrantz [Tue, 17 Sep 2019 18:00:19 +0000 (14:00 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:22:33 +0000 (15:22 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:22:03 +0000 (15:22 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:17:15 +0000 (15:17 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:10:34 +0000 (15:10 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:09:27 +0000 (15:09 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:08:13 +0000 (15:08 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 19:07:38 +0000 (15:07 -0400)]
efl_ui/image_zoomable: include header for internal pan
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9975
Mike Blumenkrantz [Mon, 16 Sep 2019 18:59:56 +0000 (14:59 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 18:59:28 +0000 (14:59 -0400)]
build: add include guards for a couple elm headers
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D9973
Mike Blumenkrantz [Mon, 16 Sep 2019 18:57:49 +0000 (14:57 -0400)]
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
Mike Blumenkrantz [Mon, 16 Sep 2019 18:53:54 +0000 (14:53 -0400)]
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
Xavi Artigas [Wed, 18 Sep 2019 14:05:17 +0000 (16:05 +0200)]
TABS
Hermet Park [Wed, 18 Sep 2019 12:51:14 +0000 (21:51 +0900)]
canvas vg: code refactoring.
remove unnecessary reference cooridnates.