Mike Blumenkrantz [Tue, 22 Jan 2019 18:10:13 +0000 (13:10 -0500)]
tests/ecore: reenable ecore-audio play test
this seems to work now
fix T4018
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7723
Stefan Schmidt [Wed, 23 Jan 2019 14:13:27 +0000 (09:13 -0500)]
ci: travis: bring back default and wayland builds
Summary:
With some recent changes we only had builds running after a push which
did not qualify for a make check / ninja test run. Mostly due to problems
with the tests and specific config options. Bring back a default build
which will also run the unit tests un every push.
Also adding back a dedicated wayland build due to conflicts of gl
versions with the all options enabled build.
Fixes T7545
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7545
Differential Revision: https://phab.enlightenment.org/D7727
Marcel Hollerbach [Mon, 14 Jan 2019 19:40:55 +0000 (20:40 +0100)]
eolian: error out when owned type does not have a free function
if there is no free function, then there is no way that this value is
owned by the caller,
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7712
Marcel Hollerbach [Mon, 14 Jan 2019 22:57:31 +0000 (23:57 +0100)]
efl_mono: add a free function to every owned type
this is another step towards enforcing free functions on every owned
type. To equip every owned type with a free function the following is
applied. Every owned ptr is assumed to be a heap pointer, with the free
function "free". Every string that is owed is converted to a mstring. a
pointer to a eo object is also assumed to be a heap pointer, and equiped
with the free function "free".
Differential Revision: https://phab.enlightenment.org/D7710
Marcel Hollerbach [Mon, 14 Jan 2019 22:00:28 +0000 (23:00 +0100)]
eolian_cxx: add free functions to the types
later on @owned functions are enforced to have free functions attached,
if not, eolian will bail out. This is ensuring this for the eolian-cxx
functions
Differential Revision: https://phab.enlightenment.org/D7641
WooHyun Jung [Thu, 17 Jan 2019 06:19:50 +0000 (06:19 +0000)]
efl_ui_widget: set a proper legacy name for widget_parent_set
Previously, legacy name of this property was "elm_widget_parent_set".
But, in efl_ui_widget.eo.legacy.h, it's current name is
"elm_widget_widget_parent_set" which is not matched well with
"elm_widget_parent_get" at all.
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7666
Mike Blumenkrantz [Tue, 22 Jan 2019 17:05:32 +0000 (12:05 -0500)]
ecore-evas/extn: use evas from events when updating key masks
Summary:
plug canvases do not have ee->evas, so this fixes unlimited error messages
while also fixing the corresponding functionality
@fix
fix T5536
Reviewers: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T5536
Differential Revision: https://phab.enlightenment.org/D7681
Stefan Schmidt [Tue, 22 Jan 2019 16:49:32 +0000 (11:49 -0500)]
ci: update distro checks after version upgrades
Summary:
These two checks still used the, now updated to newer, Debian and Ubuntu
versions. It only showed in the daily cron job build.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7719
Stefan Schmidt [Tue, 22 Jan 2019 13:54:39 +0000 (08:54 -0500)]
ci: travis: stop pushing images after build to docker hub
Summary:
This stopped working a while ago and we are not actively using it.
If we need it we can bring it back in a better way later.
Depends on D7708
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7709
Stefan Schmidt [Tue, 22 Jan 2019 13:53:55 +0000 (08:53 -0500)]
ci: travis: update distro tags
Summary: Switch to newer versions of Fedora, Ubuntu and Debian.
Reviewers: bu5hm4n, zmike
Reviewed By: zmike
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7708
Marcel Hollerbach [Mon, 21 Jan 2019 14:37:52 +0000 (15:37 +0100)]
ector: remove unused function
done is not called, nor implemented in a single spot, lets remove it.
It can still be readded once its needed.
ref T5719
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7713
Marcel Hollerbach [Mon, 14 Jan 2019 19:43:21 +0000 (20:43 +0100)]
efl_access: add free functions to efl_acces_object types
there are owned types in eolian, therefore a free function should be
defined on the types that are owned.
Reviewed-by: Lukasz Stanislawski <l.stanislaws@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7711
Lukasz Stanislawski [Tue, 22 Jan 2019 06:59:50 +0000 (06:59 +0000)]
efl_access: add free function to Efl_Access_Text_Range struct
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7717
Marcel Hollerbach [Mon, 14 Jan 2019 22:03:00 +0000 (23:03 +0100)]
efl_ui_list_view_types: add a free function to the struct type
this type is used with @owned, which means, it needs a free function.
So we can ensure everything that is owned also has a free function
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7640
Marcel Hollerbach [Mon, 14 Jan 2019 19:28:45 +0000 (20:28 +0100)]
efl: add free functions to owned types
this commit is a first step in order to add free functions to all the
types that are owned.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7627
Marcel Hollerbach [Mon, 14 Jan 2019 19:12:32 +0000 (20:12 +0100)]
elm: restore old elm_web behaviour
Everything that is owned must have a free function. In commit
1afd3c215fe5e8933a5ccf0a49aa2fee41043286 the string was
converted to const(string) it was not const before.
So this is converting back to the old behaviour.
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7626
Boris Faure [Sun, 20 Jan 2019 21:13:23 +0000 (22:13 +0100)]
elm.hoversel: ensure sd is not NULL
Summary: elm.hoversel: ensure sd is not NULL
Reviewers: cedric, zmike, raster
Subscribers: raster, zmike, #reviewers, cedric, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7706
Daniel Kolesa [Fri, 18 Jan 2019 16:24:12 +0000 (17:24 +0100)]
eolian: add support for composite section into regular classes
Each regular class can now have a section called 'composite',
which can contain interfaces and interfaces only. This defines
a list of interfaces that are allowed to be unimplemented on the
class, as it is assumed the class will be composited with some
other class implementing those interfaces.
Only regular classes can have this, as only regular classes can
be instantiated.
It will also be necessary to check whether the classes in the
section appear somewhere within the inheritance tree. For now,
this testing is not being done.
Example of usage:
composite {
Some.Magic.Interface;
Another.Magic.Interface;
}
directly in the class body.
Jaeun Choi [Mon, 21 Jan 2019 09:55:10 +0000 (18:55 +0900)]
elm_panel: show/hide panel according to hidden status
when panel becomes non-scrollable by elm_panel_scrollable_set() function,
the panel needs to be shown/hidden according to the hidden status.
this patch implements it.
Jaeun Choi [Mon, 21 Jan 2019 05:51:10 +0000 (14:51 +0900)]
elm_panel: reset layout theme when scrollable mode is changed
after a panel becomes scrollable, it has two layout objects internally
and only one of them is active. when elm_panel_orient_set() function
is called, only the active layout's theme is changed according to
the orientation. so if scrollable mode is changed after that, it shows
the old theme. this patch fixes it.
Carsten Haitzler (Rasterman) [Sat, 19 Jan 2019 19:30:18 +0000 (19:30 +0000)]
evas gl - fix patch that fixed warnings that then broke evas gl tests
even though it was reviewed...
8a617fda979d1522a880f3e57d2e1adfc9f20814
broke the evas gl tests. this fixes that.
Xavi Artigas [Fri, 18 Jan 2019 16:05:05 +0000 (17:05 +0100)]
Efl.Loop.Timer.interval is a constructor property
Summary:
If you don't set the interval during construction, construction fails
so there's no chance to set it later.
We either change that behavior (is it really needed? can't we just set some
default during construction and override it later?) or properly mark this
property as a construction-time property with this patch.
Test Plan: Nothing changes, this will only have effect once bindings start using it.
Reviewers: cedric, zmike, bu5hm4n, q66
Reviewed By: cedric
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7691
Derek Foreman [Wed, 16 Jan 2019 22:44:36 +0000 (16:44 -0600)]
edje: convert var timer list to inlist
Since these are only ever on one list, inlist is better.
Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7697
Derek Foreman [Wed, 16 Jan 2019 20:19:11 +0000 (14:19 -0600)]
edje: Use EINA_LIST_FREE instead of hand coded variant
Minor simplification, should be no functional change.
Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7696
Derek Foreman [Fri, 18 Jan 2019 19:39:46 +0000 (13:39 -0600)]
efl_ui_widget: Save some pointer indirection
We're getting the same widget data twice, as well as testing if the
object is a widget twice. Let's do these things once.
Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7698
Derek Foreman [Fri, 18 Jan 2019 16:41:05 +0000 (10:41 -0600)]
elm_code: Pass widget data to _elm_code_widget_fill_line
We already have this looked up in all callers, and the lookup is mind
smashingly heavy. Just use what we have.
ref T6209
Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Chris Michael <cp.michael@samsung.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7694
Derek Foreman [Fri, 18 Jan 2019 17:35:26 +0000 (12:35 -0500)]
elm_code: Don't update selection if it didn't change
Summary:
Mouse motion can cause multiple worthless selection updates with no
change to row or column. Discard updates that don't really update.
ref T6209
Depends on D7692
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T6209
Differential Revision: https://phab.enlightenment.org/D7693
Derek Foreman [Fri, 18 Jan 2019 17:20:59 +0000 (12:20 -0500)]
elm_code: Pass data to status_type_get
Summary:
Every single call path has already dearly paid the price of pointer
indirection so let's save a few million extra look-ups and just pass
it along.
ref T6209
Reviewers: devilhorns
Reviewed By: devilhorns
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T6209
Differential Revision: https://phab.enlightenment.org/D7692
Marcel Hollerbach [Fri, 18 Jan 2019 13:32:24 +0000 (14:32 +0100)]
eolian: remove the old inheritance syntax
fixes T7459
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7688
Marcel Hollerbach [Fri, 18 Jan 2019 13:29:31 +0000 (14:29 +0100)]
efl: convert all interfaces to the new eolian syntax
ref T7459
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7687
Marcel Hollerbach [Fri, 18 Jan 2019 13:34:04 +0000 (14:34 +0100)]
efl: convert all abstracts to the new eolian syntax
ref T7459
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7686
Marcel Hollerbach [Fri, 18 Jan 2019 13:26:45 +0000 (14:26 +0100)]
efl: convert all mixins to new eolian syntax
ref T7459
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7685
Marcel Hollerbach [Fri, 18 Jan 2019 13:22:23 +0000 (14:22 +0100)]
efl: convert all classes to the new eolian syntax
ref T7459
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7684
Felipe Magno de Almeida [Fri, 18 Jan 2019 09:37:26 +0000 (09:37 +0000)]
efl-mono: Fix calling non-static methods with garbage collectable NativeInherits
This fixes intermittent errors in C# classes with inheritance from Eo,
just like a lot of unit tests.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7683
Jaeun Choi [Fri, 18 Jan 2019 07:26:44 +0000 (16:26 +0900)]
elm_panel: fix a bug in elm_scrollable_mode_set() function
when panel becomes scrollable, the function blocked scrolling
assuming that the panel is hidden. this caused an issue case
when panel becomes scrollable while it is open.
this patch fixes the issue.
Mike Blumenkrantz [Thu, 17 Jan 2019 20:11:25 +0000 (15:11 -0500)]
edje_cc: fail upon detecting invalid part description references in programs
Summary:
this causes attempts to STATE_SET a non-existent state to trigger an error and
abort edj file compiling so that bugs can be fixed before they become runtime
issues
@feature
fix T7016
Depends on D7607
Reviewers: cedric
Reviewed By: cedric
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7016
Differential Revision: https://phab.enlightenment.org/D7608
Mike Blumenkrantz [Thu, 17 Jan 2019 20:11:21 +0000 (15:11 -0500)]
theme: remove a ton of invalid part description references in various programs
Summary:
this looks like mostly bad copy+paste
@fix
fix T6873
Depends on D7606
Reviewers: cedric
Reviewed By: cedric
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T6873
Differential Revision: https://phab.enlightenment.org/D7607
Mike Blumenkrantz [Thu, 17 Jan 2019 20:11:13 +0000 (15:11 -0500)]
theme: correct part name in program for elm/hover/base/main_menu_submenu/default
Summary:
@fix
Depends on D7605
Reviewers: cedric
Reviewed By: cedric
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T6219
Differential Revision: https://phab.enlightenment.org/D7606
Mike Blumenkrantz [Thu, 17 Jan 2019 20:11:07 +0000 (15:11 -0500)]
theme: fix odd state setting on some items for list/genlist/gengrid
Summary:
these used a bad state value which did not exist for the corresponding part
@fix
Reviewers: cedric
Reviewed By: cedric
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7605
Marcel Hollerbach [Thu, 17 Jan 2019 18:44:03 +0000 (19:44 +0100)]
eolian: make error messages usable
base of the impl is where the function is defined, not where the missing
implementation is.
ref T5719
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7680
Xavi Artigas [Thu, 17 Jan 2019 18:59:56 +0000 (13:59 -0500)]
Make Efl.Ui.Closer an interface instead of mixin
Summary:
It is a mixin only because of the setter method for the "closed" property,
otherwise, it would be a pure interface.
Nobody is setting that property, so let's just remove the setter (leaving only
the getter) and make this class an interface.
This should clear the scenario for languages currently having issues with
mixins (like C#).
Related to T7601.
Test Plan: Nothing changes. Make check and examples still work.
Reviewers: zmike, bu5hm4n, cedric
Reviewed By: cedric
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7570
Daniel Kolesa [Thu, 17 Jan 2019 16:29:36 +0000 (17:29 +0100)]
eolian: fix tests fallout from the latest changes
Daniel Kolesa [Thu, 17 Jan 2019 16:13:55 +0000 (17:13 +0100)]
eolian: disallow pure virtual on non-abstract/mixin classes
Marcel Hollerbach [Thu, 17 Jan 2019 16:15:19 +0000 (17:15 +0100)]
elementary: make elm.web abstract
Summary:
elm.web is never used directly only as abstract class that gets
implemented in elm.web.none. Thus making it abstract does make sense.
Depends on D7671
Reviewers: cedric, segfaultxavi, zmike, q66
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7672
Marcel Hollerbach [Thu, 17 Jan 2019 16:15:03 +0000 (17:15 +0100)]
evas: make classes abstract
Summary:
those classes are defining pure_virtual functions, so the class should
be abstract.
ref T7632
Depends on D7670
Reviewers: cedric, segfaultxavi, zmike, q66
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7632
Differential Revision: https://phab.enlightenment.org/D7671
Marcel Hollerbach [Thu, 17 Jan 2019 16:14:38 +0000 (17:14 +0100)]
efl_net: make efl.net.server.fd abstract
Summary:
noone instanciantes it directly, further more it has pure_virtual
functions, which are making sense. So making this class abstract does
fix the issue of pure_virtual functions in class.
ref T7632
Depends on D7669
Reviewers: cedric, segfaultxavi, zmike, q66
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7632
Differential Revision: https://phab.enlightenment.org/D7670
Marcel Hollerbach [Thu, 17 Jan 2019 16:14:19 +0000 (17:14 +0100)]
ecore_audio: remove pure virtual functions from classes
Summary:
A call to a undefined function results in a NOP we can get the same
behaviour with @empty. In Ecore.Audio this pure_virtual function makes
sense, so make the class abstract.
ref T7632
Reviewers: cedric, segfaultxavi, zmike, q66
Reviewed By: segfaultxavi
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7632
Differential Revision: https://phab.enlightenment.org/D7669
Xavi Artigas [Thu, 17 Jan 2019 16:13:40 +0000 (17:13 +0100)]
Remove letftover include
This was breaking build...
Christopher Michael [Thu, 17 Jan 2019 15:34:33 +0000 (10:34 -0500)]
ecore-drm2: Fix formatting
NB: No functional changes
Christopher Michael [Thu, 17 Jan 2019 13:51:23 +0000 (08:51 -0500)]
ecore-evas-drm: Minor formatting fix
NB: No functional changes
Christopher Michael [Thu, 17 Jan 2019 14:26:17 +0000 (09:26 -0500)]
ecore-evas-drm: Refactor _ecore_evas_new_internal
This patch does a small refactor of _ecore_evas_new_internal function
to separate canvas setup for gl & software. This was done so that when
we create a canvas on a per-output bases (multi-output support), the
code inside _ecore_evas_new_internal will be cleaner and easier to
follow.
NB: No real functional changes here until muti-output lands
Differential Revision: https://phab.enlightenment.org/D7679
Christopher Michael [Wed, 2 Jan 2019 16:05:07 +0000 (11:05 -0500)]
ecore-drm2: Pass output as data to drmModePageFlip and drmModeAtomicCommit
In order to support per-output ticking, the drmModePageFlip and
drmModeAtomicCommit functions need to pass the actual Output as data
to the pageflip callback so that the pageflip callback function can
pass the proper rectangle to ecore_evas_animator_tick
Differential Revision: https://phab.enlightenment.org/D7678
Daniel Kolesa [Thu, 17 Jan 2019 15:17:42 +0000 (16:17 +0100)]
eolian: enforce not using regular classes in extension list
Daniel Kolesa [Thu, 17 Jan 2019 15:07:11 +0000 (16:07 +0100)]
eolian_cxx: make address_of test not use multiclass inheritance
Daniel Kolesa [Thu, 17 Jan 2019 14:59:20 +0000 (15:59 +0100)]
elementary: remove combobox from being generated in autotools
Daniel Kolesa [Thu, 17 Jan 2019 14:56:33 +0000 (15:56 +0100)]
elementary: remove leftover header include
Daniel Kolesa [Thu, 17 Jan 2019 14:54:24 +0000 (15:54 +0100)]
elementary: internalize elm_combobox, expose legacy only
This is bad eo API, and won't remain like that, so completely
remove it from being managed by Eolian.
Daniel Kolesa [Thu, 17 Jan 2019 14:30:37 +0000 (15:30 +0100)]
eolian: always enable regular-class-in-extensions-list checking
For now it just warns and doesn't error. It will become an error
once all occurences are fixed.
Christopher Michael [Thu, 17 Jan 2019 12:52:15 +0000 (07:52 -0500)]
efl_ui_focus_object: Don't pass NULL to child_focus_set
When starting elementary_test, efl_ui_focus_object_child_focus_set is
getting passed NULL on startup because elm_test window has no parent.
This makes it difficult to debug and fix T7030 issues. In order to fix
the issue, this patch checks for a valid parent before calling
efl_ui_focus_object_child_focus_set so that it no longer gets passed
NULL on elm_test startup and we can set breakpoints on eo.c:637
without getting interrupted at startup.
ref T7030
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7677
Felipe Magno de Almeida [Thu, 17 Jan 2019 11:32:21 +0000 (11:32 +0000)]
efl-mono: Fix lots of warnings in tests
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7675
Felipe Magno de Almeida [Thu, 17 Jan 2019 11:31:06 +0000 (11:31 +0000)]
eolian-cxx: Fix order of initialization
Make order of code the same as the order of initialization. This avoids warnings
efl-mono: Fix lots of warnings in tests
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7633
Marcel Hollerbach [Thu, 17 Jan 2019 13:14:52 +0000 (22:14 +0900)]
eolian: add api to access the requires field
Summary:
This is needed in order to support checking the correct regular classes
in efl#.
ref T7240
Depends on D7673
Test Plan: run ninja test / make check
Reviewers: q66, felipealmeida, segfaultxavi
Reviewed By: felipealmeida
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7240
Differential Revision: https://phab.enlightenment.org/D7674
Daniel Kolesa [Thu, 17 Jan 2019 13:15:00 +0000 (14:15 +0100)]
eolian: warn as much as possible at once for unimplemented funcs
This also fixes some other potential errors, when there is a
failure about unimplemented methods but something up the stack
then uses those results.
Marcel Hollerbach [Thu, 17 Jan 2019 12:46:03 +0000 (13:46 +0100)]
Revert "evas: make efl_canvas_group abstract"
This reverts commit
ae65c64b8d52c3b3d032eb29474b750b7e5781cb.
It appears that abstract -> abstract enforcement is not needed anymore,
the other patches are fine. However, this one proposes a new object
which is not needed to exist.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7676
Lauro Moura [Thu, 17 Jan 2019 12:43:57 +0000 (21:43 +0900)]
efl-mono: Enable selecting to build @beta items
Summary:
For autotools, use --enable-csharp-beta to enable the generation of beta
methods and properties, for meson use -Dmono-beta=true.
By default, no beta method or property is generated.
Reviewers: woohyun, segfaultxavi, bu5hm4n, lauromoura
Reviewed By: woohyun
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7637
Felipe Magno de Almeida [Thu, 17 Jan 2019 12:33:09 +0000 (21:33 +0900)]
eolian-mono: Add interface registration to inherited classes
Summary: Depends on D7635, D7634
Reviewers: woohyun, bu5hm4n, segfaultxavi, lauromoura
Reviewed By: woohyun
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7636
Vitor Sousa [Fri, 14 Dec 2018 17:06:12 +0000 (15:06 -0200)]
eolian_mono: fix inheriting from efl types not considering additional interfaces
Reviewers: segfaultxavi, bu5hm4n, Jaehyun_Cho, lauromoura
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7635
Felipe Magno de Almeida [Tue, 15 Jan 2019 00:07:49 +0000 (09:07 +0900)]
efl-mono: Add proper test for interface inheritance
Reviewers: segfaultxavi, bu5hm4n, woohyun, Jaehyun_Cho, lauromoura
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7634
Xavi Artigas [Thu, 17 Jan 2019 10:49:01 +0000 (11:49 +0100)]
Fix cut&paste error in docs
Yeongjong Lee [Thu, 17 Jan 2019 08:40:37 +0000 (17:40 +0900)]
elm_panel: fix visibility when switching scrollable mode
Summary:
There are two proplem when switching scrollable mode.
1. a previous layout does not disappear.
2. internal evas_box(sd->bx) should set on "elm.swallow.content" part.
This patch hide remained previous layout and set evas_box to "elm.swallow.content"
part directly.
Thanks to arosis for reporting and sample code.
Test Plan: P262
Reviewers: arosis, eunue, Jaehyun_Cho
Reviewed By: eunue
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7667
Cedric BAIL [Sat, 5 Jan 2019 01:55:14 +0000 (17:55 -0800)]
eina: remove eina_promise_data_get has it lead to risky use.
It seems that use of eina_promise_data_get lead to mostly missuse. As it
duplicate other infrastructure which do not have the same problem. So better
remove it and if we need it back, we can just revert this patch later.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7578
Mike Blumenkrantz [Thu, 10 Jan 2019 20:48:10 +0000 (15:48 -0500)]
efl_app: add "standby" event
this event is called on the app object when all windows have been destroyed
so that the app can decide to take further action, e.g., doing a deep clean of
cache or flushing configuration
@feature
ref T5494
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7593
Mike Blumenkrantz [Mon, 7 Jan 2019 19:29:01 +0000 (14:29 -0500)]
evas: fix big endian pixman image rendering
as indicated by the accompanying FIXME, the byte ordering is inverted
for big endian so this should be #ifdef-ed
Reviewed-by: Chris Michael <Christopher Michael <cp.michael@samsung.com>>
Differential Revision: https://phab.enlightenment.org/D7592
Mike Blumenkrantz [Wed, 16 Jan 2019 16:24:36 +0000 (11:24 -0500)]
elm_entry: make file loading succeed on 0-sized files
a file which has no data is still a valid file and should be correctly
opened
fix T6562
@fix
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7647
Jean-Philippe André [Tue, 27 Nov 2018 10:09:06 +0000 (10:09 +0000)]
ui/flip: fix efl_pack usage
Objects packed would end up invisible as they were not marked as
"_elm_leaveme". I also added some list safety code but I think the
entire pack API on flip is very much untested and unstable.
@fix
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7367
Cedric BAIL [Sat, 5 Jan 2019 01:42:26 +0000 (17:42 -0800)]
ecore: remove data parameters of Efl.Loop_Consumer.promise_new to reduce the risk of inadvertently using the wrong data.
If you need data, use a efl_future_then as done in every case here to get the same feature.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7577
Cedric BAIL [Sat, 5 Jan 2019 01:39:11 +0000 (17:39 -0800)]
eina_cxx: allow for the generation of function that return Eina_Promise in .eo files.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7576
Cedric BAIL [Sat, 5 Jan 2019 01:38:40 +0000 (17:38 -0800)]
eina: remove eina_promise_data_set.
eina_promise_data_set is a misleading API and result in conflicted use by
multiple independent piece of code leading to bug and crash. It is also not
necessary and we can avoid using it completely.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7575
Cedric BAIL [Sat, 5 Jan 2019 00:06:05 +0000 (16:06 -0800)]
Revert "eina: add a function to free Eina_Promise attached data when the promise is destroyed."
A better solution is to actually have no eina_promise_data_set/get at all.
This reverts commit
ce56f32270c2f75adab022b701d3bdcbbbc3fb44.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7574
Cedric BAIL [Sat, 5 Jan 2019 00:04:49 +0000 (16:04 -0800)]
Revert "fix crashes created by "make efl_loop_promise_new a function""
This serie of patch didn't address the core problem in the design of the
ownership of eina_promise_data_{set/get} usage. It is also redundant with
other infrastructure in eina_promise and so not necessary completely.
This reverts commit
de2ec0559b01dba7919503955cc47c1c5fcd0f97.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7573
Cedric BAIL [Sat, 5 Jan 2019 00:01:40 +0000 (16:01 -0800)]
eio: remove use of eina_promise_data_set.
eina_promise_data_set is a misleading API and result in conflicted use by
multiple independent piece of code leading to bug and crash. It is also not
necessary and we can avoid using it completely.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7572
Cedric BAIL [Sat, 5 Jan 2019 00:01:13 +0000 (16:01 -0800)]
ecore_con: remove use of eina_promise_data_set.
eina_promise_data_set is a misleading API and result in conflicted use by
multiple independent piece of code leading to bug and crash. It is also not
necessary and we can avoid using it completely.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7545
Cedric BAIL [Sat, 5 Jan 2019 00:00:21 +0000 (16:00 -0800)]
ecore: make Efl.Loop_Consumer.promise_new an @const function.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7544
Cedric BAIL [Fri, 4 Jan 2019 22:24:28 +0000 (14:24 -0800)]
elementary: refactor selection manager to not use eina_promise_data_set.
eina_promise_data_set is a misleading API and result in conflicted use by
multiple independent piece of code leading to bug and crash. It is also not
necessary and we can avoid using it completely.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7543
Daniel Kolesa [Wed, 16 Jan 2019 19:37:08 +0000 (20:37 +0100)]
eolian: disallow @pure_virtual keyword in interfaces
This is implicit, so it's pointless to allow specifying it.
Daniel Kolesa [Wed, 16 Jan 2019 19:30:02 +0000 (20:30 +0100)]
eolian: disallow pure virtual methods in regular classes
This is a currently optional check.
Use EOLIAN_PURE_VIRTUAL_WARN=1 to enable.
Daniel Kolesa [Wed, 16 Jan 2019 18:53:52 +0000 (19:53 +0100)]
evas/engines/gl_generic: remove multiclass inheritance
evas_ector_gl_buffer/evas_ector_gl_image_buffer contained a regular
class in extensions list, which is wrong.
Daniel Kolesa [Wed, 16 Jan 2019 18:39:39 +0000 (19:39 +0100)]
eolian: add validation to make sure all methods are implemented
The checks are only done for regular classes. It's also disabled
by default as too many methods would be unimplemented.
Use EOLIAN_CLASS_UNIMPLEMENTED_WARN=1 to enable the errors.
Christopher Michael [Wed, 16 Jan 2019 15:07:12 +0000 (10:07 -0500)]
test_efl_anim_interpolator: delete animation event callback on window delete
elementary_test Efl.Animation.Interpolator test performs Invalid
memory access if the window is closed during the animation. This can
lead to elm_test crashing after the main window is closed.
In order to avoid this invalid memory access, when the window gets
deleted we can delete the efl_event_callback so that the event does
not fire while the window is being deleted.
ref T7392
Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Differential Revision: https://phab.enlightenment.org/D7644
Christopher Michael [Wed, 16 Jan 2019 14:49:13 +0000 (09:49 -0500)]
test_efl_anim_interpolator: Minor formatting fixes
NB: No functional changes
Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Differential Revision: https://phab.enlightenment.org/D7643
Lauro Moura [Tue, 15 Jan 2019 03:27:09 +0000 (01:27 -0200)]
efl-mono: test on inout RwSlice.
Christopher Michael [Wed, 16 Jan 2019 16:34:18 +0000 (11:34 -0500)]
efl_ui_focus_manager_root_focus: Remove extra blank lines
NB: No functional changes
Christopher Michael [Wed, 16 Jan 2019 16:07:07 +0000 (11:07 -0500)]
elm_config: Free data returned from eet_read
Summary:
This patch fixes a memory leak in _elm_config_profile_name_get() where
the data returned from eet_read is not being free'd, causing valgrind
to spit out:
```
==11610== 9 bytes in 1 blocks are definitely lost in loss record 16 of
572
==11610== at 0x483777F: malloc (vg_replace_malloc.c:299)
==11610== by 0x4D9DE5B: eina_strbuf_common_string_steal
(eina_strbuf_common.c:828)
==11610== by 0x4D5BC31: eina_binbuf_string_steal
(eina_binbuf_template_c.x:187)
==11610== by 0x58646A1: eet_read_cipher (eet_lib.c:1991)
==11610== by 0x5864775: eet_read (eet_lib.c:2022)
==11610== by 0x49CD4D2: _elm_config_profile_name_get
(elm_config.c:2207)
==11610== by 0x49CD5F8: _elm_config_profile_save (elm_config.c:2237)
==11610== by 0x49D2F6E: _elm_config_sub_init (elm_config.c:4467)
==11610== by 0x4AC0B7D: elm_quicklaunch_sub_init (elm_main.c:840)
==11610== by 0x4ABFE3A: elm_init (elm_main.c:409)
==11610== by 0x138143: main (test.c:1379)
```
@fix
Reviewers: raster, cedric, ManMower
Reviewed By: raster
Subscribers: #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7646
Marcel Hollerbach [Tue, 15 Jan 2019 17:13:43 +0000 (18:13 +0100)]
eolian_gen: void out keys depending on how they are setted
this avoid warings about keys not beeing used in the fallback function.
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7630
Marcel Hollerbach [Mon, 14 Jan 2019 23:04:15 +0000 (00:04 +0100)]
eolian: add free functions for the array and future.
It appears that NULL is not really usefull here, as this will lead to
errors later on. (void) will force the free function to just do nothing
and be later converted to a NOP.
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7629
Marcel Hollerbach [Mon, 14 Jan 2019 22:23:04 +0000 (23:23 +0100)]
eolian: there is no eina_inlist_free
Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7628
Marcel Hollerbach [Mon, 7 Jan 2019 17:31:54 +0000 (18:31 +0100)]
efl_mono: move Eina.Error.Init() to a static constructor
this removes the need for the calling a Init function.
Reviewed-by: Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7556
Marcel Hollerbach [Wed, 16 Jan 2019 12:47:09 +0000 (13:47 +0100)]
efl_mono: move Eina.Log.Init to class consturctor
Summary:
This removes the need to explicitly init the log class.
Depends on D7495
Reviewers: felipealmeida, lauromoura, segfaultxavi
Reviewed By: felipealmeida, segfaultxavi
Subscribers: segfaultxavi, cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D7555
Mike Blumenkrantz [Fri, 11 Jan 2019 15:45:26 +0000 (10:45 -0500)]
tests: use test namespace for elm_layout unit test function names
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7604
Marcel Hollerbach [Wed, 16 Jan 2019 11:28:36 +0000 (12:28 +0100)]
csharp: add a interface to start apps
Summary:
until to today you had to call init functions and a run function which
were static function in a class called Efl.Ui.Config.
However, calling those init functions there is not really OOP style.
Right now things have changed into a manner where you are defining you
application class with inheriting from the Application /
SimpleApplication abstract.
This enables you to call launch() on your application class, calling
launch there leads to a call to the args function, you can call and use
the Efl classes in there, everything is booted up.
Option parsing and dependency start can still be done in the main method
or application constructor, just ensure that you never call any efl
class / function outside the launch function.
A commit that demonstrates the usage can be found at
ref T7204
https://git.enlightenment.org/tools/examples.git/log/?h=devs/bu5hm4n/POC
Reviewers: felipealmeida, segfaultxavi, Jaehyun_Cho, cedric
Reviewed By: segfaultxavi
Subscribers: zmike, woohyun, akanad, lauromoura, #reviewers, #committers
Tags: #efl_language_bindings
Maniphest Tasks: T7204
Differential Revision: https://phab.enlightenment.org/D7495