Commit Graph

2214 Commits

Author SHA1 Message Date
SangHyeon Jade Lee 5525c89a3d efl_model : rename all efl_model based classes.
Summary:
As the result of discussion in T7458,
we need to rename all efl_model based classes with efl_XXX_Model sequence.
I've run few vote for this, see V42, V43
few classes are totally renamed as our consideration of misnaming.

| Efl.Model_Loop | Efl.Loop_Model |
| Efl.Model_Item | Efl.Generic_Model |
| Efl.Model_Container | Efl.Container_Model |
| Efl.Model_Container_Item | Efl.Container_Model_Item |
| Efl.Model_Composite | Efl.Composite_Model |
| Efl.Model_Composite_Boolean | Efl.Boolean_Model |
| Efl.Model_Composite_Boolean_Chlidren | Efl.Boolean_Model_Item |
| Efl.Model_Composite_Selection | Efl.Select_Model |
| Efl.Model_Composite_Selection_Chlidren | Efl.Select_Model_Item |
| Efl.Model_View | Efl.View_Model |
| Eio.Model | Efl.Io.Model |
| Efl.Ui.Model_State | Efl.Ui.State_Model |
| Efl.Ui.Model_Size | Efl.Ui.Size_Model |
| Efl.Ui.Model_Exact | Efl.Ui.Exact_Model |
| Efl.Ui.Model_Average | Efl.Ui.Average_Model |
| Efl.Ui.Model_Homogeneous | Efl.Ui.Homogeneous_Model |

I worried about Efl.Io.Model changes, cause it is widely used,
but as I tested, there is no issue found yet.

Eldbus.Model also may can changed Efl.Dbus.Model,
but I cannot found any class who using Efl.Dbus namespace,
so I left it future work.

Test Plan:
Run the Make Test,
it works well except Efl test about selection.
there are class inheritance problem exist in select_model,
I reported it and will fix it in another patch.

Reviewers: cedric, felipealmeida, woohyun, Hermet

Reviewed By: cedric

Subscribers: lauromoura

Tags: #efl, #do_not_merge

Differential Revision: https://phab.enlightenment.org/D7533
2019-01-31 14:59:37 +09:00
Cedric BAIL c713bb90d3 elementary: add test for Efl.Ui.Model_Average.
Summary: Depends on D7664

Reviewers: SanghyeonLee, felipealmeida, segfaultxavi, zmike

Reviewed By: SanghyeonLee

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7382

Differential Revision: https://phab.enlightenment.org/D7665
2019-01-31 11:09:16 +09:00
Cedric BAIL 40cc1aca0d elementary: add a test for Efl.Ui.Model_Exact.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7664
2019-01-30 12:06:22 -08:00
Cedric BAIL d1b1dce5ff elementary: add a test for Efl.Ui.Model_Homogeneous.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7663
2019-01-30 12:06:20 -08:00
Cedric BAIL 1dadeac05e ecore: add an index property on Efl.Model_Composite and handle children_slice_get.
This will enable inheriting class to not have to implement as much code. This patch
fix also all class that use Efl.Model_Composite and its test.

Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7654
2019-01-30 12:06:11 -08:00
Mike Blumenkrantz 9aca866fd1 efl.text_markup: move cursor-related methods to efl.text_markup_interactive
many users of the markup property are not interactive text cases, so splitting
off the interactive methods resolves a number of unimplemented method issues

ref T5719

Differential Revision: https://phab.enlightenment.org/D7787
2019-01-30 13:32:04 +01:00
Mike Blumenkrantz dc8e46a926 tests: move efl_ui focus tests into efl_ui_suite
ref T6815

Differential Revision: https://phab.enlightenment.org/D7827
2019-01-30 13:32:04 +01:00
Mike Blumenkrantz 2137154d2a tests: move efl_ui_image test -> efl_ui_suite
ref T6815

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7825
2019-01-30 10:11:41 +01:00
Mike Blumenkrantz 633a2e506c tests: move efl_ui_layout tests into efl_ui_suite
also use legacy api for elm_layout swallow test

ref T6815

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7824
2019-01-30 10:11:40 +01:00
Mike Blumenkrantz 7628bd76ed tests: move image_zoomable into efl_ui_suite
ref T6815

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7807
2019-01-30 09:44:32 +01:00
Mike Blumenkrantz 166dafb0d8 tests: add atspi test for efl_ui_suite
this is just a copy of the existing suite but with some small changes to
use (mostly) eo apis

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7806
2019-01-30 09:44:31 +01:00
Mike Blumenkrantz 22152565a9 tests: formatting
make this consistent for possible sed later

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7805
2019-01-30 09:44:30 +01:00
Mike Blumenkrantz 9f3d87ccca tests: modify efl_ui_suite to use same test infrastructure as elm_suite
this should enable us to begin moving efl_ui tests into the proper suite
instead of sticking them all into elm_suite

also move grid tests to efl_ui_suite

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7765
2019-01-30 09:04:57 +01:00
Chris Michael 26caf1641f evas_test_textblock: Fix unused variable warning
In evas_textblock_cursor test, the variable 'dir' is only used if
HAVE_FRIBIDI is defined. If that is not defined, then we get an unused
variable warning when compiling. This patch wraps the variable around
an #ifdef so that it does not get declared without FRIBIDI support.
2019-01-29 11:03:09 -05:00
Cedric BAIL 97e210d727 elementary: enable efl_ui_suite tests for meson build.
Summary: Depends on D7661

Reviewers: SanghyeonLee, felipealmeida, segfaultxavi, zmike

Reviewed By: SanghyeonLee, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7382

Differential Revision: https://phab.enlightenment.org/D7662
2019-01-29 09:26:51 -05:00
Lauro Moura c03f272bec eolian-cxx: Add constructor_def
Summary: To be used generating argument-aware constructors in C#.

Reviewers: felipealmeida, vitor.sousa

Reviewed By: felipealmeida

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7794
2019-01-28 16:23:07 +09:00
Mike Blumenkrantz 956a66c748 evas_canvas3d_mesh: implement get methods for efl.file file and mmap props
also add unit tests for new methods

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7785
2019-01-26 11:42:14 +01:00
Marcel Hollerbach 015fbac20d ecore: make ecore_audio_out abstract
ecore_audio does define format and source, those are then used in some
leave classes, ecore_audio is only used in the tests, and should not be
used externally. Therefore make it abstract.
The other missing implementations are in the leave classes,
They are resolved with providing empty implementations, since no format
switching is supported.

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7782
2019-01-26 11:42:12 +01:00
Marcel Hollerbach 1c27529363 elm_fileselector_button: support the whole interface
this adds full support of the full elm_fileselector interface to
elm_fileselector_button.

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7753
2019-01-26 11:42:02 +01:00
Marcel Hollerbach 1763afb391 edje: implement container api
the container api returns the number of added swallows.
the content iterator returns a iterator over all swallowed objects.

The reason this is only for swallows is that the interface explicitly
mentions UI elements at the count. Since i am believing the the result
of the count operation should mirror to the amount of elements in the
iterator, the iterator only returns swallowed objects.

ref T5719

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7748
2019-01-26 11:41:58 +01:00
Cedric BAIL 549bf6e269 eo: improve efl_isa to be able to know if a class is part of the hierarchy of another class.
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7703
2019-01-24 16:29:25 -08:00
Carsten Haitzler 6dedfddda7 meson - edje_cc use -fastcomp for fast builds in mesa 2019-01-24 14:04:07 +00:00
Marcel Hollerbach 993c843291 efl_ui_layout: use the correct object
the obejct used in D7740 have been false.
Here comes the fix + a few tests.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7746
2019-01-24 10:24:50 +01:00
Cedric BAIL e863a3d28a eina: add tests for the new Eina_Value convert functions.
Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D7651
2019-01-23 10:54:07 -08:00
Cedric BAIL d4ab211968 eina: add tests for Eina_Value utility function eina_value_*_get.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: SangHyeon Jade Lee <sh10233.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7649
2019-01-23 10:54:03 -08:00
Mike Blumenkrantz 5d1d76574c 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
2019-01-23 15:23:10 +01:00
Marcel Hollerbach 286ad91075 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
2019-01-23 14:13:31 +01:00
Marcel Hollerbach efaa4bc7f9 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
2019-01-23 14:13:29 +01:00
Marcel Hollerbach 5c1fde2c57 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
2019-01-22 14:02:37 +01:00
Daniel Kolesa 7feeda0410 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.
2019-01-21 17:19:14 +01:00
Marcel Hollerbach 95160ab136 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
2019-01-18 16:31:31 +01:00
Marcel Hollerbach 34efdfb1b1 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
2019-01-18 16:31:26 +01:00
Daniel Kolesa 57ceb9b8ea eolian: fix tests fallout from the latest changes 2019-01-17 17:29:36 +01:00
Daniel Kolesa 18ab4f2eec eolian: disallow pure virtual on non-abstract/mixin classes 2019-01-17 17:17:40 +01:00
Xavi Artigas 0b7b80919d Remove letftover include
This was breaking build...
2019-01-17 17:13:40 +01:00
Daniel Kolesa 1172bce7cc eolian_cxx: make address_of test not use multiclass inheritance 2019-01-17 16:14:46 +01:00
Felipe Magno de Almeida fc48e19b56 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
2019-01-17 14:45:14 +01:00
Marcel Hollerbach 8e487069c9 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
2019-01-17 22:23:01 +09:00
Felipe Magno de Almeida adc2e674af 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
2019-01-17 21:36:27 +09:00
Vitor Sousa 7b342e8fdd 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
2019-01-17 21:36:27 +09:00
Felipe Magno de Almeida 92aab7830c 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
2019-01-17 21:36:27 +09:00
Lauro Moura 6e3768b2b6 efl-mono: test on inout RwSlice. 2019-01-16 15:05:09 -02:00
Marcel Hollerbach 66824da950 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
2019-01-16 14:24:12 +01:00
Marcel Hollerbach 1e2faf8527 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
2019-01-16 14:16:01 +01:00
Mike Blumenkrantz 4cac97675e 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
2019-01-16 13:28:58 +01:00
Yeongjong Lee 78ae9c0ae0 gfx: Add size hint fill (EO)
Summary:
If widget use both hint_align(HINT_FILL) and hint_max together, there is no way
to set to hint_align. See, elementary_test -to 'efl.ui.box' -
"Button with a quite long text." button. you can control button position
using "Box align" slider, but this is not proper implementation. When there are
two widget which have hint_align(HINT_FILL) and hint_max, those positions are
determined by box_align rather than hint_align. it means widget align cannot be
set individually.
To solve this problem, this patch add hint_fill property. in order to avoid
conflict with legacy API named evas_object_size_hint_fill_set(), it only works
for EO widgets(made by efl_add).
Also, EFL_GFX_SIZE_HINT_FILL is removed.

@feature

Test Plan:
elementary_test -to 'efl.ui.box'
elementary_test -to 'efl.ui.table'

Reviewers: jpeg, Hermet, Jaehyun_Cho, raster, barbieri

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T3912

Differential Revision: https://phab.enlightenment.org/D7409
2019-01-16 16:47:51 +09:00
Lauro Moura e2589e3b48 efl-mono: Only raise exception for managed errors.
Summary:
Previously, any unhandled Eina_Error would cause an exception
to be thrown when the control returned to C#.

This commit changes this behavior to only raise it when an exception
went unhandled from a C# callback back to C, like in an event handler,
for example.

Test Plan: run tests

Reviewers: segfaultxavi, Jaehyun_Cho, felipealmeida

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7537
2019-01-15 17:51:20 +09:00
Lauro Moura ede219c453 efl-mono: Fix marshalling of struct in event data.
Summary:
Previously, we just converted through PtrToStructure, which didn't have
the full marshalling info converting from the internal one to the
external.

This fixes the usage of the Efl.Loop.arguments event.

Also renamed the ToExternal methods to ToManaged, to make clearer that
the output struct is the one intended to be used from the managed code.

Also fixed a minor styling in the generated code (making it easier to be
inspected).

Depends on D7538

Reviewers: segfaultxavi, felipealmeida, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7539
2019-01-14 16:18:05 +09:00
Lauro Moura 49d4d44926 efl-mono: Share test data among other files.
Summary: Will make easier running/compiling tests in isolation.

Reviewers: segfaultxavi, felipealmeida, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7538
2019-01-14 16:16:18 +09:00
Xavi Artigas 48b303eeb5 efl-mono: Add extra constructors to Eina.Value
Summary:
new Eina.Value(0) is a special case. The 0 is silently converted
to an enum (Eina.ValueType) and therefore the call is ambiguous
with the 0 being first converted to an Eina.Value via the implicit
conversion operator (calling the Eina.Value deep copy constructor).
Adding constructors for all supported types solves the problem because
they have higher priority. Also, they avoid one deep copy of the
Eina.Value.

Includes test case to catch this problem in the future. This was discovered
in the tutorials, where new Eina.Value(0) is being used.

Test Plan:
The src/efl_reference_core_event.exe example from the examples repo was
not compiling before, and now it is.
make check and make examples still work as expected.

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7598
2019-01-11 14:51:22 +01:00