Commit Graph

2765 Commits

Author SHA1 Message Date
Stefan Schmidt 300b1993d8 meson: edje: setup edje_codegen for cross-builds as well
We had it all setup for edje_cc, but missed edje_codegen which is used
in the examples.

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7963
2019-02-27 11:31:46 +01:00
Marcel Hollerbach 422ee8d323 efl_canvas_object: get rid of event_animation set/get
the API is a little bit problematic. The API takes events as an
parameter. However, only the hide and show events can be used, because
move for example is not intercepted, which leads to a situation that you
cannot attach a translation animation to the event. Further more,
handling the animations directory instead of pipeing them through events
seems to be a little bit easier as the case study of the previous events
have shown. Further more, we should never ever overwrite the
callback_call function of a eo base object, those methods are an
incredible hotpath, by the time we would have 1-2 animations on a
object, the event submission would be significetly slowned down.

ref T7555

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8009
2019-02-25 10:37:40 +01:00
Lauro Moura 7943a69b0d efl-csharp: Add support for containers in events.
Summary: Using a simple wrapper as event parameters are not ownable.

Reviewers: vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7981
2019-02-22 14:07:24 -03:00
Marcel Hollerbach a6d256cb6a build: fix macos build
Summary:
it the .pc file of luajit carries linker flags that causes compilation
fails on macos, thus we need to split up the .pc file into our own
dependency, and use it with causion

Reviewers: zmike, cedric, segfaultxavi

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7995
2019-02-22 08:53:20 -05:00
Jaehyun Cho 125b5c3191 test_ui_relative_layout: fix maybe-uninitialized warning
Warning, which 'text' may be used uninitialized, is fixed.
2019-02-22 20:00:14 +09:00
Yeongjong Lee 3118bfc34b efl_ui_relative_layout: introduce new relative container
Summary:
Efl.Ui.Relative_Layout is a container which allows you to position and size with
relation to each other.
it is possible to position and size using relation like edje even though
you don't know a edc script.
Position and size can be changed dynamically using widget APIs.

@feature

ref T5487

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

Reviewers: cedric, Hermet, Jaehyun_Cho, zmike, bu5hm4n, jpeg, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, kimcinoo

Tags: #efl

Maniphest Tasks: T5487

Differential Revision: https://phab.enlightenment.org/D7524
2019-02-22 19:47:47 +09:00
Mike Blumenkrantz a08570fdae api: rename efl.gfx.entity geometry events and add geometry data to those events
the convention for event naming is to use $property,changed where possible
and to always emit related data with the event to reduce function calls

ref T7558

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7987
2019-02-22 10:09:46 +01:00
Mike Blumenkrantz af7d1ef7ed interfaces: move animator,tick to efl.canvas.object and remove efl.animator
Summary:
this interface only contains a single event which is implemented only by the
canvas object

ref T7561

Reviewers: cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7561

Differential Revision: https://phab.enlightenment.org/D7905
2019-02-21 22:04:30 +01:00
Cedric BAIL b23f65291f eo: make reflection setter able to return an error code in case of failure.
Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7935
2019-02-21 11:54:09 -08:00
Wonki Kim 56a91961ce meson: add a option for selecting lua interpreter
this patch is for selecting lua interpreter such as luajit, lua51
and in addition, little more changes to unify lua dependency over efl

Reviewed-by: Marcel Hollerbach <marcel-hollerbach@t-online.de>
Differential Revision: https://phab.enlightenment.org/D7564
2019-02-21 20:49:00 +01:00
Xavi Artigas bb303d6ec5 elementary_test: fix meson build after renaming efl_gfx_map to mapping 2019-02-21 19:27:59 +01:00
Xavi Artigas 220f17ee8d Rename Efl.Gfx.Map -> Efl.Gfx.Mapping
Summary:
For clarity, since there are all kinds of maps, including a navigation map
widget.
Also, corrected some misspellings.

Test Plan: make && make check && make examples all work

Reviewers: cedric, zmike, bu5hm4n

Reviewed By: cedric

Subscribers: Jaehyun_Cho, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7564

Differential Revision: https://phab.enlightenment.org/D7974
2019-02-21 19:20:09 +01:00
Mike Blumenkrantz e4b98a243b api: efl.gfx.hints.change,size,hints -> efl.gfx.hints.hints,changed
Summary:
this is consistent with other "changed" event naming

ref T7563

Depends on D7977

Reviewers: segfaultxavi, cedric, bu5hm4n

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7563

Differential Revision: https://phab.enlightenment.org/D7978
2019-02-21 18:46:36 +01:00
Mike Blumenkrantz f886941b11 api: efl.gfx.size_hints -> efl.gfx.hints
Summary:
these hints are not strictly size-related, so renaming them is more consistent
with their actual function

ref T7563

Depends on D7968

Reviewers: segfaultxavi, cedric, bu5hm4n

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7563

Differential Revision: https://phab.enlightenment.org/D7977
2019-02-21 18:43:12 +01:00
Daniel Kolesa b6b7317f4e eolian gen: generate a separate file with legacy implementations
If legacy implementations are generated, eolian_gen now creates
a separate file for them and includes it. The file name convention
for that is <.c file name without ext>.legacy.<.c file name ext>
or <.c file name>.legacy.c if it has no ext, so for example
foo.eo.c becomes foo.eo.legacy.c and foo becomes foo.legacy.c.

The file is generated assuming there are any legacy APIs contained
inside the .eo file.
2019-02-21 16:52:40 +01:00
Daniel Kolesa e335663da0 eolian gen: emit doxygen references to constants in uppercase
Since these are made into macros in C, they get uppercase names.
Reflect this in documentation generation.

Fixes T7691.
2019-02-21 12:14:33 +01:00
Marcel Hollerbach 2c259edd9f meson: add the elementary examples to the build 2019-02-21 08:56:13 +01:00
Xavi Artigas a152ba6d5b mono-docs: Add <value> tags to properties
eolian_mono now generates properties (which simply wrap the setter and getter
methods when both ara available), but they were missing docs, because
properties require a special <value> tag instead of <returns> or <param> which
we are already implementing.
This commit adds <value> tags only if docs can be retrieved from the setter or
the getter methods.
2019-02-21 08:56:13 +01:00
Daniel Kolesa 8952c05ddd eolian gen: initial support for reflection api
This adds support for generating reflection functions for
properties. This support is basic for now, supporting only
primitive types and string(shares), it will be expanded later
as required.

@feature
2019-02-15 17:17:15 +01:00
Xavi Artigas c2adefd7f2 Efl.Gfx.Stack: Rename raise and lower
Summary:
to move_to_top and move_to_bottom since the previous names seemed to indicate
that the object only moved one step instead of all the way through the top
or the bottom of the stack.

Ref T7560

Test Plan: make && make check && make examples work as before

Reviewers: cedric, zmike

Reviewed By: zmike

Subscribers: kimcinoo, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7560

Differential Revision: https://phab.enlightenment.org/D7934
2019-02-14 08:57:22 -05:00
Jaeun Choi e39c710858 test/efl_ui_pager: add NULL checking after calloc() function 2019-02-14 16:10:15 +09:00
Xavi Artigas 19fcd6e60f eolian: allow tagging complete classes as BETA
Summary:
This allows using the @beta tag in classes, like this:
class @beta Efl.Foo extends Efl.Bar { ... }

This will surround the class definition in the .eo.h file with an
EFL_BETA_API_SUPPORT #define, equivalent to tag every method and
event with @beta.

Test Plan: Nothing changes since no class uses this tag yet

Reviewers: q66, bu5hm4n, zmike

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7933
2019-02-13 18:48:02 +01:00
Xavi Artigas 6b7346b7b2 Remove individual class BETA guards
Summary:
Eolian adds a per-class BETA guard (like EFL_UI_WIN_BETA) to any method tagged
as @beta. This means that any app (and the EFL code) wanting to use BETA features
has to enable them class by class, which is cumbersome.
This commit replaces the individual guards with the global EFL_BETA_API_SUPPORT
guard, so apps only need to define one symbol to access BETA features.

Any usage of the per-class guards has been removed from the EFL code and examples.
When building EFL the global guard is defined by configure, so all EFL methods
already have access to BETA API.
Efl_Core.h and Efl_Ui.h no longer define EFL_BETA_API_SUPPORT. Apps wanting to
use BETA API have to define this symbol before including any EFL header
(It has been added to the examples requiring it).

Test Plan:
make && make check && make examples still work, but there's a lot less #defines
in the code

Reviewers: zmike, bu5hm4n, q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T6788

Differential Revision: https://phab.enlightenment.org/D7924
2019-02-13 18:09:17 +01:00
Marcel Hollerbach 46885653bc eo: remove class functions from eo
As in the previous commit explained, we want to get rid of class
functions in eo, and make them just c functions right away.

This commit removes the class parameter from the eo_class_function_set
call, and adjusts the tests to not depend on class functions anymore.
Class functions are now not tested anymore, tests that used them as a
way to test *things* are adjusted to test them now with object
functions, tests that just tested the working of class functions are
dropped.

This fixes T7675.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7902
2019-02-13 16:59:59 +01:00
Marcel Hollerbach 37d2d378ec eolian: drop class function overriding
Until this commit eo did class functions as part of the vtable, which
enabled those functions to be overwritten in classes inheriting another
class. However in task T7675 we decided that this is not really good for
bindings, as most OOP languages do not support this sort of feature.

After this commit eolian realizes class function completly outside of
the vtable, the c-symbol that is the class funciton is now just directly
redirecting to a implementation, without the involvement of the vtable.

This also means a change to the syntax created by eo:

Calling before:
  class_function(CLASS_A);
Calling after:
   class_function();

Implementation before:
   class_function(const Eo *obj, void *pd) { ... }
Implementation after:
   class_function(void) { ... }

This fixes T7675.

Co-authored-by: lauromauro <lauromoura@expertisesolutions.com.br>

Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7901
2019-02-13 16:59:58 +01:00
Lauro Moura 9277586fd8 efl-csharp: Fix self in iface concrete functions
Summary:
It was mistakenly being called as static functions.

Fixes T7619

Test Plan: See attached testcase.

Reviewers: segfaultxavi, bu5hm4n, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7619

Differential Revision: https://phab.enlightenment.org/D7904
2019-02-11 16:59:10 -02:00
Marcel Hollerbach 0709bdea6f eo: change API call of efl_class_functions_set
The next commit will bring support for something like reflection. This
commit prepares the whole tree for getting another argument in
efl_class_functions_set.

ref T7681

Differential Revision: https://phab.enlightenment.org/D7882
2019-02-07 14:43:25 +01:00
Lauro Moura 9bea248d3c efl-mono: Remove uneeded declaration from classes.
Summary: The constructing method is not used anymore after D7789 landed.

Test Plan: run tests

Reviewers: segfaultxavi, felipealmeida, vitor.sousa

Reviewed By: segfaultxavi, vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7875
2019-02-06 19:52:45 -02:00
Daniel Kolesa 347f096bf7 eolian_gen: add support for header-only depfiles
By default, dependency files are now generated only for headers.
This makes sense for the C generator and our dependency tracking
needs. If full dependencies are needed, there is now the 'D'
output, which has the old behavior.
2019-02-06 14:31:23 +01:00
Felipe Magno de Almeida 0223bb29df eolian-mono: Provide constructor parameters based on the constructors
section of the Eo files.

Reviewers: woohyun, segfaultxavi, bu5hm4n, felipealmeida

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7789
2019-02-01 14:03:02 -05:00
Xavi Artigas c55299ca51 docs: Fix assorted typos in legacy documentation
Samsung reported a long list of typos in our legacy docs, this fixes them.
2019-01-28 13:14:20 +01:00
Yeongjong Lee 3731398622 edje_cc: check return value of fseeks
Reviewers: Jaehyun_Cho, zmike

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7796
2019-01-28 17:26:09 +09:00
Yeongjong Lee 99930c1a59 epp: fix correct parameters for cpp_error_with_line
Reviewers: zmike, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7795
2019-01-28 17:15:34 +09:00
junsu choi bc4b78be12 efl_ui_pager : Add missing meson config for pager test.
it occur to build fail in meson build.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7768
2019-01-25 09:49:50 +01:00
Stefan Schmidt 41977fd19e Revert "Revert "efl_ui_pager: add tests for efl_ui_pager""
This reverts commit a686b7d9fe.

Turns out in my eagerness to un-break the build I did not check the
patch queue before reverting. If I would have done this I would have
seen the fix for the break alreay being submitted by Junsu Choi.

This is my bad, the two reverts could have been avoid. Sorry.
Note to self: give yourself a moment, and check the patch queue, before
rushing out a revert. :/
2019-01-25 09:49:49 +01:00
Stefan Schmidt a686b7d9fe Revert "efl_ui_pager: add tests for efl_ui_pager"
This reverts commit 0b79064f4c.

Appreciating the new tests but they are breaking the meson build.

/usr/bin/ld: src/bin/elementary/aea5856@@elementary_test@exe/test.c.o: in function `my_win_main':
test.c:(.text+0x501e): undefined reference to `test_ui_pager'
/usr/bin/ld: test.c:(.text+0x504d): undefined reference to `test_ui_pager_scroll'
collect2: error: ld returned 1 exit status

Once the meson build break is fixed this could go in again.
2019-01-25 09:32:46 +01:00
Jaeun Choi 0b79064f4c efl_ui_pager: add tests for efl_ui_pager 2019-01-25 14:32:26 +09:00
Marcel Hollerbach bb673d3f70 eolian: add support for the container array
this fixes a lot of different warnings in the efl_mono test generation.

Reviewed-by: Daniel Kolesa <daniel@octaforge.org>
Differential Revision: https://phab.enlightenment.org/D7730
2019-01-23 16:43:04 +01:00
Carsten Haitzler c7449e097b evas gl - fix patch that fixed warnings that then broke evas gl tests
even though it was reviewed... 8a617fda97
broke the evas gl tests. this fixes that.
2019-01-19 19:30:18 +00:00
Felipe Magno de Almeida 50c41b1100 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
2019-01-18 14:06:16 +01:00
Mike Blumenkrantz c7e29cd1c1 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
2019-01-17 15:11:26 -05:00
Lauro Moura 586bc5207e 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
2019-01-17 21:45:49 +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
Christopher Michael bff4c35322 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
2019-01-16 11:17:15 -06:00
Christopher Michael 6c8ab3fabc 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
2019-01-16 11:17:13 -06:00
Marcel Hollerbach 5a11fd8587 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
2019-01-16 14:40:13 +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
Carsten Haitzler ae6a26b8ed efreet - fix warnings on windows to do with size casting
no actual bug - just warnings
2019-01-15 12:26:42 +00: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
Jaehyun Cho 81317305e0 efl_mono: remove '_' from type for C# naming convention
Summary:
"type" in .eo is converted to "struct" in .eo.cs.
Since the type name in .eo is the same with the struct name .eo.cs,
'_' is removed from the converted struct in .eo.cs for C# naming
convention.

For example, Efl.Callback_Priority is defined in efl_object.eo and
the name is converted to Efl.CallbackPriority in efl_object.eo.cs.

Efl.Access.StateSet in workaround.cs causes duplicated definition
with this patch so Efl.Access.StateSet in workaround.cs is removed.

Test Plan: Compile with autogen.sh --enable-csharp-bindings

Reviewers: lauromoura, segfaultxavi, felipealmeida

Reviewed By: felipealmeida

Subscribers: segfaultxavi, cedric, #reviewers, #committers, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7597
2019-01-14 15:36:14 +09:00
Lauro Moura c998af19fc efl-csharp: Temporarily blacklist forwarder function.
Depends on support for constants that will come with T7506
Differential Revision: https://phab.enlightenment.org/D7596
2019-01-11 11:40:35 +01:00
Stefan Schmidt edfa0f44fd meson: elm: add pie and fPIC cflags and ldflags to elm binaries
My use case here is having elementary_test being loaded by exactness.
That has been working fine with our autotools based build system but no
longer with meson.

Bringing fPIC and pie back as options allows exactness to dlopen the
binary and work again.

Differential Revision: https://phab.enlightenment.org/D7587

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
2019-01-10 19:44:01 +01:00
Lauro Moura a5b338ded3 cxx: Add class get name attribute.
Summary:
C# generator was mistakenly reimplementing it assuming everything was
*_class_get.

Test Plan: run cxx/csharp tests

Reviewers: felipealmeida, cedric, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7522
2019-01-10 12:47:58 +01:00
Carsten Haitzler 96ce456e19 ledbus - fix codegen to not conflict keys with eldbus inyternal
__proxy is used, so use __user_proxy in generated code... this lead to
crashes with the music-control module because itused the codegen for
the introspected api and this generated code that messed with
internally used keys.
2019-01-09 18:57:22 +00:00
Xavi Artigas 9b1cc1d80a efl-mono: automatic code refs for event wrappers docs
Summary:
Event wrappers have a comment saying:
///<summary>Event argument wrapper for event XxxEvt</summary>"

This patch simply adds a link to that comment:
///<summary>Event argument wrapper for event <see cref="Fully.Qualified.XxxEvt"/></summary>"

Test Plan: Generate the C# files and enjoy fully-linked doc comments for event wrappers.

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7525
2018-12-28 17:47:47 +01:00
Carsten Haitzler b03c818b1c meson - dont install eina bench cmp and use install_mode 2018-12-27 17:17:13 +00:00
Carsten Haitzler f532be51bc meosn - fix install of scripts and bins and their timestamps and modes
i was comparing the bindir results of aurtofoo vs meson and some
things were missing/poking out at me. this makes them be in sync -
install the ewl_wl+test obnaries, ensure to chmod +x+r etc. scritps
AND install them
2018-12-27 15:24:08 +00:00
Xavi Artigas 47728f0c89 efl-mono: Remove trailing () from doc references
Summary:
Some EO docs include () after a @method reference (some don't).
When the method reference is redered by DocFX it already includes
the trailing parenthese (and it even includes the parameter types),
so it looks very weird: Efl.Gfx.Stack.Raise()()

This patch removes the "()" string from any text comment following
an @ reference.

Test Plan:
Check DocFX docs for Efl.Gfx.Stack.Lower before and after this patch.
There are references to other methods which include the double parentheses.

Reviewers: lauromoura

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7504
2018-12-21 18:02:29 +01:00
Lauro Moura 8fa3f39e31 efl-mono: Remove warnings
Test Plan: run tests

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7501
2018-12-21 16:09:37 +01:00
Xavi Artigas c84580cc05 doc: Turn comments from EO to C# XML syntax
Summary:
This allows them to be nicely rendered by IDEs and automatic
documentation generators like DocFX.
The conversion includes things like turning $name to <c>name</c>
or solving references to objects, which in turn requires converting
from EO object names to C# names.

It uses the same helper methods used to generate the C# object names,
so if these change in the future, the references in the comments
will change too.

Additionally, this patch fixes some minor bugs, like <para> tags
outside <summary> tags, misspelled <returns> tags or missing <returns>
documentation for getter methods.

Fixes T7453

Reviewers: lauromoura, vitor.sousa

Reviewed By: lauromoura

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7453

Differential Revision: https://phab.enlightenment.org/D7467
2018-12-21 14:52:49 +01:00
Marcel Hollerbach e43f090265 cmake: remove!
This build was never complete and also was not maintained probebly.

It is also dropped in favour of meson which is cool, merged, works & is fast.

Differential Revision: https://phab.enlightenment.org/D7010
2018-12-20 20:07:26 +01:00
Woochanlee d9a222ecf5 Intruduce Efl.Ui.Panel (Create Efl Ui Widget from elm widget(elm_panel))
Summary: Create Efl Ui Widget from elm widget(elm_panel)

Test Plan: elementary_test -> efl_ui_panel

Reviewers: woohyun, Jaehyun_Cho, segfaultxavi

Reviewed By: Jaehyun_Cho, segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7238
2018-12-20 11:32:28 +09:00
Jérémy Zurcher 8a617fda97 silence most left over compiler warnings
Summary: silence -Wshadow -Wunused-variable -Wunused-parameter

Reviewers: segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7473
2018-12-18 13:08:01 +01:00
Marcel Hollerbach 42a23d1afa build: remove unused meson file
this was added by accident

Differential Revision: https://phab.enlightenment.org/D7469
2018-12-17 17:43:06 +01:00
Jaehyun Cho 01864e166b eolian_mono: use System.Type explicitly
Previously, "Type" was used with "using System".
However, it caused ambiguity if some classes had "Type" property.

Therefore, "System.Type" is used explicitly to remove ambiguity.
2018-12-17 19:38:45 +09:00
Marcel Hollerbach dfc9cd8a67 elm_focus: implement elm_object_focus_next_item_set / get
you can use this now to let the focus move to the widget container of
the passed item.

I know this patch contains a whitespace change, but i have to get out
this whitespace each & every time i am editing the file - which is
annoying. So remove it once, which makes further work easier.

fixes T6183.

Reviewed-by: YeongJong Lee <yj34.lee@samsung.com>
Differential Revision: https://phab.enlightenment.org/D7408
2018-12-17 09:12:22 +01:00
Lauro Moura 9603cc07eb efl-mono: Fix call of virtual methods after new API
Summary:
After the new API, the virtual wrapper classes (*NativeInherit) just
declared the wrappers for the current class. But as they didn't have any
inheritance information, reimplementing methods from a parent Eo class
wouldn't work. (e.g. Efl.Ui.Button reimplementing Efl.Object
FinalizeAdd).

This commit changes these NativeInherit classes to mimic the inheritance
chain of their regular/abstract counterparts, reusing the virtual
wrapper implementations.

In order to access the correct Eo class created, the methods on it were
changed from static to instance methods. The instance will be held as a
class member of the regular/abstract API class to keep the delegates
alive and allow getting C Function pointers from them.

The class_initializer method was also split in two. The method
collecting the wrapper delegates was extracted in order to call the
parent ones.

Also avoid exception in cached strings queries as TryGetValue requires
non-null keys.

Test Plan: Run test suite.

Reviewers: vitor.sousa, felipealmeida

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7460
2018-12-14 20:47:46 -02:00
Lauro Moura a83c3cdba4 eolian_mono: Add support for C# style properties
Summary: Syntatic sugar around the Get/Set functions for now.

Test Plan: Run efl-mono-suite

Reviewers: vitor.sousa, segfaultxavi, felipealmeida, Jaehyun_Cho

Reviewed By: vitor.sousa

Subscribers: cedric

Tags: #efl_language_bindings

Differential Revision: https://phab.enlightenment.org/D7394
2018-12-14 18:30:59 -02:00
Marcel Hollerbach 500a36ba3d meson: add inital support for windows compilation
Differential Revision: https://phab.enlightenment.org/D7416
2018-12-07 13:05:31 +01:00
Marcel Hollerbach 79ded15ad3 meson: enable cross compiling
the inital work for this commit was coming from `Mark van der Putten`.
In order to not have more options for this, the idea came up to use
mesons autodetection using PATH.

If a cross file is specified, the binaries are used from the system,
rather than from the intree. (Which means --cross-file has the
dependency of efl on the buildsystem)

Differential Revision: https://phab.enlightenment.org/D7415
2018-12-07 13:05:31 +01:00
Marcel Hollerbach 5b98ebab4a meson: abstract edje_cc exec lines
the array is calling the shell etc. this makes cross building easier.

Differential Revision: https://phab.enlightenment.org/D7413
2018-12-06 15:13:34 +01:00
Alastair Poole 29c388a35b efl: fix misspelt focused in API and documents.
Fix spelling in elm_code API and other documents too where this occurs.
Differential Revision: https://phab.enlightenment.org/D7299
2018-12-06 15:11:17 +01:00
Daniel Zaoui 8ef82132f9 Tests: adapt some tests for Exactness
Home directory cannot be used for the tests as the shots will always be
different between machines.
A test directory is created to solve this issue.
2018-12-05 23:58:17 +02:00
Carsten Haitzler e1e5a9f259 elm test - button - remove unused local var warn 2018-12-04 08:40:35 +00:00
Marcel Hollerbach 80bdbc8b54 elm_scroller: update behaviour to match legacy behaviour more closely
This implements scrolling the scroller when the scroller is not in the
maximum position of the requested relation, but there is no more focus
object in that relation.

Summing up, the scroller is scrolled manually, when the focus object is
not fitting in the viewport, and the object is beeing out of the
viewport in the requested direction. Or the scroller is not at its max
position in the requested direction, and there is no more focusable
object in this requested direction.

ref T6804

Differential Revision: https://phab.enlightenment.org/D7382
2018-12-04 08:45:49 +01:00
Marcel Hollerbach 1ede2302d3 efl_ui_focus_manager_root_focus: ensure that adapter is part of viewport
This ensures that the adapter part is part of the viewport elements and
border elements. This is done in order to support cases where a
elm_scroller content is not focusable. Before the element was not
correctly in viewport, and so not correctly registered.

ref T6804

Differential Revision: https://phab.enlightenment.org/D7364
2018-12-04 08:45:49 +01:00
Marcel Hollerbach c1dd57d210 meson: use eolian_gen with -S
this ensures that eolian does not parse installed .eo files

Differential Revision: https://phab.enlightenment.org/D7405
2018-12-03 19:00:26 +01:00
Carsten Haitzler e2972420c1 elm perf tool - bring one back to efl
expedite is basically dead. because it's out of tree and because it
was ported to eo too early... but it's also not a great tool given it
requires manual addition of engines and can't test elm stuff (complex
widgets).

so this is an elm based performance tool. i've added some tests (taken
from expedite and modified a bit). to get the ball rolling. the idea
is to add all the important core tests (rects, images, text, video
etc.) and then add widget/smart object like tests that go beyond what
expedite did. the problem with these tests is they are dependent on
theme. there isn't really any way around that... but i might
categorize tests in the end.

@feature
2018-12-03 11:04:27 +00:00
Lauro Moura 3623753c1d csharp: Change to new class API.
Summary:
As discussed in T7204:

- Eo Interfaces/mixins -> C# Interfaces with concrete class
  implementations
- Eo Regular/Abstracts -> Proper C# classes
- Added some new generators and helper methods.
- Refactored the class generator, splitting into helper methods

Eo handles now are stored only in the "root" class in any given
inheritance tree (generally, Efl.Object), and accessible to each child.
Methods also are defined in a single place instead of repeatedly
generated in everyfile, reducing the size of the generated .dll from
30MB to around 4.5MB.

Mixins are generated as C# interfaces but any regular class it inherits
from is lost, as we can't have interfaces inheriting from regular
classes. This will be dealt with in a later commit.

Summary of API Changes:

- Merged Inherit/Concrete classes. (These suffixes disappear from
  regular classes).
- Interface still have implementations with 'Concrete' suffix for when
  they are returned from methods.
- Removed 'I' from interface names.
- Removed interfaces for regular/abstract Eo classes.
- Concrete classes for interfaces/mixins hold the event argument struct.
- Removed '_' from classes, enums, structs, etc, as indicated in C#
  naming conventions.
- Namespaces are now Camel.Cased.
- Renamed IWrapper's raw_handle/raw_klass to NativeHandle/NativeClass

Also renamed the test classes as after the namespace change, the
test namespace Test can conflict with the helper Test namespace.
(And use more meaningful names than Test.Testing...)

Also Fixes T7336 by removing a deprecated example and adding
efl_loop_timer_example to build system.

Fixes T7451 by hiding the class_get DllImports and renaming the IWrapper
fields. The native handlers are used in the manual binding.

Still need to work:

- As there are still some events names clashing (e.g. Efl.Ui.Bg with "resize"
  from Efl.Gfx.Entity and Efl.Gfx.Image), Events are currently declared on
  the interface and implemented "namespaced" in the classes,
  requiring the cast to the interface to access the event.
- The Mixin Conundrum. Mixin inheritance will be dealt in a future
  commit.

Depends on D7260

Reviewers: segfaultxavi, vitor.sousa, felipealmeida, Jaehyun_Cho

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7451, T7336

Differential Revision: https://phab.enlightenment.org/D7262
2018-11-29 21:29:48 -02:00
Hosang Kim c4ae2be685 efl_ui_scrollable: implement efl_ui_scrollable_content_pos_get method.
Summary:
Applications want to know current position on scroller.
Also, it is necessary when calculate position of focusable object.

Reviewers: herdsman, akanad, YOhoho, bu5hm4n

Reviewed By: bu5hm4n

Subscribers: bu5hm4n, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7251
2018-11-28 14:34:28 +09:00
Daniel Hirt 00c976971b Ui text: update text; use efl_text_set and not markup_set 2018-11-26 13:17:07 +02:00
Daniel Hirt 6c64b1ceb7 Ui text: update inputfield test to reflect theme and part changes 2018-11-26 13:17:07 +02:00
Daniel Hirt 552e7c041e Ui text: have "inputfield" example use the default theme values 2018-11-26 13:17:07 +02:00
Cedric BAIL 5de51f84fb eo: rename efl_future_Eina_FutureXXX_then in efl_future_then as this has been available for some time.
Reviewed-by: Vitor Sousa da Silva <vitorsousa@expertisesolutions.com.br>
Differential Revision: https://phab.enlightenment.org/D7327
2018-11-23 11:39:43 -08:00
Daniel Kolesa 14ce54c303 eolian: implement new inherit behavior
Eolian now separates 'parent' and 'extensions'. For regular
classes, parent is the first item in the inherits list and
extesions is the rest. For interfaces and mixins, parent is
NULL and extends is the inherits list.

The reason for this is the separation of them in syntax in near
future. It also slightly changes the behavior; since for interfaces
and mixins, parent is always NULL now, you can freely inherit from
all types of classes without needing to manually put an interface
type as the first item of the inherits list.
2018-11-23 13:57:07 +01:00
Jaehyun Cho f3eb8d6441 efl_interpolator: rename subclasses of Efl.Interpolator
Subclasses of Efl.Interpolator are renamed intuitively from backward
order to forward order.
2018-11-23 21:44:34 +09:00
Jaehyun Cho 0611620301 efl_ui_bg: remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget class
Summary:
Efl.Ui.Bg interface does not have any new property or method.
Moreover, Efl.Ui.Bg interface is not used by widgets except
Efl.Ui.Bg_Widget and Efl.Ui.Widget_Part_Bg.
Consequently, Efl.Ui.Bg interface can be replaced by other interfaces.

Due to Efl.Ui.Bg interface, the bg widget class name becomes
Efl.UI.Bg_Widget which is not synchronized with other widget names.

Therefore, to keep consistency with other widgets, it would be better to
remove Efl.Ui.Bg interface and rename Efl.Ui.Bg_Widget to Efl.Ui.Bg.

Reviewers: woohyun, segfaultxavi, bu5hm4n, zmike

Reviewed By: segfaultxavi

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7304
2018-11-20 10:24:05 +09:00
Jaehyun Cho d4526f44b8 elementary: rename Efl.Ui.Popup classes
Summary:
Efl.Ui.Popup classes are renamed intuitively from backward order to
forward order.

Efl.Ui.Popup_Alert        -> Efl.Ui.Alert_Popup
Efl.Ui.Popup_Alert_Scroll -> Efl.Ui.Scroll_Alert_Popup
Efl.Ui.Popup_Alert_Text   -> Efl.Ui.Text_Alert_Popup

Reviewers: segfaultxavi, bu5hm4n, cedric

Reviewed By: segfaultxavi

Subscribers: herb, SanghyeonLee, woohyun, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7292
2018-11-16 11:26:57 +01:00
Jaehyun Cho 2d460e52e4 elementary: remove Efl.Ui.Layout namespace
Summary:
Efl.Ui.Layout namespace is removed to keep consistency with other
widgets.
Consequently, "Efl.Ui.Layout.Object" is renamed to "Efl.Ui.Layout" and
"Efl.Ui.Layout." is renamed to "Efl.Ui.Layout_".

Reviewers: segfaultxavi, bu5hm4n, cedric

Reviewed By: segfaultxavi

Subscribers: #reviewers, #committers, SanghyeonLee, woohyun

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7291
2018-11-16 11:11:13 +01:00
Carsten Haitzler db3fe9b03f efreet mime cache - expand buffer to avoid truncation by snprintf 2018-11-09 12:18:59 +00:00
Carsten Haitzler 02105219a8 efreetd - warn - expand buffer to avoid truncation by snprintf 2018-11-09 12:18:59 +00:00
Carsten Haitzler c76ea749c1 embryo_cc - warn - bigger buffer to avoid truncation warning 2018-11-09 11:44:00 +00:00
Carsten Haitzler 8da330739c eeze mount tool - warn - fix prototypes used for ecore events 2018-11-09 11:44:00 +00:00
Carsten Haitzler a492851aed edje cc - warn - use correct free prorotype for has free func 2018-11-09 11:44:00 +00:00
Carsten Haitzler c7a22fb2c7 edje player - fix ridiculous use of srncat
another case of blind strncat usage rthat seemingly did a:

strcat(buf, str); -> strncat(buf, str, strlen(tr));

which is the most pointless thing to do ever. it's no better. it's
worse as it makes it harder to identify issues. thanks these days
compilers warn about this as a stupid thing to do... so i looked at it
and fixed it properly.

again - don't do this stuff above - it's pointless. patches that do
this should be rejected. fix it properly or leave it as-is.
2018-11-09 11:44:00 +00:00
Carsten Haitzler 882b1796d1 edje_cc - warn - fix buf truncation by snprintf by extending buffers 2018-11-09 11:44:00 +00:00
Carsten Haitzler f2e1116667 edje_cc - warn - fix free cb to be of right prototype
wrap by correctly typed func.
2018-11-09 11:44:00 +00:00
Carsten Haitzler 906183f2cd edje_cc_parse - use memcpy instead of strncpy as we are truncating
we mean it here so it's right - use memcpy as its equivalent without
warnings.
2018-11-09 11:44:00 +00:00
Carsten Haitzler 24b345bb53 edje_cc_parse - warn - make buffers bigger to avoid truncation 2018-11-09 11:43:59 +00:00
Carsten Haitzler 64190277ea eeze test - warn - fix ecore event callback prototypes 2018-11-09 11:43:59 +00:00
Carsten Haitzler b15772853c elm test config - ensure buffer does't get overfilled with lots of profs
the "let's use strncpy" brigade of course made sure to use it to "be
secure" and yet still overtflow the buffer... this is a perfect lesson
in DOP NOT USE strncpy unless you carefully think about the code and
get it right. i mean things like:

   strncat(buf, profiles[i], strlen(profiles[i]) + 1);

is blindly using strncpy ... and it's no better than strcpy, but mroe
complex and giving the illusion of "it's safe". pay attention to your
code people. please. thanks.
2018-11-09 11:43:59 +00:00
Carsten Haitzler 6359236420 elm quicklaunch - fix defines to handle no-environ case without warnings 2018-11-09 11:43:59 +00:00
Carsten Haitzler fdde914bac elm quicklaunch - warn - explicitly handle socket length being too long
make socket too long an error. fixes warning.
2018-11-09 11:43:59 +00:00
Carsten Haitzler b8b2253f85 elm prefs cc - warn - use memcpy instead since we are really truncating
fix strncpy warning... and use memcpy as we are explicitly truncating.
we mean it.
2018-11-09 11:43:59 +00:00
Carsten Haitzler 665a75378f xxx - fix eina_future_then calls to pass sotrage val - fix warns 2018-11-09 11:43:59 +00:00
Carsten Haitzler 9f63f356fc eolian - fix warnings about strin truncation by expanding buffers
fixes noisy warnings...
2018-11-09 11:43:59 +00:00
Carsten Haitzler 642fe42cfc eina - btlog - fix warnign about uninit struct field
sentinel should fill all members to null.
2018-11-09 11:43:58 +00:00
Daniel Hirt 26c1f2477c Ui text: port widget to new interfaces
This is a big rewrite. In addition to implementing functionality with
the new Efl interfaces, a lot of legacy (Elm) code was removed.

A lot of work is squashed in this patch as the widget would've been
completely broken otherwise.

The major changes are:

Life-cycle:
  - Code was split to have 'finalize'
  - Item anchors (emoticons, images) were rewritten to have proper
  life-cycle

Scrolling logic:
  - Efl.Ui.Internal_Text_Scroller widget was added, and replaces the old
  Elm.Interface_Scrollable implementation. Singe-line and multi-line
  modes were fixed as well as sizing calculations. The object is now
  swallowed inside the Ui.Text widget.

Copy and paste:
  - Code was converted to Efl.Selection logic.

Modified tests:
    elementary_test -to "efl.ui.text"
    elementary_test -to "efl.ui.text label"

Added tests:
    elementary_test -to "efl.ui.text inputfield"

Removed test:
    elementary_test -to "efl.ui.text.async"
2018-11-05 18:17:42 +02:00
Xavi Artigas edae5021bc efl-mono: Typos in generated code comments
These comments end up in the API reference docs, so typos look bad.
2018-11-05 11:14:37 +01:00
Marcel Hollerbach 4dfaf5729e codegen: ensure we include the filename and not the path
this mirrors the behaviour of eolian & eolian_cxx. Usally a generator
just generates the files side by side, the directory then needs to be
included anyways. thus adding the include with another subdirectory is
unusal.

Differential Revision: https://phab.enlightenment.org/D7235
2018-11-02 12:43:26 +01:00
Marcel Hollerbach e85311c992 meson: here comes cxx bindings
this commits is bringing cxx bindings.
You can enable / disable them with the cxx option.

Differential Revision: https://phab.enlightenment.org/D7181
2018-10-24 12:05:58 +02:00
Daniel Kolesa d82deea833 eolian gen: add generation of build dependencies
It is now possible to generate a separate .d file which will
contain Make-style dependencies for the files generated in that
batch, i.e. if you geerate header, legacy header and source, the
.eo.d file will contain dependency lists for those three.

It should be possible to integrate this into our build system to
enable proper regeneration of .eo files in an incremental manner.

Fixes T2251.
2018-10-24 12:02:43 +02:00
Daniel Zaoui fabfd2334e Meson: set vieet as executable
Summary: vieet is an installed executable and therefore should be executable by everyone

Test Plan: Check vieet permissions

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7184
2018-10-21 09:40:11 +03:00
Daniel Zaoui 2d2055edd7 Meson: link elementary_test with rdynamic
Summary:
This is needed to let dlsym extract the efl_main/main... symbols. For
example, the Exactness player needs it to launch a given binary. If
this option is not provided during the linkage of the binary, the
player won't be able to run it.

Test Plan: exactness_play -t <path to exactness scenarios>/radio.rec -- elementary_test -to radio

Reviewers: bu5hm4n

Reviewed By: bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7178
2018-10-21 09:38:25 +03:00
Marcel Hollerbach 52e0b8440b Revert "meson: add cxx bindings"
This reverts commit 5aaf2cbb5d.

The cxx bindings were accidently merged. Things are missing (like .eot.h
files)
2018-10-18 16:12:13 +02:00
Marcel Hollerbach 2643ce0aad build: move ELM_INTERNAL_API_ARGESFSDFEFC into buildsystem
the definition is now defined in the buildtools autools / meson. This
reduces the amount of warnings in meson.

Differential Revision: https://phab.enlightenment.org/D7170
2018-10-18 16:01:07 +02:00
Marcel Hollerbach 5aaf2cbb5d meson: add cxx bindings
this commit adds cxx bindings to meson.

Differential Revision: https://phab.enlightenment.org/D7169
2018-10-18 16:01:07 +02:00
Carsten Haitzler 7d7ce5dee5 Revert "elm config: hide theme and profile config in gui when running in enlightenment"
This reverts commit 0b6aade84d.

Let's not do this as it makes the tool harder to test AND actually
removes vital features even under E. elementary_Config is really meant
as a demo config tool. not a good usable one. Ultimately E should
actually do all the good things in elm config so its just some debug
tool then or one for other non-e desktops to use.
2018-10-11 16:25:06 +01:00
Bowon Ryu bc9ffbebb0 efl_ui_tab_pager: modified test for regression test
Summary: Fixed randomly generated tab items to be generated sequentially in test code.

Test Plan: elementary_test -to efl.ui.tab_pager

Reviewers: Jaehyun_Cho, jsuya

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7154
2018-10-10 18:05:18 +09:00
Xavi Artigas fc3135ce2c eolian: use the legacy_prefix to generate the legacy doxygen group names
Summary:
Legacy group names are not consistent (for example, only half of them have the
_Group suffix), therefore this commit does not fix ALL problems related to
EO-generated @ingroup tags not matching manually-generated @defgroup tags.
However, it fixes a great deal of them and the rest should be easier to fix
by hand.

Test Plan:
After running "make doc", some of the EO-generated methods like
ecore_timer_interval_set() which did not appear in the API reference
documentation should be available now.

Reviewers: q66, jsuya, Jaehyun_Cho

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7148
2018-10-09 15:29:08 +02:00
Lauro Moura 7cb0770d04 csharp: Temporarily disable missing docs warning
Summary:
Too many warnings about missing docs in generated code makes difficult
to see "real" warnings.

Reviewers: vitor.sousa, segfaultxavi

Reviewed By: segfaultxavi

Subscribers: segfaultxavi, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7135
2018-10-04 10:09:40 +02:00
Marcel Hollerbach 46d464e5bf here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min..
1 min. conf time
2:30 min. build time
Where autotools takes:
1:50 min. conf time
3:40 min. build time.

meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read.

Further informations can be gathered from the README.meson

Right now, bindings & windows support are missing.

It is highly recommented to use meson 0.48 due to optimizations in meson
that reduced the time the meson call would need.

Co-authored-by: Mike Blumenkrantz <zmike@samsung.com>

Differential Revision: https://phab.enlightenment.org/D7012
Depends on D7011
2018-10-02 17:22:50 +02:00
Lauro Moura 8a4bac15e7 efl-csharp: Fix event struct marshalling.
Summary:
The efl.Event struct has a class field that gets generated normally but
can be problematic when marshalling the struct back from C to C#. The
compilation works fine but when C# runtime tries to marshall the C data
(e.g. accessing the Event.Info field), it becomes erratic, either
complaining about missing references to object or even segfault.

This commit changes the event handling code to use the
"Event_StructInternal" struct as is already done when receiving structs
from C code.

In order to work with other assemblies, the _StructInternal fields were
made publit too.

Fixes the events tests and the text editor app.

Test Plan: make check and run the text editor app in examples repo.

Reviewers: segfaultxavi, vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7106
2018-09-26 12:16:09 -03:00
Youngbok Shin e9e63f3c0d elementary_test: use snprintf to prevent memory overflow in test_efl_ui_text
Summary: To prevent memory overflow, use snprintf instead of sprintf.

Test Plan: N/A

Reviewers: raster, cedric, zmike, Hermet, netstar

Reviewed By: netstar

Subscribers: netstar, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7095
2018-09-24 11:17:26 +01:00
Taehyub Kim a6629d86c9 Efl.Ui.Popup.Alert: add icon parameter for icon button of popup
Summary: add icon parameter for icon button of popup

Test Plan:
1. run elementry_test
2. run Efl.Ui.Popup.Alert sample
3. call set button function of popup and pass the icon by parameter
4. see the result of the popup

Reviewers: Jaehyun_Cho, jpeg, raster, cedric, woohyun

Reviewed By: Jaehyun_Cho

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7079
2018-09-21 15:05:49 +09:00
junsu choi 2948bacdb6 efl_ui_tab_pager : Fix type mismatch for calloc
Summary:
Fix type mismatch.
The return value of function 'calloc' is cast to type 'App_Data *',
which doesn't match the sizeof expression 'sizeof (ad)' passed as its 2nd argument 'sizeof (ad)'.
The size of the result is 8 bytes, value of the sizeof expression is 4.

Test Plan: N/A

Reviewers: bowonryu, SanghyeonLee

Reviewed By: bowonryu, SanghyeonLee

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D7067
2018-09-19 16:40:51 +09:00
Yeongjong Lee 8bd0cfdb98 test_gengrid: add focused, unfocused callback to test focus signal
add focused, unfocused callback for test
Differential Revision: https://phab.enlightenment.org/D7018
2018-09-13 09:53:58 +02:00
Jaehyun Cho 31be3af62d efl_ui_popup: Remove inheritance from Efl.Canvas.Object
Summary:
Class Efl.Ui.Popup_Part_Backwall inherits from multiple classes,
class Efl.Ui.Layout.Part and abstract Efl.Canvas.Object.

To remove multiple class inheritance, Efl.Canvas.Object is not
derived and its property, repeat_events, is newly defined in
Efl.Ui.Popup_Part_Backwall.

Test Plan:
1. Execute elementary_test.
2. Select Efl.Ui.Popup.
3. Select "Show Dummy Button".
4. Select "Repeat Event Set".
5. Test if repeat event works.

Reviewers: woohyun, felipealmeida, Hermet, segfaultxavi

Reviewed By: Hermet, segfaultxavi

Subscribers: bu5hm4n, q66, cedric, segfaultxavi, lauromoura, #reviewers, herb, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6984
2018-09-10 13:29:54 +09:00
Lauro Moura 4c53151096 efl-csharp: Fix event callback removal.
Summary:
Use the native event loaded from dlsym directly instead of wrapping it
in a Event_Description structure.

Fixes: T7355

Reviewers: felipealmeida, vitor.sousa, segfaultxavi

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl_language_bindings

Differential Revision: https://phab.enlightenment.org/D6981
2018-09-05 14:47:19 -03:00
Lauro Moura 5e107aa19d efl-csharp: Make sure efl_finalize overrides are callable
Summary:
efl_finalize override is called inside efl_add_end. Previously by this
time the constructor still hadn't saved the C# wrapper handle into the
Eo instance private data, to be recovered in the static delegates that
call the C# overrides.

This commit just changes the order to save the C# handle *before*
calling efl_add_end.

Test Plan: added unit test to be run with make check

Reviewers: felipealmeida, vitor.sousa, Jaehyun_Cho

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6956
2018-09-05 14:19:39 -03:00
Chris Michael 3846059288 evas: Remove binary cserve2
Summary:
ref T7226
Depends on D6939

Reviewers: raster, cedric, zmike, Hermet

Reviewed By: Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7226

Differential Revision: https://phab.enlightenment.org/D6940
2018-08-30 13:53:13 +09:00
Lauro Moura a9efc38885 csharp: Fix event registration in constructor.
Summary:
The binding user should be able to register to events inside the initialization callback given to the constructor.

Fixes T7346

Reviewers: segfaultxavi, felipealmeida, vitor.sousa

Reviewed By: segfaultxavi, vitor.sousa

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Maniphest Tasks: T7346

Differential Revision: https://phab.enlightenment.org/D6908
2018-08-24 11:34:34 -03:00
Mike Blumenkrantz 69fae8c7bf evas: remove render2
Summary:
this is more or less a dead project, having not been actively developed
in over 2 years and instead forcing people to expend more time and energy
to keep it compiling across refactors

fix T7227

Reviewers: stefan_schmidt, Hermet, ManMower, devilhorns

Reviewed By: Hermet, devilhorns

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T7227

Differential Revision: https://phab.enlightenment.org/D6878
2018-08-21 10:36:55 -04:00
Woochanlee 739da4f736 efl_ui_spin_button: Addded direction feature.
Summary:
The Spin_Button class supports two types(horizontal, vertical).

User can use 'efl_ui_direction()' for spin_button.

@feature

Test Plan: elementary_test-> spin_button sample.

Reviewers: Hermet, Jaehyun_Cho

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6680
2018-08-21 13:52:29 +09:00
Marcel Hollerbach 7a02c2ac38 efl_debugd: move to eina vpath
Summary:
the logic here was against the xdg standard, thus we migrate to
eina_vpath which uses the correct xdg standard

Depends on D6746

Reviewers: zmike, stefan_schmidt, #committers

Reviewed By: zmike, #committers

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6747
2018-08-20 12:58:50 -04:00
Marcel Hollerbach 77ce62e1d2 quicklaunch: use xdg abstraction instead of direct env var
Summary:
there are defined ways what should happen in XDG_RUNTIME_DIR is not
defined, eina_vpath is the abstraction for doing this.

This ensures that the socket is created in the correct directory.

Depends on D6744

Reviewers: zmike, stefan_schmidt

Reviewed By: zmike

Subscribers: #reviewers, cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6745
2018-08-20 12:58:23 -04:00
Yeongjong Lee 16c6c6a268 elm_image: add EINA_UNUSED to avoid build warning
Differential Revision: https://phab.enlightenment.org/D6844
2018-08-16 10:47:20 +02:00
chris 02f6e58f3e Elementary test : add a checkbox to hide beta apis.
Reviewers: zmike

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6817
2018-08-13 10:55:53 -04:00
junsu choi f461a0552d elm_image : Remove unnecessary test about image
Summary:
The elm_transit test is in test_transit.c.
Testing for elm_transit in test_image.c is unnecessary

Test Plan: elementary_test -to "image click"

Reviewers: Hermet, #reviewers, eunue

Reviewed By: Hermet, #reviewers

Subscribers: cedric, akanad, bowonryu, #reviewers, YOhoho, #committers, JackDanielZ, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6799
2018-08-10 11:02:53 +09:00
Mike Blumenkrantz 12f92b4bfb edje_cc: change .mo file write location to be relative to the .edj file
previously this would attempt to write the .mo file to the same directory
that the .po file was found in, which is invalid in cases such as distcheck
where the source directory is not writable

@fix

Differential Revision: https://phab.enlightenment.org/D6636
2018-08-08 14:42:05 +02:00
Carsten Haitzler 132ef5e224 elm test - expand --help to also do -h and -help 2018-07-24 13:21:02 +09:00
Carsten Haitzler 9f9cd4c200 elm test - unbreak elm test ...
7ebcb710d2 / D6668 breaks elm test. a
fix actually that breaks it even more. before only --help didn't
work... now -to/--test-win-only is broken which is the actually useful
option... :)
2018-07-24 13:18:35 +09:00
Mike Blumenkrantz 7ebcb710d2 elm_test: fix arg parsing
Summary:
recent changes to ecore changed arg numbering again and no callers
outside of test suites were updated

ref 9c8749b99a

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl_widgets

Differential Revision: https://phab.enlightenment.org/D6668
2018-07-23 13:34:48 -04:00
Andy Williams 1485cf9df5 elm_code: (cherry-pick) Support indentation styles that are purely tab based
read: Allow non-EFL style indentation.
This is off by default but is switched on if you turn 'tabs insert spaces' off
2018-07-22 17:02:23 +01:00
Davide Andreoli 0a4ea24207 Ctxpopup super slow with some more items
If you put some (like 100) items in a ctxpopup it will take 5 seconds
to show up and throw all kind of errors on console.

This is an example that show the issue, I opened T7176 to track this issue
2018-07-21 09:48:05 +02:00
Carsten Haitzler 5e58e58d60 efl selection manager + elm dnd test fix with bad string handling
so there are 2 problems behind T7113. first is a problem in the efl
selection manager being "sloppy" with selection data. it's doing a
strlen on the data but it's not a normal c string. it's a blob of
binary data + length value. this fixes that "sloppiness" by using the
len field.

there is also another bug in the dnd test code that again has to do
with "sloppy" handling of data buffers and assuming nul byte
termination and not using the len field properly.

this fixes T7113.
2018-07-16 16:31:53 +09:00
Mike Blumenkrantz 65b3eb27c2 Revert "edje_cc: temporarily disable aborting compile when namespace validation fails"
Summary:
This reverts commit 0dc492087e.

there are no longer any errors here so this should fail the build any time errors
are introduced

Reviewers: devilhorns

Reviewed By: devilhorns

Subscribers: cedric, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6525
2018-07-06 11:09:51 -04:00
Mike Blumenkrantz 3309a26a0c edje_cc: disable efreetd connection
edje_cc does not use any of this functionality, and it's problematic
at build time since efreetd is not run in-tree and does not use in-tree
libraries

ref T6713

Differential Revision: https://phab.enlightenment.org/D6514
2018-07-06 15:51:59 +02:00