Commit Graph

26177 Commits

Author SHA1 Message Date
Cedric BAIL 6d61ca9151 elementary: update MVVM example to use asynchronous factory API.
This also fix a bunch of other error regarding object lifecycle and
library initialization.

Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8079
2019-03-01 17:10:44 -08:00
Cedric BAIL 0091e8b5b6 elementary: Efl.Ui.Layout should use the new API efl_content to control object lifecycle property.
efl_content leave the caller in charge of the lifecycle of the object. This means we can
rely on the factory to actually do something with the object before it is destroyed by anyone.

Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8091
2019-03-01 17:10:43 -08:00
Cedric BAIL 89280385b4 eo: improve error message by giving an idea where the error come from.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8090
2019-03-01 17:10:41 -08:00
Cedric BAIL b260c674e2 elementary: do not randomly figure out property name to connect to.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8089
2019-03-01 17:10:40 -08:00
Cedric BAIL 86e2b208c7 eio: Efl.Io.Model doesn't have a parent class that actually provide any property.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8088
2019-03-01 17:10:38 -08:00
Lauro Moura 850b7309b0 efl-csharp: Fix Eina.Value containing arrays and lists
Summary:
It was marshalling erroneously data into and out of arrays and lists.

Instead of passing data by value (or by address of correct size), it was
stuffing data into IntPtr and trying to parse out afterwards.

This commit changes the binding to use the same approach of plain
Get/Set, with proper overloads.

Reviewers: vitor.sousa, segfaultxavi, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8057
2019-03-01 19:24:12 -03:00
Cedric BAIL f591a7aeab eo: obtaining the Eo object attached to an Eina_Value is actually a const operation on the Eina_Value.
Summary: Depends on D8077

Reviewers: segfaultxavi, zmike

Reviewed By: segfaultxavi, zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8078
2019-03-01 10:23:40 -05:00
Cedric BAIL fe82e6fdad elementary: fix string usage in hoversel example.
Summary: Depends on D8073

Reviewers: zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8074
2019-03-01 10:23:32 -05:00
Cedric BAIL 338fb6451a elementary: fix performance example warning by using Eina_Slstr instead of hardcoded buffer.
Reviewers: zmike

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8070
2019-03-01 10:23:24 -05:00
Cedric BAIL c8a7a5a77f elementary: fix web example to define _GNU_SOURCE only if needed.
Summary: Depends on D8076

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8077
2019-03-01 08:59:50 -05:00
Cedric BAIL 5f48e25b50 elementary: fix combobox example to not duplicate the definition of _GNU_SOURCE.
Summary: Depends on D8075

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8076
2019-03-01 08:59:50 -05:00
Cedric BAIL cd05b1b7be elementary: remove badly named and unused array.
Summary: Depends on D8074

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8075
2019-03-01 08:59:50 -05:00
Cedric BAIL 426963ee52 elementary: fix web example warning from duplicated _GNU_SOURCE.
Summary: Depends on D8072

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8073
2019-03-01 08:59:50 -05:00
Cedric BAIL 46044d719f elementary: fixup warning in location example.
Summary: Depends on D8071

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8072
2019-03-01 08:59:50 -05:00
Cedric BAIL 2abee9bfe9 elementary: fix Evas3D examples warning due to double define.
Summary: Depends on D8070

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8071
2019-03-01 08:59:50 -05:00
Carsten Haitzler 5aec938fbc efl core env - remove unused envrion declaration 2019-03-01 10:08:17 +00:00
Carsten Haitzler 4cea3050c5 efl exe - fix indent of hash compiler directives 2019-03-01 10:06:43 +00:00
Carsten Haitzler bbdb2e5c23 efl proc env - add extern environ - missing from src file 2019-03-01 10:05:55 +00:00
Carsten Haitzler 4ac0ebe95d ecore - remove environ lock that isn't used anymore
bu5hm4n forgot to remove this when doing his env class changes -
remove it as its unused now.
2019-03-01 10:03:48 +00:00
Cedric BAIL 3971106c1a ecore: remove Efl.Container_Model_Item.
This also enable to create a tree of Container_Model instead of just one level.

Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8046
2019-02-28 13:59:50 -08:00
Lauro Moura c3ed0791a6 efl-csharp: Fix variable generation for Roslyn
Summary:
Mono's old compiler (mcs) accepts LL as suffix for longs while Roslyn
(csc) is strict, allowing only a single L.

Test Plan: Run tests

Reviewers: vitor.sousa, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8061
2019-02-28 17:20:53 -03:00
Cedric BAIL 7bd3942e23 ecore: prevent duplication of children for Efl.Composite_Model and enable dummy object.
This patch allow Efl.Composite_Model to return always the same object for the same index.
This way, it make it easier for the Model to always be in sync even if there is multiple
user at any time. The support for dummy object allow the Composite_Model to host more
object than what the source model provide. This dummy model will only have the property
of the Composite_Model and none of the Source model ofcourse.

Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D8045
2019-02-28 11:39:46 -08:00
Daniel Kolesa 4b1622b5fc eolian: remove support for inlist/inarray
This feature was kind of ill-conceived and never worked properly.
Since there isn't enough time to make it work right at this point
and there are no users of it in the API, remove it for now.

It might get added in the next release cycle, in a proper form.

@feature
2019-02-28 20:28:24 +01:00
Mike Blumenkrantz 66bb52c8ca efl.access.object: iconified -> minimized
Summary:
be consistent with efl.ui.win usage
Depends on D8044

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Differential Revision: https://phab.enlightenment.org/D8054
2019-02-28 16:50:55 +01:00
Mike Blumenkrantz 3984f58fd9 efl.ui.win: iconified -> minimized
Summary:
minimize is a commonly used term in the current year. iconify is not.

ref T7511

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7511

Differential Revision: https://phab.enlightenment.org/D8044
2019-02-28 16:49:57 +01:00
Xavi Artigas 7269fdc1e2 eolian_mono: Generate proper doc refs for Constants
Summary:
Support for global constant variables has been recently added to the C# bindings.
This patch fixes doc references so they use the proper name.
This brings the mono doc warnings from 71 down to 29.

Depends on D8048

Test Plan:
Just build and see less doc warnings when building the C# bindings.
Also, doc refs to constants are links now.

Reviewers: lauromoura, vitor.sousa

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8051
2019-02-28 16:40:04 +01:00
Mike Blumenkrantz d2e6d33485 interfaces: don't inherit efl.ui.layout anymore
Summary: this removes efl.file from the class hierarchy

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_api

Differential Revision: https://phab.enlightenment.org/D8042
2019-02-28 16:33:11 +01:00
Lauro Moura bf4280e915 efl-csharp: Remove generated inlist/inarray support
Summary: To be added again in a later release after rework in Eolian

Reviewers: q66, vitor.sousa, felipealmeida

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8056
2019-02-28 12:21:56 -03:00
Marcel Hollerbach 3555029f9f eolian_gen: fix generation of legacy class functions
we forgot to generate the legacy function. This no now added back.

ref D8029

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D8037
2019-02-28 16:11:52 +01:00
Vitor Sousa f78be36dfe efl_csharp: add constant variable generation to C# binding (constants)
Reviewers: lauromoura, q66, bu5hm4n, zmike, cedric, felipealmeida, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl_language_bindings

Differential Revision: https://phab.enlightenment.org/D8048
2019-02-28 12:05:36 -03:00
Mike Blumenkrantz bba6339cc4 efl.ui.widget: mark scroll_* methods @beta
Summary:
these are questionable at best here

ref T7553, T7714

Reviewers: woohyun

Reviewed By: woohyun

Subscribers: cedric, #reviewers, #committers

Tags: #efl_api

Maniphest Tasks: T7714, T7553

Differential Revision: https://phab.enlightenment.org/D8055
2019-02-28 23:48:27 +09:00
Daniel Kolesa 535da54dac elua: fix typo in eolian bindings 2019-02-28 14:56:44 +01:00
Marcel Hollerbach f76d04683b elm_popup: remove on_show_region_set call
Summary:
Its hard to say why removing such calls are fixing a bug like T7274.
However, it appears that this call causes the min size calculation of
evas to fall apart. This also removes a workarround introduced earlier
to fix this.

This fixes T7274

Reviewers: zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7274

Differential Revision: https://phab.enlightenment.org/D8043
2019-02-28 08:48:37 -05:00
Vincent Torri 8a7cb97e02 Eina: implement strtod in C locale and remove linkl against msvcr100.
Summary:
This fixes compilation on Windows

More precisely edje_cc could not compile emotion edc files, so it was a runtime problem
because of msvcr100 link.

Add more tests than before

Test Plan: compilation

Reviewers: raster

Subscribers: zmike, stefan_schmidt, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7926
2019-02-28 14:36:42 +01:00
Lauro Moura 5861aad185 eina: Declare eina_config.h install dir
Meson from git complains if `install` is set but not `install_dir`.

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D8036
2019-02-28 13:32:25 +01:00
Carsten Haitzler b9049925f3 evas gl - swap with damage - look for KHR extn string too
as per shortlog - look for KHR in addition to EXT for swap with damage
region extn detection.
2019-02-28 11:14:56 +00:00
Lauro Moura 73cbc48669 eolian: Fix struct database registration.
Summary:
It was mistankely swapping regular and inlist structs when registering
after parsing, causing functions like eolian_state_structs_by_file_get
to return wrong data, breaking C# bindings.

Also added a simple test.

Reviewers: q66, bu5hm4n, zmike, cedric, felipealmeida, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8047
2019-02-28 12:01:31 +01:00
Stefan Schmidt a405a116c1 eina: safe guard against macro expension error in EINA_*_EQ
Make sure we are use doubel also also in things like EINA_DBL_EQ(a-b, x+y).
Thanks to Vicent for reporting and Xavi for giving me context.

Reviewed-by: Vincent Torri <vincent.torri@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8049
2019-02-28 10:22:16 +01:00
Daniel Kolesa 53a80761db eolian: properly skip the struct keyword in inlist structs
This was missed as a part of an incorrect merge.
2019-02-28 01:08:27 +01:00
Daniel Kolesa a9360222b0 eolian: add support for inlist structs
This adds support for inlist structs, a special type of struct
that can only be used with inlists. This differs from regular
structs in a couple ways:

1) They are stored separately. Just like structs, enums, aliases
   have their own storage, so do inlist structs.
2) They can't be @extern, nor they can be opaque.
3) They are their own type of typedecl.
4) When they contain only one field, this field must be a value
   type always, cannot be a pointer.

Like regular structs, they can have arbitrary fields, and they
can have a pre-set free function via @free().

In C, the inlist structs will be generated exactly like ordinary
ones, except they will have EINA_INLIST before the first field.
Other binding generators can deal with them as they wish, for
example to provide high level interfaces to them.

This does not yet do the plumbing necessary to hook these into
the type system, nor it adds generator support.

@feature
2019-02-28 00:52:14 +01:00
Mike Blumenkrantz 0e027980f6 tests: add test for elm_layout_text_set
Summary: ref T6931

Reviewers: stefan_schmidt, cedric

Reviewed By: cedric

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T6931

Differential Revision: https://phab.enlightenment.org/D7603
2019-02-27 16:04:07 -05:00
Mike Blumenkrantz 649433560b efl_ui_layout: check part existence in text_set
Summary: fix T6931

Reviewers: bu5hm4n, cedric, segfaultxavi

Reviewed By: bu5hm4n

Subscribers: #reviewers, #committers

Tags: #efl_widgets

Maniphest Tasks: T6931

Differential Revision: https://phab.enlightenment.org/D7888
2019-02-27 16:03:50 -05:00
Yeongjong Lee 4628021fe5 efl_container: remove content_remove
Most of classes implements Efl.Container.content_remove are just calling "unpack"
except of "Efl.Canvas.Layout" and "Efl.Ui.Layout".
This patch remove the asymmetrical API and add content_remove API of
"Efl.Canvas.Layout" and "Efl.Ui.Layout" that child can be remove without efl_part
APIs.

ref T7576

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D7913
2019-02-27 21:20:33 +01:00
Wonki Kim 7bda677eb0 meson: modify install path of bqmgr binary
bqmgr is installed under ${libdir}/ecore_buffer/bin/ on autotools.
and it's not on meson.

this patch modify the install path on meson to a place that autotools installs outputs under
and this contains file name of binary also

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7836
2019-02-27 21:20:31 +01:00
Wonki Kim b37c72a95a meson: modify install pathes for modules of ecore_buffer
there are differences between meson and autotools.
autotools installs them under ${libdir}/ecore_buffer/modules/module/version/ as module.so

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7837
2019-02-27 21:20:30 +01:00
Marcel Hollerbach 120e247fa0 efl_canvas_layout_part_external: implement missing functions
Summary:
this just prints a error, manipulating the content here is not
permitted. As it is created by edje externals, which are owned by edje.

ref T5719
Depends on D7757

Reviewers: cedric, zmike, segfaultxavi

Reviewed By: zmike

Subscribers: q66, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5719

Differential Revision: https://phab.enlightenment.org/D7759
2019-02-27 14:57:03 -05:00
Yeongjong Lee e4e5b5a349 test/ui_table: add unittest for Efl.Ui.Table
Summary:
{F3627728}
{F3627729}
ref T5487

Depends on D7892

Test Plan: make check

Reviewers: jpeg, Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5487

Differential Revision: https://phab.enlightenment.org/D7840
2019-02-27 14:45:34 -05:00
Yeongjong Lee 138fa4eeaa ui.table: implement homogeneous mode
Summary:
Homogeneous mode means children are of the same weight and of the same min size
which is determined by maximum min size of cells.

Depends on D7841

Reviewers: Jaehyun_Cho, jpeg, zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7892
2019-02-27 14:45:32 -05:00
Yeongjong Lee 5572000f1a efl_ui_table: refactor layout_update
Summary:
There are three reasons to refactor layout_update of Efl.Ui.Table.

=== 1. Inconsistency of hint behavior. ===

Some hint property is often not respected. for example, hint_min is ignored in
Table when it is used with hint_max even if hint_weight is 0. hint_aspect is
always ignored in Table.
The ambiguous behavior make it hard to layout widgets in container. of course,
we documented 'it's just a hint that should be used whenever appropriate.' but i
don't think it means that 'hint API is sometimes respected and we also don't
know when that API is respected.'. at least there is rule for consistent
behavior and we should be able to explain why a widget is located here and
why some hint property is ignored.

So, i'll suggest priority of hint property. this refactoring support following
priority.
1) HintMin
2) HintMin + HintAspect
3) HintMargin
4) HintMax
5) HintAspect
6) HintWeight, HintFill
7) HintAlign

ref T5487
Please check with unit test D7840

=== 2. To Enhance usability. ===

Efl.Ui.Table is using homogeneous mode of evas_table which have same columns,
rows size. but i think a table can generally change columns, rows size and
we can provide homogeneous mode option.(D7892)

In this patch
 - table columns(rows) min size is decided by maximum size among its cells
width(height) min size.
 - table columns(rows) weight is decided by maximum weight among its cells
horizontal(vertical) weight.

Also, pack_align is implemented. it is used if no item has a weight.

=== 3. To remove internal evas_table. ===

This is low priority work. however, i guess is is necessary for lightweight
container widget. there are two size_hint callback to adjust table size and
efl_canvas_group_calculate is called twice when it is resized.
This patch is first step to remove internal evas_table.

Test Plan:
make check
elementary_test -to 'efl.ui.table'

Reviewers: jpeg, Jaehyun_Cho, zmike

Reviewed By: zmike

Subscribers: zmike, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T5487

Differential Revision: https://phab.enlightenment.org/D7841
2019-02-27 14:45:27 -05:00
Marcel Hollerbach 665f8877e9 efl_ui_widget: child_can_focus is not needed anymore
summary_:
pd->logical.child_count is a counter where focusable children do
register themself in the parent if they can be focused or not. With this
we don't need the updating of this internal flag nor the flag itself anymore.

Depends on D8027

Reviewers: woohyun, cedric, Jaehyun_Cho, zmike, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es>
Differential Revision: https://phab.enlightenment.org/D8030
2019-02-27 20:19:31 +01:00